Bilder & Screenshots: CL | Lizenz: CC-by-sa 4.0
chroot steht für „change root“ und ist eine Funktion unter Unix-Systemen, um das Rootverzeichnis zu ändern. Wiki-chroot
Kurzanleitung, wie Du schnell und einfach (KISS), eine Fedora Minimal-Chroot-Umgebung ohne spezielle Werkzeuge erstellen kannst. Die einzige Voraussetzung ist, dass Du auf der verwendeten Shell über Root-Zugriff und eine chroot
Binärdatei (oder Busybox) verfügen musst. Ich benutze auch sudo,su,wget
und tar
aber das hast Du sicher.
Ich verwende ein Container-Image, da es ein sehr gut verpacktes 22.7 MB Fedora Minimal-Rootfs enthält.
Container-Images sind für x86_64 und ARM-Architekturen z. B. hier verfügbar: http://ftp.uni-kl.de/pub/linux/fedora/linux/releases/30/Container/
Im Beispiel wird ein x86_64 Image verwendet, mit ARM-Architekturen klappt es genauso. Mein „Host“ Betriebssystem ist CentOS, dies funktioniert jedoch auf jeder Linux-Distribution.
# Stelle sicher, dass du root bist.
sudo su
# Alternativ
su
# Verzeichnis für Fedora erstellen und hineinwechseln
mkdir -p /fedora && cd /fedora
# Container-Image holen
wget http://ftp.uni-bayreuth.de/linux/fedora/linux/releases/30/Container/x86_64/images/Fedora-Container-Minimal-Base-30-1.2.x86_64.tar.xz
# Entpacken
tar xvf Fedora-Container-Minimal-Base-30-1.2.x86_64.tar.xz
# Haupt tar entpacken
tar xvpf d562c77b52f68a0c2f304b269723f5107c8ed115be61701882f48b1e182a0a50/layer.tar
# Bereinigung
rm -rf Fedora-Container-Minimal-Base-30-1.2.x86_64.tar.xz 5b3f8adb1d9add6f1e3fdf2ccd14bf523aa4391fa9aa493e53ca1aeec2d402c5.json d562c77b52f68a0c2f304b269723f5107c8ed115be61701882f48b1e182a0a50 manifest.json repositories
Jetzt habe ich ein 132 MB Fedora-Minimal-Root-Dateisystem in
/fedora
Ich erstelle ein Skript, um Fedora-chroot
zu nutzen. Mit einem Texteditor:
vi /usr/bin/enter-fedora-chroot
#!/usr/bin/env sh
echo -e "Entering \e[1;32mFedora chroot\e[m"
mount -t proc proc /fedora/proc/
mount -t sysfs sys /fedora/sys/
mount -o bind /dev /fedora/dev/
mount -o bind /dev /fedora/dev/pts
chroot /fedora /bin/env -i \
HOME=/root TERM="$TERM" PS1='\e[1;32m[\u@fedora-chroot \W]\$\e[m ' \
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/bin \
/bin/bash --login
echo -e "Exiting \e[1;31mFedora chroot\e[m"
umount -lf /fedora/dev/pts
umount -lf /fedora/sys/
umount -lf /fedora/proc/
umount -lf /fedora/dev/
echo -e "\e[1;34mCleaned up\e[m"
Mache es ausführbar
chmod +x /usr/bin/enter-fedora-chroot
Jetzt kann Ich Fedora-chroot
betreten. Mit Root rechten:
enter-fedora-chroot

Habe Spaß!