Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
touches_magiques [Le 03/05/2011, 21:07] TheCaméléon [Les combinaisons de touches] une ligne était alignée à droite... |
touches_magiques [Le 20/05/2024, 22:50] (Version actuelle) nany [Activer ou désactiver les touches magiques] |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
====== Appels système au clavier : les Touches Magiques ====== | ====== Appels système au clavier : les Touches Magiques ====== | ||
- | |||
- | ===== Introduction ===== | ||
- | |||
- | Si votre machine vient de planter et que vous n'arrivez plus à ne rien faire (voir [[tutoriel/lorsque_le_systeme_gele|la procédure usuelle]]), n'appuyez pas encore sur la touche reset ! Il vous reste une chance de redémarrer votre machine : les "touches magiques", ou //Magic Sys Keys//. | ||
- | |||
Ligne 15: | Ligne 10: | ||
Les touches magiques sont des combinaisons de touches qui permettent d'envoyer des appels directement au noyau. Il s'agit de combinaisons du type : **Alt+SysRq+Touche**. La touche **SysRq** (pour //System Request//), ou **Syst**, correspond souvent à la touche **Imprim Écran** (juste au-dessus de la touche **Inser** ou **Del**). | Les touches magiques sont des combinaisons de touches qui permettent d'envoyer des appels directement au noyau. Il s'agit de combinaisons du type : **Alt+SysRq+Touche**. La touche **SysRq** (pour //System Request//), ou **Syst**, correspond souvent à la touche **Imprim Écran** (juste au-dessus de la touche **Inser** ou **Del**). | ||
- | |||
===== Pré-requis ===== | ===== Pré-requis ===== | ||
- | Pour pouvoir accéder aux touches magiques, il faut que cette fonctionnalité ait été activée dans le noyau. **C'est le cas par défaut pour Ubuntu**, mais ça peut ne pas l'être pour d'autres distributions (pour le savoir, vérifiez l'existence du fichier ///proc/sys/kernel/sysrq//). | + | Pour pouvoir accéder aux touches magiques, il faut que cette fonctionnalité ait été activée dans le noyau. Par défaut sur Ubuntu, cette fonctionnalité est activée partiellement. Le fichier /proc/sys/kernel/sysrq s'il existe indique le fait que cette option est activée. |
- | + | ||
- | Si vous compilez vous-même votre noyau, il vous faut mettre l'option //Magic SysRq key// du menu //Kernel Hacking// à //oui//. Sachez cependant que certaines personnes((Cf. le [[http://casteyde.christian.free.fr/system/linux/guide/online/x15797.html|YALIG]] (//Yet Another Linux Installation Guide//) de Christian Casteyde.)) considèrent ces touches magiques comme un trou de sécurité. | + | |
- | + | ||
- | Vous pouvez également bloquer cette fonctionnalité en mettant **kernel.sysrq=0** dans le fichier **/etc/sysctl.conf**, à créer si besoin (ou la débloquer en mettant **1**). | + | |
+ | <note>Si vous compilez vous-même votre noyau, il vous faut mettre l'option //Magic SysRq key// du menu //Kernel Hacking// à //oui//</note> | ||
+ | Sachez cependant que certaines personnes((Cf. le [[http://casteyde.christian.free.fr/system/linux/guide/online/x15797.html|YALIG]] (//Yet Another Linux Installation Guide//) de Christian Casteyde.)) considèrent ces touches magiques comme un trou de sécurité.\\ | ||
+ | Vous pouvez également bloquer cette fonctionnalité en mettant **kernel.sysrq=0** dans le fichier **/etc/sysctl.conf**, à créer si besoin (ou la débloquer en mettant **1**). | ||
Ligne 35: | Ligne 27: | ||
Les touches magiques sont documentées en détail dans le fichier **/usr/share/doc/linux-doc-`uname -r`/Documentation/sysrq.txt.gz** fourni par le paquet **linux-doc-`uname -r`** (dépend de votre version du noyau, donnée par la commande **uname -r**). | Les touches magiques sont documentées en détail dans le fichier **/usr/share/doc/linux-doc-`uname -r`/Documentation/sysrq.txt.gz** fourni par le paquet **linux-doc-`uname -r`** (dépend de votre version du noyau, donnée par la commande **uname -r**). | ||
- | Les combinaisons disponibles sont : | + | <note>Les touches magiques ne tiennent pas compte de la disposition de votre clavier et sont basées sur le layout qwerty, les principales combinaisons sur un clavier AZERTY sont indiquées dans le tableau ci-dessous, pour d'autres dispositions, voir [[ https://fr.wikipedia.org/wiki/Magic_SysRq_key| ce lien ]]</note> |
- | ^ Combinaison ^ Effet ^ Signification ^ | + | |
- | | **Alt SysRq 0-9** | Détermine le niveau de log de la console | | | + | Les combinaisons disponibles sont : |
- | | **Alt SysRq b** | Redémarre l'ordinateur | re**B**oot | | + | ^ Combinaison ^ Effet ^ Signification ^ Activé par défaut ^ Valeur ^ |
- | | **Alt SysRq c** | Redémarre //via// **kexec** pour faire un crashdump | **C**rashdump | | + | | **Alt SysRq 0-9** | Détermine le niveau de log de la console | | non | 2 | |
- | | **Alt SysRq e** | Envoie un signal de terminaison (SIGTERM) à tous les processus (sauf //init//) | t**E**rm | | + | | **Alt SysRq b** | Redémarre l'ordinateur | re**B**oot |**oui**| 128 | |
- | | **Alt SysRq f** | Tue le processus qui consomme le plus de mémoire (//via// **oom-killer**) | | | + | | **Alt SysRq c** | Redémarre //via// **kexec** pour faire un crashdump | **C**rashdump |non| 8 | |
- | | **Alt SysRq i** | Envoie un signal de fin (SIGKILL, plus ferme que SIGTERM) à tous les processus (sauf //init//) | k**I**ll | | + | | **Alt SysRq e** | Envoie un signal de terminaison (SIGTERM) à tous les processus (sauf //init//) | t**E**rm |non | 64 | |
- | | **Alt SysRq k** | Tue tous les processus de la console virtuelle courante | **K**ey | | + | | **Alt SysRq f** | Tue le processus qui consomme le plus de mémoire (//via// **oom-killer**) | |non| 64 | |
- | | **Alt SysRq l** | Envoie un signal de fin (SIGKILL, plus ferme que SIGTERM) à tous les processus (même //init//) | kil**L** | | + | | **Alt SysRq i** | Envoie un signal de fin (SIGKILL, plus ferme que SIGTERM) à tous les processus (sauf //init//) | k**I**ll |non| 64 | |
- | | **Alt SysRq m** | Affiche le contenu actuel de la mémoire | **M**emory | | + | | **Alt SysRq k** | Tue tous les processus de la console virtuelle courante. | **K**ey |non| 64 | |
- | | **Alt SysRq o** | Éteint le systeme via APM | **O**ut | | + | | **Alt SysRq l (L minuscule)** | Envoie un signal de fin (SIGKILL, plus ferme que SIGTERM) à tous les processus (même //init//) | kil**L** |non| 64 | |
- | | **Alt SysRq p** | Affiche sur la console les registres et drapeaux actuels | **P**rint | | + | | **Alt SysRq m** | Affiche le contenu actuel de la mémoire | **M**emory |non| 8 | |
- | | **Alt SysRq r** | Bascule la gestion du clavier de mode brute (raw) à XLATE | **R**aw | | + | | **Alt SysRq o** | Éteint le systeme via APM | **O**ut |**oui**| 128 | |
- | | **Alt SysRq s** | Synchronise les disques (tente d'écrire toutes les données non sauvegardées) | **s**ync | | + | | **Alt SysRq p** | Affiche sur la console les registres et drapeaux actuels | **P**rint |non| 8 | |
- | | **Alt SysRq t** | Affiche une liste des tâches actuellement en cours et leur description | **T**ask | | + | | **Alt SysRq r** | Bascule la gestion du clavier de mode brute (raw) à XLATE | **R**aw |non| 4 | |
- | | **Alt SysRq u** | Tente de remonter tous les systèmes de fichiers montés en lecture seule. Ceci retire le marquage « dirty flag » et évitera ainsi une vérification du système de fichiers au redémarrage. | **U**mount | | + | | **Alt SysRq s** | Synchronise les disques (tente d'écrire toutes les données non sauvegardées) | **s**ync |**oui**| 16 | |
+ | | **Alt SysRq t** | Affiche une liste des taches et autres informations dans la console | **T**ask |non| 8 | | ||
+ | | **Alt SysRq u** | Remonte les disques en lecture seule | **U**mount |**oui**| 32 | | ||
Ligne 58: | Ligne 52: | ||
<note important>Depuis le [[:xorg|serveur X]] (l'interface graphique), il peut être nécessaire de commencer par se réapproprier le clavier, par la combinaison **Alt SysRq r**.</note> | <note important>Depuis le [[:xorg|serveur X]] (l'interface graphique), il peut être nécessaire de commencer par se réapproprier le clavier, par la combinaison **Alt SysRq r**.</note> | ||
- | |||
Effectuez les combinaisons de touches suivantes, dans l'ordre : | Effectuez les combinaisons de touches suivantes, dans l'ordre : | ||
- | |||
- **Alt SysRq s** - Synchronise les disques | - **Alt SysRq s** - Synchronise les disques | ||
- **Alt SysRq e** - Essaie de fermer les processus en envoyant SIGTERM [facultatif] | - **Alt SysRq e** - Essaie de fermer les processus en envoyant SIGTERM [facultatif] | ||
Ligne 73: | Ligne 65: | ||
//**S**o **E**verything **I**s **U**nusual, **B**oot).// | //**S**o **E**verything **I**s **U**nusual, **B**oot).// | ||
- | Certains utilisent la séquence : REISUB. | + | Certains utilisent la séquence : REISUB ( //**R**etourner **E**n **I**slande **S**ur **U**n **B**ateau//). |
+ | |||
+ | __Les traces qui seront enregistrées dans le journal en version **20.04.1** seront les suivantes:__ | ||
+ | |||
+ | Pour Alt SysRq s - Synchronise les disques: L'action est visible. | ||
+ | <code bash>kernel: sysrq: Emergency Sync | ||
+ | kernel: Emergency Sync complete</code> | ||
+ | Pour Alt SysRq e - Essaie de fermer les processus en envoyant SIGTERM: La commande est certainement périmée. | ||
+ | <code bash>kernel: sysrq: This sysrq operation is disabled.</code> | ||
+ | Pour Alt SysRq i - Tue tous les processus restant en envoyant SIGKILL: La commande est certainement périmée. | ||
+ | <code bash>kernel: sysrq: This sysrq operation is disabled.</code> | ||
+ | Pour Alt SysRq u - Démonte les disques: Cette commande semble plutôt remonter les partitions en mode lecture seule. On peut mettre en doute sa nécessité. | ||
+ | <code bash>sysrq: Emergency Remount R/O</code> | ||
+ | Une vérification montre bien que la totalité des partitions est remontée en mode lecture seule. | ||
+ | <code bash>touch /media/DupliNosDonnees/titi | ||
+ | touch: impossible de faire un touch '/media/DupliNosDonnees/titi': Système de fichiers accessible en lecture seulement </code> | ||
+ | |||
+ | |||
+ | |||
+ | Pour Alt SysRq b - Redémarre : Rien n'est écrit. Mais le boot a réellement lieu. | ||
+ | |||
+ | |||
+ | |||
+ | ===== Activer ou désactiver les touches magiques ===== | ||
+ | |||
+ | Le contrôle des touches magiques se paramètre dans le fichier ''/etc/sysctl.d/10-magic-sysrq.conf''. | ||
+ | |||
+ | Y ajouter la ligne « ''kernel.sysrq=1'' » réactive toutes les touches magiques, les experts en sécurité informatiques n'aiment pas beaucoup mais c'est bien pratique. | ||
+ | |||
+ | Pour activer certaines touches seulement, il faut indiquer la somme des touches (cf. tableau du dessus, colonne valeur).\\ | ||
+ | La valeur par défaut depuis Ubuntu 14.04 LTS Trusty est **176**, c'est à dire **16** (S = sync) + **32** (U = remount read-only) + **128** (B = reboot ou O = out). | ||
+ | |||
+ | ===== Changer de la combinaison de touches pour redémarrer le serveur X===== | ||
+ | ====En ligne de commande==== | ||
+ | Il est possible de redémarrer le serveur X avec une autre combinaison de touches que alt+sysRq+K. Pour cela, il faut éditer le fichier /etc/default/keyboard en tant qu'administateur. Dans la section XKBOPTIONS modifier comme suit: | ||
+ | <code>XKBOPTIONS="terminate:ctrl_alt_bksp"</code> | ||
+ | afin d'utiliser la combinaison ctrl+alt+⌫. | ||
+ | ====Méthode graphique==== | ||
+ | === Sous GNOME et UNITY (Ubuntu) === | ||
+ | |||
+ | - Rendez-vous dans //Système → Préférences → Clavier//. | ||
+ | - Sélectionnez l'onglet //Agencements// et appuyez sur le bouton « Options de l'agencement ». | ||
+ | - Déroulez la liste //Séquence de touches pour fermer le serveur X// et cochez la case « Control + Alt + Eff. arrière ». | ||
+ | - Fermez l'outil de configuration de l'agencement du clavier. | ||
+ | |||
+ | |||
+ | === Sous KDE (Kubuntu) === | ||
+ | |||
+ | - Allez dans //Configuration du système → Périphériques d'entrées → Clavier → Avancé// | ||
+ | - Cochez la case « Configurer les options du clavier» sinon vous ne pourrez pas faire de modifications | ||
+ | - Recherchez « Séquence de touches pour tuer le serveur X » | ||
+ | - Cochez la case « Control + Alt + Eff. arrière » | ||
- | ===== Voir aussi===== | ||
- | * [[dontzap]] | ||
---- | ---- | ||
//Contributeurs : [[utilisateurs:nknico]], [[utilisateurs:naoli|naoli]]// | //Contributeurs : [[utilisateurs:nknico]], [[utilisateurs:naoli|naoli]]// |