diff --git a/docs/assets/divers/server/chroot.png b/docs/assets/divers/server/chroot.png new file mode 100644 index 00000000..db929874 Binary files /dev/null and b/docs/assets/divers/server/chroot.png differ diff --git a/docs/divers/server/chroot.md b/docs/divers/server/chroot.md new file mode 100644 index 00000000..093f3fa3 --- /dev/null +++ b/docs/divers/server/chroot.md @@ -0,0 +1,61 @@ +# CHROOT + +![illustration](../../assets/divers/server/chroot.png) + +## Définition de chroot + +CHROOT permet de travailler depuis un système en cours d'installation, alors que celui-ci ne dispose pas encore de composants indispensables comme le noyau (c'est alors le noyau du système hôte qui est utilisé, ce qui requiert certaines compatibilités minimales entre les deux systèmes). + +De même, la commande peut permettre de travailler sur un système devenu inaccessible par la voie classique (lancement du noyau par un chargeur d'amorçage au démarrage de la machine) à la suite d'un problème technique afin de tenter de le remettre en état de fonctionnement. + +## Utilisation + +:bulb: Repérer le disque du système d'exploitation que l'on souhaite "chrooter" +```bash +lsblk +``` + +- Monter les partitions nécessaires +```bash +sudo mount /dev/sda2 /mnt # exemple pour un disque sda2 + +sudo mount --bind /dev /mnt/dev +sudo mount --bind /proc /mnt/proc +sudo mount --bind /sys /mnt/sys +sudo mount --bind /run /mnt/run +``` + +- Connexion: +```bash +sudo chroot /mnt +``` + +:warning: A partir de cette commande, toutes les autres commandes saisies s'éffectuent dans l'OS cible + +- Réparer le GRUB: +```bash +grub-install /dev/sda +``` + +- Réparer le système d'exploitation: +```bash +apt --fix-broken install +dpkg --configure -a +apt install -f +apt install --reinstall apt +``` + +- Pour se déconnecter: +```bash +exit +``` + +- Démonter le système de fichier: +```bash +sudo umount -a /mnt +``` + +## Documentation supplémentaire :books: + +[ubuntu wiki](https://doc.ubuntu-fr.org/chroot) +[Debian facile](https://debian-facile.org/doc:systeme:chroot) \ No newline at end of file diff --git a/docs/divers/server/index.md b/docs/divers/server/index.md index 084e22f7..01a3cf63 100644 --- a/docs/divers/server/index.md +++ b/docs/divers/server/index.md @@ -8,4 +8,5 @@ - [Un mémo mysql](mysql.md) - [Un mémo ssh](ssh.md) - [capturer le traffic réseau avec Wireshark](wireshark.md) -- [calculer les adresses d'un réseau](calculer-adresses-reseau.md) \ No newline at end of file +- [calculer les adresses d'un réseau](calculer-adresses-reseau.md) +- [Chroot](chroot.md) \ No newline at end of file diff --git a/docs/index.md b/docs/index.md index b8d48beb..aaeb9134 100644 --- a/docs/index.md +++ b/docs/index.md @@ -13,7 +13,7 @@ La documentation est divisée ainsi : - [les autres ressources](divers) - [les mémos pour bien utiliser les commandes linux](divers/cmd/index.md) - [les tutos d'administration système](divers/admin/index.md) - - [les guides complets pour déployer des services réseau](divers/server/index.md) + - [les guides pour l'administration de serveurs](divers/server/index.md) - [les guides DevOps](divers/devops/index.md) - [les guides internes](divers/internal/index.md) - [les astuces de développeur](divers/dev/index.md) diff --git a/mkdocs.yml b/mkdocs.yml index b3076d56..cf02ed8c 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -125,6 +125,7 @@ nav: - "Mémo SSH": divers/server/ssh.md - "Wireshark": divers/server/wireshark.md - "Calcul Réseau": divers/server/calculer-adresses-reseau.md + - "Chroot": divers/server/chroot.md - "Les guides DevOps": - divers/devops/index.md - "Hugo":