samedi 2 avril 2016

MODIFIÉ: Script pour updater un Raspberry, Ubuntu, Debian et peut-être d'autres Linux

AVERTISSEMENT!
Ne pas utiliser la commande sudo /usr/bin/ rpi-update pour les Raspberry équipés de la distribution OpenElec


J'ai mis du temps à comprendre certaines choses avec Crontab et Gnome-Schedule

  • Installez Gnome-schedule (plus intuitif pour peaufiner les "jobs")

sudo apt-get install gnome-schedule


  • Changez votre serveur de dépôt (Repository). Même s'il est un peu lent, c’est pas grave. L'important, c'est qu'il soit fiable pour ce qui va suivre. Sinon, votre script n'ira pas jusqu'au bout.

Voici un script pour mettre à jour et nettoyer votre Ubuntu/Debian (ou autre). On remarquera qu'on inscrit le chemin complet de la commande. Sinon ça risque de ne pas marcher.

#!/bin/bash -e
# Update
sudo /usr/bin/apt-get update

# Upgrade
sudo /usr/bin/apt-get -y upgrade

# Autoremove
sudo /usr/bin/apt-get autoremove

# Clean
sudo /usr/bin/apt-get clean

  • Enregistrez-le dans votre home sous le nom de updatescript, par exemple, et donner lui les permissions pour qu'il soit exécutable.
  • Créez un fichier dans votre home sous le nom de updatescriptsortie. Donnez-lui les permissions pour y écrire. C'est facile dans un gestionnaire de fichier en root.
  • Maintenant, la ligne de commande dans crontab:
sudo crontab -e

Si le système vous demande quel éditeur choisir, choisissez nano car c'est le plus facile.
Et ajoutez cette ligne:
0 16 * * * /home/user/updatescript 2>&1 >/home/linuxlite/updatescriptsortie

Déplacez-vous avec les flèches. Ctrl+o pour écrire et Entrée (clavier) pour enregistrer. Ctrl+x pour sortir. Ctrl est représenté par un accent circonflexe: ^
  • Allez éventuellement dans Gnome-Schedule pour vérifier que tout va bien
  • Après l'exécution du script, vous pourrez aller voir dans /home/user/updatescriptsortie si tout c'est bien passé (voir en bas)
  • Pour le Raspi, le script se termine par un reboot


Maintenant, le script pour un Raspberry Pi. Il est un peu différent mais il a le même nom et la ligne de commande dans Crontab est la même aussi.

#!/bin/bash -e



# On met à jour la liste des paquets avec apt-get update

sudo /usr/bin/ apt-get update



# On met à jour les paquets

sudo /usr/bin/ apt-get -y upgrade



# On met à jour les firmwares

sudo /usr/bin/ apt-get rpi-update



# On fait du ménage avec Autoremove

sudo /usr/bin/ apt-get autoremove



# Nettoyage avec Clean

sudo /usr/bin/ apt-get apt-get clean



# On redémarre

sudo /usr/bin/ shutdown -r




Exemple de sortie pour le Raspberry

Atteint http://mirrordirector.raspbian.org jessie InRelease
Atteint http://archive.raspbian.org jessie InRelease
Atteint http://mirrordirector.raspbian.org jessie/main armhf Packages
Atteint http://archive.raspbian.org jessie/main Sources
Atteint http://mirrordirector.raspbian.org jessie/contrib armhf Packages
Atteint http://archive.raspbian.org jessie/contrib Sources
Atteint http://mirrordirector.raspbian.org jessie/non-free armhf Packages
Atteint http://archive.raspbian.org jessie/non-free Sources
Atteint http://mirrordirector.raspbian.org jessie/rpi armhf Packages
Atteint http://archive.raspbian.org jessie/rpi Sources
Ign http://mirrordirector.raspbian.org jessie/contrib Translation-fr_FR
Ign http://mirrordirector.raspbian.org jessie/contrib Translation-fr
Ign http://mirrordirector.raspbian.org jessie/contrib Translation-en
Ign http://mirrordirector.raspbian.org jessie/main Translation-fr_FR
Ign http://mirrordirector.raspbian.org jessie/main Translation-fr
Ign http://mirrordirector.raspbian.org jessie/main Translation-en
Ign http://mirrordirector.raspbian.org jessie/non-free Translation-fr_FR
Ign http://mirrordirector.raspbian.org jessie/non-free Translation-fr
Ign http://mirrordirector.raspbian.org jessie/non-free Translation-en
Ign http://mirrordirector.raspbian.org jessie/rpi Translation-fr_FR
Ign http://mirrordirector.raspbian.org jessie/rpi Translation-fr
Ign http://mirrordirector.raspbian.org jessie/rpi Translation-en
Lecture des listes de paquets…
Lecture des listes de paquets…
Construction de l'arbre des dépendances…
Lecture des informations d'état…
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** Performing self-update
 *** Relaunching after update
 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
 *** Your firmware is already up to date
Lecture des listes de paquets…
Construction de l'arbre des dépendances…
Lecture des informations d'état…
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.


Aucun commentaire:

Enregistrer un commentaire

Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.