====== Écran noir - manuel de survie ====== * Objet : Comment se tirer d'affaire en cas de plantage suite à écran noir. * Niveau requis : FIXME {{tag>débutant avisé}} * Commentaires : //Contexte d'utilisation du sujet du tuto. // FIXME * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) ===== 1 - Introduction ===== Suite à une installation de Débian qui a mal tourné pour des raisons diverses; au redémarrage de la machine : écran noir. Pas d’autre possibilité que d’utiliser une console et rien d’autre, pour réparer son OS.\\ La solution consistera souvent à introduire des lignes de commandes bien trop fastidieuses a taper directement dans un terminal. On va utiliser une boucle **while** qui permettra de copier les lignes contenues dans un texte se trouvant dans une clef USB. ===== 2 - Rappel des lignes de commande élémentaires utilisées ===== **__Cd pour se déplacer d'un répertoire à l'autre.__** Exemple : Aller dans /media (on se trouve dans jean)\\ jean$ cd /media Résultat : jean/media $ **__Cd .. pour reculer d'un répertoire.__** Exemple : Revenir dans /jean$ On se trouve dans : jean /media$ jean/media$ cd .. Résultat : jean /$ **__Pour voir ce qu'il y a dans /media :__**\\ /media$ ls **__Supprimer un répertoire vide__**. Exemple : mon-repertoire-vide dans : jean$ mon-repertoire-vide rmdir mon-repertoire-vide __**Supprimer un répertoire contenant des fichiers :**__ Pour ce qui suit il faut être en root, dans la plupart des cas (on dit aussi super utilisateur) : d’où le signe # que l'on va voir dans la fenêtre de la console après la commande su.\\ **NB :** Les répertoires et fichiers crées en simple utilisateur peuvent être supprimés sans passer en root. **Pour passer en root :** jean$ su\\ On tape le mot de passe root Exemple : supprimer le répertoire usb dans : /media/usb Se placer dans /media /media# rm -r usb -r pour récursif, (Supprimer un répertoire de manière récursive = supprimer les répertoires + les sous répertoires + les fichiers …etc). __**Supprimer un fichier :**__ Exemple : /media/usb/toto.txt Supprimer toto.txt rm /media/usb/toto.txt __**Éteindre l’ordinateur**__ shutdown now ===== 3 - Accéder à une console ===== Il faut utiliser les touches suivantes pour aller dans une console dans le cas d'un écran noir.\\ **Ctr+Alt F1 ou Ctr + Alt F2** ===== 4 - Demander de l'aide sur le forum ===== Le but est de pouvoir récupérer les données à partir d’une clef USB (seul moyen possible puisque le gestionnaire de fichier ne fonctionne pas) afin de pouvoir : * imprimer sur du papier le résultat d'une commande si besoin, * montrer les résultats d'une commande sur le forum, __**a) Placer la clef Usb dans une prise Usb**__ On va utiliser la commande suivante pour savoir sur quelle partition on doit monter la clef. fdisk -lCe qui donne :\\ /dev/sdf1 et indique que la clef et en fat32 **__b) Monter la clef usb__** **Au préalable, créer un répertoire usb dans /media** (En général l’emplacement de la clef se trouve sur /media). Avec la commande mkdir mkdir /media/usb On aura par exemple : /home/jean/media/usb **Montage de la clef proprement dit.** (Clef usb formatée en fat 32 d'où vfat, et sur la partition /dev/sdf1) **Se placer dans /media** mount -t vfat /dev/sdf1 usb __**c) copier le fichier du retour de commande, attendu par les ’’barbu(e)s’’ du forum, dans la clef usb**__\\ (exemple pour retour de la commande lspci) On lui donnera par, exemple, le nom de : r**etour-commande.txt** lspci > retour-commande.txt Le résultat est maintenant dans la clef usb et dans le fichier retour-commande.txt. **d) Démonter la clef usb** Pour sortir la clef il faut la démonter à l'aide de la commande suivante : umount usb Retirer la clef ===== 5 - Introduire les commandes ===== Ces lignes de commande étant assez compliquées et longues à taper (risque d’erreurs) on constituera un fichier texte (commmande.txt) dans lequel on fera un copier/coller de ces lignes et on introduira les commandes avec une boucle **while**.\\ La boucle lit le fichier Commande.txt, ligne par ligne, et exécute la commande dans la console ligne par ligne. **Exemple des commandes à introduire dans une console :** __Le fichier Commande.txt sera de la forme suivante :__ # apt-get install linux-image-amd64 linux-headers-amd64\\ apt-get install nvidia-legacy-304xx-kernel-dkms nvidia-settings-legacy-304xx xserver-xorg-video-nvidia-legacy-304xx linux-headers-$(uname -r) On peut aussi exécuter les commande ligne par ligne en commentant (#), comme ci-dessus, la ligne que l’on ne veut pas exécuter. Pour enlever # il faut éditer le fichier commandes.txt avec l’éditeur de texte Nano. __**a) Placer la clef Usb dans une prise Usb**__\\ On va utiliser la commande suivante pour savoir sur quelle partition on doit monter la clef. fdisk -l ce qui donne :\\ /dev/sdf1 et indique que la clef et en fat32 __**b) Monter la clef usb**__ Au préalable, créer un répertoire usb dans /media (par exemple). mkdir /media/usb **Montage de la clef proprement dit.**\\ (Clef usb formatée en fat 32 d'où vfat)\\ se placer dans /media mount -t vfat /dev/sdf1 usb __**c) Boucle while**__\\ Se placer dans le répertoire usb\\ Taper la ligne suivante dans un terminal : while read ligne; do eval $ligne; done **Explication de la ligne de commande (on fait une boucle) :** **while** : “tant que” en français\\ **read** : lis un fichier\\ **ligne** : lis la variable ligne qui a pour contenu la ligne du fichier Commandes.txt\\ **do** : faire\\ **eval $ligne** : exécute ce qui est dans la variable ligne\\ **done**NB:** Attention à bien mettre les “; “là où il faut. __**d) Démonter la clef**__ Pour sortir la clef il faut la démonter à l'aide de la commande suivante umount usb Retirer la clef ===== 6 - Redémarrage ===== On redémarre en faisant : reboot ===== 7 Pour aller plus loin ===== https://debian-facile.org/doc:systeme:console\\ https://debian-facile.org/doc:systeme:commandes:creer