EL Sistema se Congelo o no responde

De Wiki de la Comunidad Mandriva

Catégorie:Résolution de problèmes Catégorie:Trucs et astuces

Il arrive parfois, sous Mandriva (et GNU/Linux en général), de se retrouver face à un gel du système (ou "plantage"). Mais sachez qu'avant de redémarrer brutalement votre ordinateur par le bouton reset, il existe de nombreuses possibilités pour en sortir proprement.

Contenido

Plantage d'une application

Vous gardez le contrôle de la souris

Si vous avez encore le contrôle de la souris, vous pouvez essayer de cliquer sur le croix en haut à droite de la fenêtre. Avec un peu de chance, une fenêtre apparaîtra pour vous proposer de terminer le programme. Vous pouvez alors fermer le programme qui ne répond plus, mais sachez tout de même que vos données non-enregistrées seront perdues.

Tuer une application graphique gelée : <Ctrl-Alt-Echap> sous KDE

Cette combinaison de touches permet de déconnecter un programme du serveur X Windows, à l'aide de la souris.

Le curseur de la souris prend la forme d'une tête de mort, il suffit alors de cliquer sur la fenêtre correspondant au programme à tuer.

Peut être remplacé par une saisie en console graphique de la commande xkill.

Après disparition de la fenêtre, il peut être prudent de vérifier ensuite que le processus correspondant au programme a vraiment été tué.

Notez que cette séquence de touches est une « bascule » : si vous décidez finalement de ne rien tuer et de rendre au curseur de la souris son apparence habituelle, il vous suffit de retaper la même séquence.

Plantilla:Avertissement


Vous n'avez plus le contrôle de la souris

Si vous n'avez plus le contrôle de la souris, par exemple lors du plantage d'un programme en plein écran, comme un jeu, ou que le système ne répond pas lors des clics, lancez une console texte par la commande <Ctrl-Alt-F1>. Pour revenir à l'interface graphique, taper sur <Alt-F7>. La console texte permet de tuer le processus qui pose problème.

Après 2 lignes de descriptif de votre machine, vous donnant votre version de Mandriva Linux, ainsi que votre version du noyau (Kernel), comme :

Mandriva linux release 2008 for i586
Kernel 2.6.24-2-desktop-4mdv on a i686 tty

Vous verrez alors un message vous demandant :

localhost login:

localhost étant le nom de votre machine.

Entrez ici votre nom d'utilisateur, puis cliquez sur <Entrée>. La console vous demande alors votre mot de passe utilisateur par :

password:

Vous pouvez alors entrer votre mot de passe (vous ne le verrez pas s'afficher) et appuyer sur <Entrée>. Vous devez obtenir une invite similaire à :

Plantilla:Console


Si vous connaissez le programme en cause

Your Title
La commande kill s'applique à un PID (Process Identifier), qui est le numéro d'ordre du processus. La commande killall s'applique, elle, à un nom de processus. Ces commandes envoient un signal au processus. Ce signal peut être choisi grâce à une option, comme kill -15, qui indique au processus qu'il doit s'arrêter ou kill -9 qui indique directement au système de terminer le processus. Attention : si vous passez une option explicite, toujours essayer d'abord l'option -15, qui est l'option par défaut et qui permet au processus de « faire le ménage » proprement avant de mourir, et ne tenter -9 qu'en dernier recours, seulement si -15 n'a pas suffit.
Your Title
Sous Linux les signaux possèdent des noms. Le signal de « mort propre » -15 s'appelle SIGTERM et le signal de mort brutale, -9, s'appelle SIGKILL. On peut aussi envoyer ces signaux en utilisant la partie significative de leur nom en guise d'options (et c'est ainsi qu'il est vivement recommandé de procéder lorsque vous écrivez un script), ce qui donne des commandes comme : kill -TERM PID, killall -KILL programme etc.

Si vous connaissez le nom du programme qui plante, vous pouvez essayer de taper directement :

Plantilla:Console

En remplaçant bien sûr programme par le nom du logiciel fauteur de trouble.

Si une nouvelle invite apparaît directement, sans aucun message, c'est que le programme a été tué. Vous pouvez tenter de retourner dans l'interface graphique via <Alt-F7>, et vous avez des chances de retrouver votre système en état de marche.

Il peut s'afficher un message semblable à :

Plantilla:Console

Dans ce cas, essayez l'option de dernier recours -9 : Plantilla:Console Si cela ne marche toujours pas, c'est sans doute que le nom du programme devait être incorrect, et vous pouvez passer à la suite des instructions.


Identifier le processus à l'origine du gel du système

Your Title
Le programme top fournit une vue en temps réel du système. Elle permet de contrôler finement les processus en cours, en les classant par consommation processeur, par consommation mémoire, etc

Vous pouvez utiliser le programme top en tapant top dans l'invite de commande, pour trouver le programme qui pose problème :

Plantilla:Console

Pressez sur <Entrée>, vous verrez alors apparaître un tableau dynamique classant les processus en cours selon leur consommation processeur. La colonne USER indique le nom de l'utilisateur ayant lancé de processus (root est l'administrateur). Cherchez dans la colonne COMMAND le nom du programme que vous désirez arrêter. Notez la valeur correspondante dans le colonne PID. Vous pouvez quitter top en appuyant sur la touche Q. Vous retrouvez alors un nouvelle invite, et pouvez passer à la fermeture du programme.

Si top ne vous a pas permis d'identifier la cause de plantage, essayez avec le programme ps :

Plantilla:Console

Cette commande affichera une liste des programmes lancés, les plus récents étant en fin de liste (il est probable que toute la liste ne soit pas visible).

Si vous identifiez le programme dans la liste, notez son PID, qui est le chiffre affiché à gauche de la ligne, et passez à le suite.


Si vous suppecter une force utilisation du disque dur, vous pouvez installer iotop qui surveillera l'activité lecture/écriture. Il est basé sur le même principe que top.

Para Instalar iotop,lanzar Image:drakrpm-icon.png Instalar y Quitar Software y buscar el paquete iotop .

Seleccione y haga clic en Aplicar. Ayuda

También puede instalar desde la consola como administrador : urpmi iotop

Terminer le programme causant le gel

Si vous avez trouvé le programme à stopper, utilisez son PID, faites :

Plantilla:Console

En remplaçant PID par le nombre que vous venez de noter. L'application en cause devrait alors se fermer immédiatement, et vous pouvez retourner sous votre environnement de bureau via <Alt-F7>.

Si cette commande n'a pas fonctionné, vous pouvez tenter :

Plantilla:Console

En remplaçant toujours PID par celui de votre programme, ce qui a pour effet de fermer brutalement votre programme.

Retournez alors dans votre interface graphique par <Alt-F7>.

Si le problème n'est pas réglé, continuez en redémarrant le serveur X.


Redémarrer le serveur X

Plantilla:Avertissement Plantilla:Editer Pour redémarrer le serveur d'affichage (serveur X) faites <Ctrl-Alt-Backspace> (Backspace est la touche située au-dessus de la touche entrée, elle représente une flèche vers la droite). Toutes les données non-enregistrées seront perdues.

Vous quittez alors votre environnement de bureau et revenez à l'écran de connexion, où vous pouvez vous reconnecter.

Dernier recours : les touches magiques SysRq

Si le clavier et la souris ne répondent pas, et/ou si l'écran est totalement noir, et que vous n'avez pas pu régler le problème avec les méthodes précédentes, il reste une dernière solution. En effet, lors d'un plantage, il est rare que le noyau lui-même plante. Il est alors possible de reprendre le contrôle en communiquent directement avec le noyau grâce aux touches magiques (plus d'informations sur Raccourcis clavier). Ce sont des combinaisons de trois touches, dont la touche <Alt> à gauche de la barre espace, et la touche <SysRq>, aussi appelée <F13>, <Syst>, ou <Impécr>. Il vaut mieux, si possible, être en console texte, par la commande <Ctrl-Alt-F1>, pour voir les messages éventuels s'afficher, mais ce n'est pas indispensable.

Un troisième touche leur est associée selon l'action à réaliser.

Voici un enchaînement possible pour redémarrer l'ordinateur :

  1. <Alt-SysRq-R> (met le clavier en mode raw)
  2. <Ctrl-Alt-Suppr> (redémarrage du système)

À titre de second recours, si la séquence qui précède n'a pas permis le redémarrage, faire successivement :

  1. <Alt-SysRq-S> (synchronisation : tous les tampons de données sont écrits sur le disque, évite des pertes de données)
  2. <Alt-SysRq-U> (démonte tous les disques)
  3. <Alt-SysRq-B> (pour redémarrer) OU <Alt-SysRq-O> (pour arrêter le système).

Plantilla:Astuce

Si, d'un autre côté, votre machine est bloquée par une ou plusieurs applications trop "gourmandes" et si vous souhaitez les tuer sans arrêter ou redémarrer la machine, vous pouvez, au lieu des séquences précédentes, tenter ceci :

  1. <CTrl-Alt-F1> (passer en console texte)
  2. <Alt-SysRq-E> (pour tuer proprement tous les processus)
  3. <Alt-SysRq-I> (pour tuer les processus qui auraient échappé à la commande précédente)
  4. Taper en console votre identifiant suivi d'<Entrée> puis votre mot de passe suivi d'<Entrée> pour vous connecter en tant qu'utilisateur.
  5. Taper startx suivi d'<Entrée>, pour relancer l'interface graphique.


Si aucune de ces méthodes ne fonctionne

Si aucune des méthodes décrites, notamment les touches SysRq, ne permet de sortir du plantage "proprement", il ne vous reste plus alors qu'à éteindre votre ordinateur en pressant quelques secondes le bouton de mise sous tension. Un tel problème laisse fortement supposer un problème matériel, peut-être au niveau de la mémoire vive ou du processeur. Mais ces paniques du noyau endommagent très rarement votre système Linux qui, la plupart du temps, se remet à fonctionner normalement.


Liens

Internes

Externes

Herramientas personales