Processus de mise à mort
D'une manière générale, pour tuer un processus, il n'y a pas de moyen plus sûr que de le faire avec un kill normal (SIGTERM). S'il s'agit d'un processus interactif, il est généralement possible de l'arrêter de manière encore plus sûre en envoyant un signal SIGINT, généralement envoyé en appuyant sur la touche Ctrl + C . Ce signal est piégé par le processus lui-même. peut l'écoutent - et s'arrêtent généralement de bonne grâce. ( Merci Eliah )
Base de données DPKG
En ce qui concerne la gestion des paquets, c'est une sorte de cas particulier. La base de données DPKG que les commandements APT utilisent sous l'eau peut toujours détecter si une opération n'est pas terminée. Chaque paquet a un réel l'état dans lequel il est marqué ainsi qu'un actuel état, par exemple déballé, configuré, etc. En tuant le frontend APT, la base de données sera dans un état cassé, mais en connu sous le nom de l'état. Les fichiers de verrouillage ne seront libérés qu'une fois que tout sera revenu dans un état propre - vous devriez corriger cela jusqu'à ce que de nouvelles opérations soient autorisées.
La solution consiste à lancer un processus pour que tous les paquets soient dans l'état configuré. En pratique, si vous avez interrompu un processus de apt-get
vous pouvez la terminer plus tard en utilisant
sudo dpkg --configure -a
Il sait comment passer de l'état interrompu à un état entièrement configuré et, dans ce sens, il reprend simplement là où il a été interrompu. Les fichiers de verrouillage sont laissés là jusqu'à ce que vous ayez terminé, et ce pour une raison précise : empêcher de nouvelles opérations avec la base de données DPKG dans un état non nettoyé.
À propos de SIGKILL (9)
L'envoi d'un SIGKILL (représentation décimale 9) est très peu sûr. Ce signal n'est pas capté par le processus, mais l'ensemble du processus sera nettoyé par le système d'exploitation (noyau), que le processus le veuille ou non. L'état des fichiers sur le système de fichiers peut être laissé dans un état corrompu. N'envoyez jamais ces signaux à moins que le processus n'écoute plus d'autres signaux plus gracieux.