Icaunux - Le Forum

Forum de l'Association ICAUNUX

Vous n'êtes pas identifié(e).

Annonce

Les Inscriptions au forum sont temporairement désactivées en attendant de trouver une solution efficace contre les inscriptions fictives très nombreuses ces derniers temps. Si vous souhaitez vous inscrire sur le forum, merci d'envoyer une demande par mail à l'adresse contact@icaunux.org. Désolé de cette gène occasionnée.

#1 27-06-2021 11:09:38

wanica
Membre
Inscription : 13-11-2008
Messages : 2 070

Chrooter

Suite à la réunion icaunux chez les beauxboulons à la MJC d'Auxerre,

Question: comment connaître le type de distribution installée sur un disque depuis un live cd ?
Solution: se chrooter sur la partition où est installé la distrib.

Problème accessoire: Un swap modifié depuis live cd de gparted ou autre système installé sur partition sda6.  Le système installé 18.04 ne retrouve plus son swap et refuse de booter:

[DEPEND] dependency failed for /dev/disk by xxxxx etc 

Solution: chrooter depuis un live ou un autre système déjà installé sur le disque (sur le pc)

 mount /dev/sda1 /mnt 
mount --bind /dev /mnt/dev 
mount -t proc /proc /mnt/proc
mount -t sysfs /sys /mnt/sys 
chroot /mnt /bin/bash  

Si on souhaite modier le fstab avec sudo leafpad /etc/fstab  cela ne fonctionne pas v=car leafpad comme gedit autres éditeurs de texte est une appli en mode graphique qui ne peut pas se lancer sur le système chrooté qui n' a pas de serveur graphique, alors on doit utiliser un éditeur de texte en mode console tel que vi (Nota  pas de réseau non plus sur le système chrooté...)

Vérifier que l' on est bien sur le système chrooté avec 

cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.5 LTS"  

Prérequis: savoir utiliser vi éditer de texte en  mode console
http://wiki.linux-france.org/wiki/Utili … quitter_vi

man vi a écrit :

i = insertion de texte
[ECHAP] quitter le mode insertion et revenir en mode commande

commande taper :  (ce sont deux points !!)
puis entrer w (écrire ou sauvegarder le fichier)
:x       sauvegarde puis quitte vi (exit)

et q pour quitter vi
ou bien   :wq       sauvegarde puis quitte (write and quit)

Identifier le bon UUID depuis le système chrooté grâce à la commande cat pour visualiser le contenu de fstab 

cat/etc/fstab 

On y voit le mauvais uuid du swap

UUID=d9a3ac16-2fe0-4eee-bbe0-234d6d97e7b5 

et

sudo blkid

montre autre UUID (le bon = "5824747f-e86d-4156-8403-cf7391e2ef16")  pour le swap, sélectionner puis édition copier

Nota: l'uuid du swap est le même que celui du système qui chroote, car un seul swap a été crée lors de l'installation. Voici son UUID 5824747f-e86d-4156-8403-cf7391e2ef16

Editer fstab sur le système chrooté 

vi /etc/fstab 

Coller le bon uuid ("5824747f-e86d-4156-8403-cf7391e2ef16") puis sauvegarder et quitter vi

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
# / was on /dev/sda1 during installation
UUID=bf41c472-5c0f-4e97-aa28-4115779fa233 /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=d9a3ac16-2fe0-4eee-bbe0-234d6d97e7b5 none            swap    sw              0       0
root@ssd128-ThinkPad-X60:/# sudo blkid
/dev/sda1: UUID="bf41c472-5c0f-4e97-aa28-4115779fa233" TYPE="ext4" PARTUUID="0008ce95-01"
/dev/sda3: UUID="D895-70B2" TYPE="vfat" PARTUUID="0008ce95-03"
/dev/sda4: UUID="c7f774be-eba5-4dda-8a2d-1f22b536cf7f" TYPE="ext4" PARTUUID="0008ce95-04"
/dev/sda5: UUID="5824747f-e86d-4156-8403-cf7391e2ef16" TYPE="swap" PARTUUID="0008ce95-05"
/dev/sda6: UUID="1b63ec63-f5f3-456a-9551-49bc8836ad77" TYPE="ext4" PARTUUID="0008ce95-06"

root@ssd128-ThinkPad-X60:/# vi /etc/fstab

Démonter notre chroot. Quitter le système chrooté avec la commande 

exit

puis

sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys 

puis la racine Code BASH

sudo umount /mnt 

NOTA: On peut ouvrir un autre terminal sur le système qui chroote pour voir les différences de login

ssd128@ssd128-ThinkPad-X60:~$

   alors que le système chrooté affiche

root@ssd128-ThinkPad-X60:~# 

liens
https://doc.ubuntu-fr.org/mount_fstab#les_bases
http://wiki.linux-france.org/wiki/Utili … quitter_vi

Hors ligne

#2 29-06-2021 21:36:02

IceCat
Membre
Lieu : 93
Inscription : 17-11-2012
Messages : 682

Re : Chrooter

C'est une solution, mais pourquoi se chrooter ?
Tout ceci peut se faire simplement en montant les partitions nécessaires (bon OK, pas si on veut installer un paquet sur l'hôte ou vérifier que tout fonctionne).

En tout cas j'imagine que ton tuto pourra servir ! Merci smile


promotion.php?image=PL-user.png&membre=IceCat

Hors ligne

#3 30-06-2021 09:29:52

wanica
Membre
Inscription : 13-11-2008
Messages : 2 070

Re : Chrooter

Merci de ton retour bienveillant. Il va me servir aussi...

Questions :
- Dans le tuto, on se chroote pour lancer lsb-release, mais sans cela, comment connaître au travers de l' explorateur de fichiers (et sans utiliser de terminal ou d'autre logiciel) la version du système installé sur le disque (et si c'est une 32 ou 64...).

- Si on veut que le système chrroté ait accès au réseau, que faudrait-il faire ?

Hors ligne

#4 10-07-2021 11:33:33

IceCat
Membre
Lieu : 93
Inscription : 17-11-2012
Messages : 682

Re : Chrooter

Dans le tuto, tu montes entre autre ta partition / sur /mnt/, puis tu cat le fichier lsb-release.

Mais tu pourrais consulter lsb-release dès que tu as monté (donc sans chroot) puisqu'il est sur /mnt/etc/lsb-release
Tu as peut-être également un fichier /mnt/etc/os-release qui peut te donner des infos.
Également, comme tu étais dans le chroot, tu as un binaire lsb_release que tu peux appeler et qui te donnera les mêmes infos (lsb_release -a) (bon ok là faut un terminal).
Par contre ça ne te diras peut-être pas si c'est du 32 ou 64 bits, mais dans ton tuto je ne vois pas non plus où tu récupères cette info. Quand tu es dans le chroot, un uname -a pourra te le dire.

Pour que le système sur le disque ait accès au réseau (pour utiliser son gestionnaire de paquets par exemple), je ne vois là pas d'autre solution que le chroot.


promotion.php?image=PL-user.png&membre=IceCat

Hors ligne

Pied de page des forums