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 | ||
chroot [Le 25/01/2024, 22:07] sefran Mise en forme |
chroot [Le 24/07/2024, 15:59] (Version actuelle) 193.57.110.2 [Exemple pratique avec une version 17.10 , 18.04 , 20.04 , 21.04 , 22.04 et 24.04] |
||
---|---|---|---|
Ligne 52: | Ligne 52: | ||
sudo umount /media/system/run | sudo umount /media/system/run | ||
sudo umount /media/system</code> | sudo umount /media/system</code> | ||
+ | |||
+ | |||
+ | ==== Exemple pratique avec une version 17.10 , 18.04 , 20.04 , 21.04 , 22.04 et 24.04 ==== | ||
+ | Le plus souvent, cette utilisation est faite à partir d'une clé USB d'installation d'Ubuntu. Ceci est un cas pratique fait en EFI sur partition système non chiffrée. | ||
+ | Les commandes de préparation sont | ||
+ | <code>setxkbmap fr ### afin d'avoir un clavier français. | ||
+ | sudo -i ### afin d'éviter de passer son temps à taper cette commande</code> | ||
+ | L'identification de la partition système à cibler sera plus aisée en tapant la commande | ||
+ | <code>lsblk -fe7</code> | ||
+ | Si cette commande montre que ubuntu est installé dans une partition chiffrée, il est nécessaire de l'ouvrir pour y avoir accès. | ||
+ | <code bash>cryptsetup luksOpen /dev/xxx chiffre</code> | ||
+ | Le montage de la partition système à cibler se fera en tapant la commande (pensez à remplacer XXXX par la bonne valeur). | ||
+ | <code>mount /dev/XXXX /mnt ### Si pas chiffrée | ||
+ | ou | ||
+ | mount /dev/mapper/chiffre /mnt ### Si chiffrée | ||
+ | ou | ||
+ | zpool import -a -f -l -R /mnt ### Si partition zfs standard</code> | ||
+ | Le montage des répertoires se fera avec ces commandes (copier/coller). | ||
+ | <code> mount -t proc /proc /mnt/proc | ||
+ | mount -t sysfs /sys /mnt/sys | ||
+ | mount --bind /dev /mnt/dev | ||
+ | mount --bind /run /mnt/run | ||
+ | mount --bind /sys /mnt/sys | ||
+ | mount --bind /etc/resolv.conf /mnt/etc/resolv.conf | ||
+ | modprobe efivars </code> | ||
+ | Le changement d'environnement se fera avec cette commande | ||
+ | <code> chroot /mnt</code> | ||
+ | Quelques contrôles seront à faire par exemple | ||
+ | <code>mount -t devpts devpts /dev/pts | ||
+ | df -h && df -i | ||
+ | ping -c4 8.8.8.8 && ping -c4 google.fr | ||
+ | ls -ls /home </code> | ||
+ | Vous pouvez alors passer à la réparation proprement dite qui a justifié cette opération. | ||
+ | Espérons simplement que ce message d'erreur "//Running in chroot, ignoring request.//" n'empêchera pas votre réparation. | ||
+ | Lorsque cela sera fini, le plus simple est de rebooter pour vérifier. La commande suivante s'occupe de toutes les déconnexions. | ||
+ | <code>reboot</code> | ||
+ | |||
==== Multi architecture ==== | ==== Multi architecture ==== | ||
Ligne 83: | Ligne 120: | ||
sudo chroot /media/system qemu-i386-static /bin/bash</code> | sudo chroot /media/system qemu-i386-static /bin/bash</code> | ||
- | Sinon, voir le tutoriel [[tutoriel:chroot32bits]] | + | Voir le tutoriel [[tutoriel:chroot32bits]] pour approfondir. |
== Convertir un environnement 32 bits en environnement 64 bits == | == Convertir un environnement 32 bits en environnement 64 bits == | ||
Ligne 96: | Ligne 133: | ||
- | + | ==== Pour un ubuntu intallé dans une partition BTRFS ==== | |
- | ==== Exemple pratique avec une version 17.10 , 18.04 , 20.04 , 21.04 et 22.04==== | + | |
- | Le plus souvent, cette utilisation est faite à partir d'une clé USB d'installation d'Ubuntu. Ceci est un cas pratique fait en EFI sur partition système non chiffrée. | + | |
- | Les commandes de préparation sont | + | |
- | <code>setxkbmap fr ### afin d'avoir un clavier français. | + | |
- | sudo -i ### afin d'éviter de passer son temps à frapper cette commande</code> | + | |
- | L'identification de la partition système à cibler sera plus aisée en frappant la commande | + | |
- | <code>lsblk -fe7</code> | + | |
- | Si cette commande montre que ubuntu est installé dans une partition chiffrée, il est nécessaire de l'ouvrir pour y avoir accès. | + | |
- | <code bash>cryptsetup luksOpen /dev/xxx chiffre</code> | + | |
- | Le montage de la partition système à cibler se fera en frappant la commande (pensez à remplacer XXXX par la bonne valeur). | + | |
- | <code>mount /dev/XXXX /mnt ### Si pas chiffrée | + | |
- | ou | + | |
- | mount /dev/mapper/chiffre /mnt ### Si chiffrée</code> | + | |
- | Le montage des répertoires se fera avec ces commandes (copier/coller). | + | |
- | <code> mount -t proc /proc /mnt/proc | + | |
- | mount -t sysfs /sys /mnt/sys | + | |
- | mount --bind /dev /mnt/dev | + | |
- | mount --bind /run /mnt/run | + | |
- | mount --bind /sys /mnt/sys | + | |
- | mount --bind /etc/resolv.conf /mnt/etc/resolv.conf | + | |
- | modprobe efivars </code> | + | |
- | Le changement d'environnement se fera avec cette commande | + | |
- | <code> chroot /mnt</code> | + | |
- | Quelques contrôles seront à faire par exemple | + | |
- | <code>mount -t devpts devpts /dev/pts | + | |
- | df -h && df -i | + | |
- | ping -c4 8.8.8.8 && ping -c4 google.fr | + | |
- | ls -ls /home </code> | + | |
- | Vous pouvez alors passer à la réparation proprement dite qui a justifié cette opération. | + | |
- | Espérons simplement que ce message d'erreur "//Running in chroot, ignoring request.//" n'empêchera pas votre réparation. | + | |
- | Lorsque cela sera fini, le plus simple est de rebooter pour vérifier. La commande suivante s'occupe de toutes les déconnexions. | + | |
- | <code>reboot</code> | + | |
- | + | ||
- | + | ||
- | ==== Pour un ubuntu installé dans une partition BTRFS ==== | + | |
[[https://forum.ubuntu-fr.org/viewtopic.php?pid=22031607#p22031607|c'est là]] ou [[:timeshift#restauration_depuis_une_autre_instance|là.]] | [[https://forum.ubuntu-fr.org/viewtopic.php?pid=22031607#p22031607|c'est là]] ou [[:timeshift#restauration_depuis_une_autre_instance|là.]] | ||
+ | ou aussi [[https://forum.ubuntu-fr.org/viewtopic.php?pid=22771420#p22771420|là]] et en [[https://forum.endeavouros.com/t/chroot-into-a-btrfs-uefi-system-from-live-media/15986|anglais.]] | ||
===== Isolation d'applications ===== | ===== Isolation d'applications ===== | ||
C'est une action logicielle qui consiste à protéger l'environnement système des faiblesses de sécurités d'une application. | C'est une action logicielle qui consiste à protéger l'environnement système des faiblesses de sécurités d'une application. | ||
- | Pour cela on peut utiliser chroot, les conteneurs ou la virtualisation matérielle. | + | Pour cela on peut utiliser chroot, [[https://doc.ubuntu-fr.org/virtualisation|les conteneurs ou la virtualisation matérielle]]. |
Dans cette documentation nous traitons de la mise en place avec chroot. | Dans cette documentation nous traitons de la mise en place avec chroot. | ||
Ligne 147: | Ligne 149: | ||
* [[schroot|schroot]] | * [[schroot|schroot]] | ||
+ | * [[fakeroot|fakeroot]] [[https://www.thegeekdiary.com/fakeroot-command-examples-in-linux/|Lien externe EN]] | ||
* [[https://linuxfr.org/news/care-et-la-reproductibilite-des-executions|care]] | * [[https://linuxfr.org/news/care-et-la-reproductibilite-des-executions|care]] | ||
* [[https://linuxfr.org/tags/cde/public|cde]] | * [[https://linuxfr.org/tags/cde/public|cde]] |