Ehrweb.de

Linux-Tipps: Rootfs & GPT-Imaging vom Host

Kompakte Hinweise für Systemadministratorinnen, Administratoren und technische Assistenten (KI), die unter Linux Images oder SSDs für Einplatinencomputer vorbereiten.

Schnellfindung: filtern oder rechts eine Kategorie wählen – jeder Tipp klappt einzeln auf.

Fremde CPU-Architektur

chroot ins ARM-Rootfs schlägt auf x86 fehl
chrootQEMUkritisch

Symptom: Programme im gemounteten Rootfs lassen sich vom Host nicht ausführen oder brechen sofort ab.

Tipp: Ohne Benutzerraum-Emulation für die Zielarchitektur ist chroot auf einem anders gebauten Host ungeeignet. Benutzerkonten und Erstkonfiguration lieber über die First-Boot-Mechanismen des Images steuern statt per Host-chroot „hineinzuarbeiten“.

Beispiel (Pfade anpassen)
# Architektur des Rootfs prüfen, bevor chroot versucht wird
file /mnt/root/bin/bash
uname -m

# Falls Emulation nötig (x86-Host → ARM-Rootfs)
sudo apt-get install -y qemu-user-static binfmt-support
# Besser: Benutzer über First-Boot anlegen statt Host-chroot

Images als Loop-Gerät

Partitionen im Image erscheinen nicht
losetupGPTpartscan

Symptom: Das Image ist als Loop gemountet, Unterpartitionen fehlen aber.

Tipp: Beim Einrichten des Loop-Geräts den Partitionsscan aktivieren. Erst danach stehen die üblichen Partitions-Nodes für Boot- und Root-Dateisysteme bereit.

Beispiel (Pfade anpassen)
# Image mit Partitionsscan einbinden
LOOP=$(sudo losetup --partscan --find --show disk.img)
echo "Loop: $LOOP"
ls -l "${LOOP}"*

# Später wieder lösen
# sudo umount "${LOOP}p1" "${LOOP}p2" 2>/dev/null || true
# sudo losetup --detach "$LOOP"

Nicht-interaktive Formatierung

Skripte hängen an Formatier-Rückfragen
mkfsAutomation

Symptom: Unbeaufsichtigte Läufe stoppen und warten auf Bestätigung.

Tipp: Dateisysteme mit erzwungenem, nicht-interaktivem Modus und gesetztem Volume-Label anlegen. So bleiben GPT-Labels und spätere Mount-by-Label stabil.

Beispiel (Pfade anpassen)
# Nicht-interaktiv mit Label (Geräte anpassen)
sudo mkfs.vfat -F 32 -n BOOT /dev/loop0p1
sudo mkfs.ext4 -F -L ROOT /dev/loop0p2

Zusätzliche Host-Hygiene

Partitionskennungen unter Linux verifizieren
UUIDPARTUUID

Symptom: Boot-Konfiguration wirkt korrekt, das Zielgerät startet trotzdem nicht in Root.

Tipp: Kennungen immer mit den unter Linux gelesenen Werten abgleichen. Auf dem Linux-Host ermittelte Partitionskennungen sind für Linux-Bootzeilen in der Regel zuverlässiger als Werte von anderen Betriebssystemen.

Beispiel (Pfade anpassen)
sudo blkid /dev/loop0p1 /dev/loop0p2
lsblk -o NAME,SIZE,FSTYPE,LABEL,UUID,PARTUUID

# Boot-Zeile mit unter Linux gelesenen Werten setzen, z. B.:
# root=UUID=…   oder   root=PARTUUID=…
Rechte nach dem Entpacken prüfen
setuidrsync

Symptom: Basisdienste starten, administrative Werkzeuge nicht.

Tipp: Auch unter Linux nach großen Kopierläufen setuid-Bits und Besitz kritischer Programme stichprobenartig prüfen – besonders wenn über Dateisystemgrenzen oder spezielle Mount-Optionen kopiert wurde.

Beispiel (Pfade anpassen)
# Nach dem Entpacken Spezialbits prüfen
find /mnt/root -xdev \( -perm -4000 -o -perm -2000 \) -type f -ls
stat -c '%a %U:%G %n' /mnt/root/usr/bin/sudo

# Bei Bedarf korrigieren
# chmod 4755 /mnt/root/usr/bin/sudo && chown root:root /mnt/root/usr/bin/sudo
TLS vor dem ersten Zeitsync
NTPZertifikate

Symptom: Paketquellen und HTTPS-Installer scheitern direkt nach dem Imaging.

Tipp: Zeitzone und Netzzeitsync gehören zu den ersten Schritten mit Internetzugang – erst danach Zertifikats- oder Paketoperationen anstoßen.

Beispiel (Pfade anpassen)
sudo timedatectl set-timezone Europe/Berlin
sudo timedatectl set-ntp true
timedatectl status
# Erst danach apt/curl/HTTPS

Verwandt: macOS-Tipps für Imaging · IT Wissen