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.
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
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
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 :
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 (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 : retour-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
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)
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<Commandes.txt
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<Commandes.txt : jusqu'à ce que toutes les lignes soient lues
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
On redémarre en faisant :
reboot