Dans l'administration système Linux, il est parfois nécessaire de redémarrer le serveur après l'achèvement de certaines mises à jour réseau et autres mises à jour majeures concernant les logiciels ou le matériel qui sont transportés sur le serveur.
Par exemple, si nous recompilons le noyau du serveur qui subit une administration de serveur plus avancée, nous devons redémarrer la machine afin de terminer la compilation et d'avoir une nouvelle version du noyau mise à jour sur le serveur. La mise à jour de la mémoire du serveur, l'allocation IP, la configuration de la carte réseau sont les tâches clés qui nécessitent le redémarrage du serveur une fois pour une mise en œuvre réussie.
Voyons comment effectuer un redémarrage en douceur d'un système Linux à l'aide de la commande shutdown et systemctl. Assurez-vous d'exécuter la commande en tant qu'utilisateur root ou utilisateur avec les privilèges sudo.
Utiliser l'arrêt
Commande d'arrêt avec -r
L'option est utilisée pour un redémarrage du système. Par défaut, le système sera redémarré après 1 minute pour la commande suivante :
$ sudo shutdown -r
Vous pouvez redémarrer immédiatement en utilisant shutdown –r now
ou shutdown –r 0
comme suit :
$ sudo shutdown –r now
$ sudo shutdown –r 0
$ sudo reboot
Redémarrage planifié
Une simple commande de redémarrage a une utilisation limitée. La commande shutdown est utilisée à la place du redémarrage pour des exigences de redémarrage et d'arrêt beaucoup plus avancées. Une telle situation est un redémarrage programmé. Voici la syntaxe utilisée pour redémarrer votre système après l'heure définie par TIME.
$ sudo shutdown –r [TIME] [MESSAGE]
Ici, TIME a différents formats. Le plus simple est "maintenant", déjà répertorié dans la section précédente, et indique au système de redémarrer immédiatement. Les autres formats valides sont +m, où m est le nombre de minutes à attendre jusqu'au redémarrage et HH:MM qui spécifie le TIME au format 24h. Vous trouverez ci-dessous les exemples et leurs résultats. L'argument optionnel "MESSAGE" peut être utilisé pour informer les utilisateurs avant le redémarrage.
Redémarrez votre système après 5 minutes avec le message de notification "mise à jour logicielle" à tous les utilisateurs connectés
$ sudo shutdown –r +5 "software update"
Broadcast message from me@home-pc
(/dev/pts/1) at 20:49 ...
The system is going down for reboot in 5 minutes!
Redémarrez votre système après 02h00
$ sudo shutdown –r 02:00
Broadcast message from me@home-pc
(/dev/pts/1) at 20:51 ...
The system is going down for reboot in 309 minutes!
Annuler le redémarrage de Linux
Si vous souhaitez que votre système ignore le redémarrage ou l'arrêt programmé précédemment, vous pouvez appeler une autre commande shutdown avec l'option –c et diffuser avec elle un message pour les utilisateurs concernant l'annulation du redémarrage. Voici la syntaxe et l'exemple
$ sudo shutdown –c [MESSAGE]
Le redémarrage précédemment planifié peut être annulé par l'administrateur système en exécutant une autre commande shutdown avec l'option –c et un argument de message facultatif.
$ sudo shutdown –c “showing how to cancel scheduled reboot ”
Broadcast message from me@home-pc
(/dev/pts/1) at 20:59 ...
showing how to cancel scheduled reboot
Redémarrer le serveur distant
Connectez-vous simplement à votre serveur avec n'importe quel client ssh en utilisant les informations d'authentification du serveur et lancez l'une des commandes suivantes :
$ ssh [email protected] /sbin/reboot
$ ssh [email protected] /sbin/shutdown –r now
Redémarrer avec la commande Init
Init est tiré du mot initialize qui est largement utilisé pour initialiser/démarrer différents processus dans un serveur Linux, donc cette commande est utilisée conjointement avec le niveau d'exécution 6; un nombre défini pour le redémarrage d'un serveur Linux conduit au redémarrage du serveur. La syntaxe est mentionnée ci-dessous :
[root@test ~]# init 6
or
[root@test ~]# /sbin/init 6
Utiliser systemctl
Comme de nombreuses distributions Linux modernes comme Ubuntu, Debian, Centos, Fedora, etc. ont commencé à adopter systemd, nous pouvons utiliser la commande systemctl pour redémarrer.
La commande suivante redémarrera le système immédiatement en notifiant tous les utilisateurs :
sudo systemctl reboot
Avec --no-wall
le redémarrage de l'option sera effectué sans aucune notification
sudo systemctl --no-wall reboot
Vous pouvez ajouter un message personnalisé avec une raison de redémarrage en utilisant --message
possibilité
sudo systemctl --message="Kernel patch" reboot
Vérification des journaux de redémarrage
Le fichier /var/log/wtmp enregistre toutes les connexions et déconnexions. On peut analyser ce fichier avec la dernière commande afin d'accéder au journal pour le redémarrage. Vous trouverez ci-dessous la dernière utilisation de la commande et sa sortie sur mon système.
# last reboot
reboot system boot 3.2.0-32-generic Sun Nov 4 11:00 - 22:11 (11:11)
reboot system boot 3.2.0-32-generic Sat Nov 3 20:02 - 02:10 (06:08)
reboot system boot 3.2.0-32-generic Sat Nov 3 17:52 - 18:56 (01:03)
reboot system boot 3.2.0-32-generic Sat Nov 3 15:37 - 17:32 (01:55)
reboot system boot 3.2.0-32-generic Sat Nov 3 11:00 - 11:02 (00:01)
reboot system boot 3.2.0-32-generic Sat Nov 3 10:25 - 10:58 (00:32)
reboot system boot 3.2.0-32-generic Fri Nov 2 20:21 - 23:25 (03:04)
reboot system boot 3.2.0-32-generic Fri Nov 2 16:57 - 18:54 (01:56)
reboot system boot 3.2.0-32-generic Fri Nov 2 15:22 - 16:35 (01:13)
reboot system boot 3.2.0-32-generic Fri Nov 2 12:51 - 13:37 (00:46)
reboot system boot 3.2.0-32-generic Thu Nov 1 20:04 - 23:55 (03:50)
reboot system boot 3.2.0-32-generic Thu Nov 1 15:18 - 23:55 (08:36)
reboot system boot 3.2.0-32-generic Thu Nov 1 11:42 - 13:59 (02:16)
wtmp begins Thu Nov 1 11:31:44 2012
Merci d'avoir lu cet article et s'il vous plaît quelle est votre commande de redémarrage préférée ?
Lire aussi :
- Comment planifier l'arrêt, le redémarrage, la mise en veille prolongée et la déconnexion des tâches sous Linux