Gestion des processus. Ubuntu Dapper Drake 6.06
Linux sait gérer plusieurs programmes simultanément. C'est ce que l'on nomme le multitâche. Dans un environnement graphique, ce concept est plus évident de par la présence de plusieurs fenêtres à l'écran.
Toutefois cet article s'intéressera plutôt à la gestion du multitâche en ligne de commande.
Ce qui est désigné comme processus est une instance de programme s'exécutant à un instant donné a.
Les processus sont identifiés par un numéro unique dans le système à un moment donné : le PID. C'est à l'aide de ce nombre que l'on peut désigner une instance de programme et interagir avec.
Ils sont de plus organisés en hiérarchie. Chaque processus doit être lancé par un autre. Ce dernier porte le nom de processus père ou parent et ceux initiés le nom d'enfants ou processus fils.
Lors de sa vie (entre le moment où il est lancé et celui où il se termine), un processus peut passer par différents états. Les principaux sont les suivants :
•
•
•
•
Actif correspond au processus qui en train de réaliser des actions à un instant donné. Il possède le
processeur et réalise les opérations nécessaires à son déroulement.
Exécutable est pour un processus qui pourrait tout à fait être en train de s'exécuter, mais il doit
attendre que le processus actif laisse sa place. En effet, le multitâche n'est en quelque sorte qu'une illusion. Sur une machine possédant un seul processeur, à un instant donné un seul programme peut opérer.
Endormi Un processus endormi ne fait rien. Il attend une condition pour redevenir exécutable ou
actif. Il peut se mettre lui-même en sommeil. Un programme par exemple peut attendre quelques secondes avant de poursuivre son exécution pour laisser le temps à l'utilisateur de lire un message affiché. Mais il peut aussi être mis en sommeil par le noyau en attendant que ce qu'il demande soit disponible
Zombie ce dernier état est un peu particulier. Un tel processus est en réalité terminé. Il a fini son
exécution et n'a donc plus de raison d'exister. Seulement pour diverses raisons possibles, son père n'a pas été informé de ceci. Et tout processus doit prendre connaissance de la fin de ceux qu'il a lancés
(ses fils). Le système conserve donc les informations correspondant au processus enfant afin que son parent puisse voir qu'il a fini son exécution.
Manuel Ubuntu Linux 33 www.ubuntu-fr.org
La commande à utiliser est la commande ps.
Description
avoir une liste des commandes afficher tous les processus, avec un minimum de détails afficher tous les processus, avec un maximum de détails ps help ps -A ps aux
Commande
afficher les processus en rapport avec le lanceur firefox ps aux | grep firefox
Deux méthodes s"offrent a vous :
La première, la plus efficace
Après avoir utilisé ps -A (cf. ci-dessus), vous aurez des lignes similaires à celles-là :
8177 ? 00:24:31 firefox-bin
Retenez le chiffre 8177, et faites : kill -9 8177
La deuxième méthode
Utilisation de la commande killall : killall firefox-bin
Ca y est. C’est arrivé. Pourtant on vous avait dit que Linux était stable, mais cette fois, il s’est planté. Pas de panique, ne pressez pas tout de suite le bouton reset. Oubliez cette mauvaise habitude héritée de votre ancien système d’exploitation.
Commencez par mesurer l’étendue des dégâts.
Le noyau de Linux bloque extrêmement rarement, et vous pouvez sans doute encore entendre le mp3 qui
était en train de jouer, ou voir les diodes du graveur clignoter pendant la gravure en cours (d’ailleurs, si aucune des solutions ci-dessous ne fonctionne, attendez au moins la fin de la gravure, qui sera bonne, pour redémarrer à la barbare).
Seule une application est plantée
Si vous avez encore accès aux autres applications, que la souris bouge, etc.
, vous pouvez simplement tuer l’application plantée.
Pour une application graphique
La solution la plus simple consiste à utiliser xkill. Ce petit utilitaire transforme le curseur de la souris en une cible ou une tête de mort, et il suffit de cliquer sur la fenêtre de l’application plantée pour la faire disparaître. Sous KDE, lancez-le en tapant simultanément : [Ctrl] + [Alt] + [Esc]. Sinon, tapez xkill dans un shell (ligne de commande).
Manuel Ubuntu Linux 34 www.ubuntu-fr.org
Une solution valable pour toute application
Qu’elle soit graphique ou non, cela consiste à la tuer en utilisant son numéro de processus, ou PID.
Ouvrez un shell, et tapez ps x, vous voyez défiler la liste des applications, avec leur numéro de processus correspondant.
Si vous avez plus d’une page, utilisez ps x | less, et récupérez le numéro correspondant à l’application plantée (son PID). Tapez ensuite sudo kill PID en remplaçant PID par le numéro trouvé.
Si l’application ne se ferme toujours pas, essayez plus violent sudo kill -9 PID.
Cela peut aussi fonctionner en tapant sudo killall application, cela permet de tuer une application par son nom si utiliser une commande supplémentaire est osé parce que le système est vraiment instable.
La souris ne répond plus
Le cas est plus grave mais pas désespéré, et nécessite en général le redémarrage de X, la couche graphique de Linux.
Méthode n°1
La façon la plus simple à faire pour tuer X, est de presser simultanément les touches [Ctrl] + [Alt]
+ [Backspace]. Si cela ne fonctionne pas, essayez ensuite la méthode suivante.
Méthode n°2
Essayons de passer sur une console texte. Tapez [Ctrl] + [Alt] + [F1] (ou de [F2] à [F6])
De la même façon que ci-dessus, nous allons tuer X :ps x | grep X vous donne son PID, il ne vous reste plus qu'à le tuer par sudo kill PID_de_X ou sudo kill -9 PID_de_X. La méthode killall précédente fonctionne aussi
Redémarrage de X
Si vous démarrez habituellement directement en mode graphique, il va se relancer tout seul, pour retourner dans la console graphique tapez [Ctrl] + [Alt] + [F7] ; sinon, tapez sudo startx.
Si cela ne fonctionne pas mais que vous avez accès aux consoles texte par [Ctrl] + [Alt] + [Fn], vous pouvez redémarrer proprement en vous connectant en tant que root, et en tapant la commande sudo reboot ou sudo shutdown -r now
Note : malheureusement, les documents non sauvegardés risquent alors fort d'être perdus. Avant de
redémarrer X, vous pouvez éventuellement tenter un kill (pas -9 !) sur l'application contenant votre document, et voir si cela fait quelque chose, en revenant en mode graphique par [Ctrl] + [Alt] + [F7]...
Le redémarrage de X peut se faire par exemple sur Debian avec /etc/init.d/gdm restart si vous utilisez
gdm, et sur Mandriva avec service gdm restart (les options stop ou start existent aussi).
Pas moyen d’aller dans une console texte avec [Ctrl] + [Alt] + [Fn]
Le clavier ne semble plus répondre, éventuellement l’écran est tout noir, ca va mal... Pourtant vous pouvez essayer trois choses :
1) Vous connecter en aveugle
L'écran est noir par suite d'un plantage vid é o. Vous pouvez tenter de basculer sur une console virtuelle par [Ctrl]+[Alt]+[Fn], puis tapez sudo reboot. Le PC devrait redémarrer. Si rien ne se passe... passez à la suite !
Manuel Ubuntu Linux 35 www.ubuntu-fr.org
2) Les touches magiques de requête système
Si votre noyau est compilé avec les bonnes options, vous disposez de séquences de touches par exemple pour redémarrer, pour synchroniser le cache du disque, et remonter tous les disques en lecture seule. Utilisation, tapez simultanément :
•
[Alt]+[PrintScreen]+[S] ou [Alt]+[ImprEcran]+[S] pour vider le cache sur le disque (afin d'éviter la vérification du disque au redémarrage),
• suivi de
[Alt]+[PrintScreen]+[U] pour remonter le disque en lecture seule (même raison),
• suivi enfin de
[Alt]+[PrintScreen]+[B] pour redémarrer.
Si cela ne fonctionne pas, c'est que votre noyau n'est pas compilé avec la bonne option.
3) Si vous avez un réseau local
Connectez-vous en telnet ou ssh sur la machine plantée : telnet ma_machine ou ssh ma_machine
Si la machine plantée répond au telnet ou au ssh, essayez de la rebo o ter proprement par la commande sudo reboot ou sudo shutdown -r now.
Rien ne marche
:
:
Alors vous allez être obligé de redémarrer à la barbare, c’est-à-dire par le bouton reset ou par un cycle extinction/allumage...
Pour éviter dans ce cas un test souvent assez long du disque lors du redémarrage, il est conseillé d'utiliser un système de fichier journalisé (ext3, Reiserfs, etc.) à la place de l’ancien ext2.
Manuel Ubuntu Linux
Inspiré de : http://www.lea-linux.org/cached/index/Trucs http://www.c-sait.net/cours/
36 www.ubuntu-fr.org

Public link updated
The public link to your chat has been updated.