Processus de tuer
En règle générale, pour tuer un processus, il n'y a pas de moyen plus sûr de tuer un processus qu'avec un kill normal (SIGTERM). S'il s'agit d'un processus interactif, il vous permet généralement de l'arrêter encore plus sûrement en envoyant un signal SIGINT, généralement en appuyant sur Ctrl+ C. Ce signal est piégé par le processus lui - même, il peut l' écouter - et s'arrête normalement. ( merci Elia )
Base de données DPKG
En ce qui concerne la gestion des paquets est une sorte de cas particulier. La base de données DPKG que les commandes APT utilisent sous l'eau peut toujours détecter si une opération n'est pas terminée. Chaque paquet a un état réel qui est marqué ainsi qu'un état actuel , par exemple, décompressé, configuré, etc. En tuant l'interface APT, la base de données sera dans un état cassé, mais dans un état connu . Les fichiers de verrouillage ne seront libérés que lorsque tout sera à nouveau en état de nettoyage: vous devriez le corriger jusqu'à ce qu'il permette de nouvelles opérations.
La solution consiste simplement à lancer un processus pour obtenir tous les packages dans l'état configuré. En pratique, si vous avez interrompu une apt-get
opération, vous pouvez simplement la terminer plus tard en utilisant
sudo dpkg --configure -a
Il sait comment passer de l'état brisé à un état entièrement configuré et continuer en ce sens là où il avait été interrompu. Les fichiers de verrouillage sont conservés jusqu'à ce que vous ayez terminé, et cela pour une raison - d'empêcher de nouvelles opérations avec la base de données DPKG dans un état impur.
À propos de SIGKILL (9)
L'envoi d'un SIGKILL (représentation décimale 9) est très dangereux. Ce signal n'est pas capturé par le processus, mais le processus entier 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 corrompu. N'envoyez jamais ces signaux, sauf si vous n'écoutez plus d'autres signaux plus gracieux.