Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
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 Prochaine révision Les deux révisions suivantes | ||
utilisateurs:nounours:tutos:ecran-noir-manuel-de-survie [02/02/2018 17:49] nounours [4 - Demander de l'aide sur le forum] |
utilisateurs:nounours:tutos:ecran-noir-manuel-de-survie [04/02/2018 16:55] nounours [6 - Redémarrage] |
||
---|---|---|---|
Ligne 8: | Ligne 8: | ||
===== 1 - Introduction ===== | ===== 1 - Introduction ===== | ||
Suite à une installation de Débian qui a mal tourné pour des raisons diverses; au redémarrage de la machine : écran noir. | 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 un terminal et rien d’autre, pour réparer son OS.\\ | + | 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. | 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 ===== | ===== 2 - Rappel des lignes de commande élémentaires utilisées ===== | ||
Ligne 15: | Ligne 15: | ||
Résultat : | Résultat : | ||
<code user>jean/media $</code> | <code user>jean/media $</code> | ||
- | Cd .. pour reculer d'un répertoire. Exemple : Revenir dans /jean$ | + | **__Cd .. pour reculer d'un répertoire.__** Exemple : Revenir dans /jean$ |
On se trouve dans : jean /media$ | On se trouve dans : jean /media$ | ||
<code user>jean/media$ cd ..</code> | <code user>jean/media$ cd ..</code> | ||
Ligne 21: | Ligne 21: | ||
Résultat : | Résultat : | ||
<code user>jean /$</code> | <code user>jean /$</code> | ||
- | Pour voir ce qu'il y a dans /media :\\ | + | **__Pour voir ce qu'il y a dans /media :__**\\ |
<code user>/media$ ls</code> | <code user>/media$ ls</code> | ||
- | __** | + | __**Supprimer un répertoire :**__ |
- | Supprimer un répertoire :**__ | + | |
- | Pour ce qui suit il faut être en root (on dit aussi super utilisateur) : d’ou le signe # que l'on va voir dans la fenêtre du terminal après la commande su. | + | 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 : | + | **__Pour passer en root :__** |
<code user>jean$ su</code>\\ | <code user>jean$ su</code>\\ | ||
On tape le mot de passe root | On tape le mot de passe root | ||
Ligne 39: | Ligne 39: | ||
-r pour récursif, (Supprimer un répertoire de manière récursive = supprimer les répertoires + les sous répertoires + les fichiers …etc). | -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 :** | + | __**Supprimer un fichier :**__ |
Exemple : /media/usb/toto.txt | Exemple : /media/usb/toto.txt | ||
Ligne 48: | Ligne 48: | ||
__**Éteindre l’ordinateur**__ | __**Éteindre l’ordinateur**__ | ||
<code root>shutdown now</code> | <code root>shutdown now</code> | ||
- | ===== 3 - Accéder à un terminal ===== | + | ===== 3 - Accéder à une console ===== |
- | Il faut utiliser les touches suivantes pour aller dans un terminal dans le cas d'un écran noir.\\ | + | 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** | **Ctr+Alt F1 ou Ctr + Alt F2** | ||
Ligne 56: | Ligne 56: | ||
* imprimer sur du papier le résultat d'une commande si besoin, | * imprimer sur du papier le résultat d'une commande si besoin, | ||
* montrer les résultats d'une commande sur le forum, | * montrer les résultats d'une commande sur le forum, | ||
- | a) Placer la clef Usb dans une prise Usb | + | |
+ | __**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. | On va utiliser la commande suivante pour savoir sur quelle partition on doit monter la clef. | ||
<code root>fdisk -l</code>Ce qui donne :\\ | <code root>fdisk -l</code>Ce qui donne :\\ | ||
/dev/sdf1 et indique que la clef et en fat32 | /dev/sdf1 et indique que la clef et en fat32 | ||
+ | |||
+ | |||
**__b) Monter la clef usb__** | **__b) Monter la clef usb__** | ||
Ligne 91: | Ligne 95: | ||
===== 5 - Introduire les commandes ===== | ===== 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**.\\ | 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 le terminal ligne par ligne. | + | 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 un terminal :** | + | **Exemple des commandes à introduire dans une console :** |
+ | |||
+ | __Le fichier Commande.txt sera de la forme suivante :__ | ||
- | __Le fichier Commande.txt sera de la forme suivante :__\\ | ||
# apt-get install linux-image-amd64 linux-headers-amd64\\ | # 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) | apt-get install nvidia-legacy-304xx-kernel-dkms nvidia-settings-legacy-304xx xserver-xorg-video-nvidia-legacy-304xx linux-headers-$(uname -r) | ||
Ligne 109: | Ligne 114: | ||
+ | __**b) Monter la clef usb**__ | ||
+ | |||
+ | Au préalable, créer un répertoire usb dans /media (par exemple). | ||
+ | |||
+ | <code root>mkdir /media/usb</code> | ||
+ | |||
+ | **Montage de la clef proprement dit.**\\ | ||
+ | (Clef usb formatée en fat 32 d'où vfat)\\ | ||
+ | se placer dans /media | ||
+ | <code root> | ||
+ | mount -t vfat /dev/sdf1 usb</code> | ||
+ | |||
+ | __**c) Boucle while**__\\ | ||
+ | Se placer dans le répertoire usb\\ | ||
+ | Taper la ligne suivante dans un terminal : | ||
+ | <code root>while read ligne; do eval $ligne; done<Commandes.txt</code> | ||
+ | |||
+ | **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 | ||
+ | |||
+ | <note important>**NB:** Attention à bien mettre les “; “là où il faut.</note> | ||
+ | |||
+ | __**d) Démonter la clef**__ Pour sortir la clef il faut la démonter à l'aide de la commande suivante | ||
+ | |||
+ | <code root>umount usb</code> | ||
+ | Retirer la clef | ||
+ | |||
+ | ===== 6 - Redémarrage ===== | ||
+ | |||
+ | On redémarre en faisant : | ||
+ | <code root>reboot</code> | ||
+ | ===== 7 Pour aller plus loin ===== | ||
+ | https://debian-facile.org/doc:systeme:console |