Aperçu
killall5 envoie un signal à tous les processus en cours d'exécution sur le système, à l'exception du processus init. Cette commande est principalement utilisée lors des changements de niveau d'exécution du système ou lors du processus d'arrêt. C'est une commande très puissante, il faut donc l'utiliser avec prudence en sachant qu'elle peut avoir un impact grave sur le système.
Caractéristiques principales
- Envoi d'un signal à tous les processus sauf le processus init
- Principalement utilisé pour l'arrêt du système, le redémarrage, les changements de niveau d'exécution
- Très puissant et peut avoir un impact fatal sur le système
Options principales
killall5 a relativement peu d'options.
Spécifier le signal
Exclure un processus
Commande générée :
Essayez de combiner les commandes.
Description:
`killall5` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples d'utilisation
Voici divers exemples d'utilisation de la commande killall5. Cette commande est très puissante, il faut donc être prudent lors de son utilisation réelle.
Envoyer le signal SIGTERM à tous les processus (comportement par défaut)
sudo killall5
Envoie le signal SIGTERM (15) pour demander l'arrêt de tous les processus, à l'exception du processus init. Ceci peut être utilisé pour tenter un arrêt normal du système lors de son extinction.
Arrêt forcé de tous les processus (SIGKILL)
sudo killall5 -9
Envoie le signal SIGKILL (9) pour arrêter de force tous les processus, à l'exception du processus init. Ceci est utilisé comme dernier recours lorsque les processus ne répondent pas à SIGTERM. Il y a un risque de perte de données.
Tenter d'arrêter tous les processus en excluant un PID spécifique
sudo killall5 -o 1234
Envoie le signal SIGTERM à tous les processus, en excluant le processus avec le PID 1234. Ceci peut être utile lorsque vous devez arrêter tous les autres processus tout en maintenant un processus important spécifique.
Envoyer le signal SIGHUP à tous les processus
sudo killall5 -1
Envoie le signal SIGHUP (1) à tous les processus, à l'exception du processus init. Certains démons rechargent leur configuration en recevant SIGHUP.
Installation
killall5 est généralement fourni dans le cadre du paquet `sysvinit-utils` ou `sysvinit-tools`. Il est préinstallé sur la plupart des distributions Linux, mais si ce n'est pas le cas, vous pouvez l'installer en utilisant les commandes suivantes.
Systèmes basés sur Debian/Ubuntu
sudo apt update && sudo apt install sysvinit-utils
Systèmes basés sur CentOS/RHEL/Fedora
sudo yum install sysvinit-tools
# Ou pour les versions plus récentes
sudo dnf install sysvinit-tools
Conseils et précautions
killall5 est une commande puissante qui affecte l'ensemble du système, il faut donc l'utiliser avec une extrême prudence.
Commande très dangereuse
Cette commande peut arrêter tous les processus utilisateur du système, et une mauvaise utilisation peut rendre le système instable ou le faire redémarrer. Il faut éviter de l'utiliser sur des serveurs effectuant des tâches importantes.
- **Risque de perte de données** : Les données non enregistrées peuvent être perdues lors d'un arrêt forcé.
- **Instabilité du système** : Le système peut se bloquer car des services essentiels sont arrêtés.
Envisager des commandes alternatives
Si vous devez arrêter uniquement un groupe de processus spécifique ou des processus utilisateur, il est recommandé d'utiliser des commandes offrant un contrôle plus fin, telles que `killall` ou `pkill`.
- `killall <nom_processus>` : Arrête tous les processus portant un nom spécifique
- `pkill <motif>` : Arrête les processus correspondant à un motif
- `kill <pid>` : Arrête le processus avec un PID spécifique
Exclusion du processus init
killall5 n'envoie pas de signal au processus init (ou systemd) avec le PID 1. Ceci est fait pour protéger les processus centraux du système.
Utilisation de sudo obligatoire
Pour envoyer un signal à tous les processus du système, les privilèges root sont nécessaires, il faut donc l'utiliser avec `sudo`.