Chroot NetCup

Chroot-Umgebung bei NetCup.

Rescue-System aktivieren

Im Web-Interface

  1. Bei NetCup einloggen
  2. Server auswählen
  3. “Rescue-System” aktivieren
  4. Server neu starten

Per SSH verbinden

ssh root@deine-server-ip

Chroot-Umgebung einrichten

Partitionen mounten

# Hauptpartition mounten
mount /dev/sda1 /mnt

# System-Verzeichnisse binden
for i in proc sys dev; do
    mount --bind /$i /mnt/$i
done

# Dev-Pts mounten
mount --bind /dev/pts /mnt/dev/pts

# Resolv.conf für DNS
mount --bind /etc/resolv.conf /mnt/etc/resolv.conf

In Chroot wechseln

# Chroot-Umgebung betreten
chroot /mnt /bin/bash

# Shell prompt sollte sich ändern
root@server:/#

System-Reparatur

Passwort zurücksetzen

# Root-Passwort ändern
passwd root

# Benutzer-Passwort ändern
passwd username

Netzwerk-Konfiguration

# Netzwerk-Einstellungen prüfen
cat /etc/netplan/01-netcfg.yaml

# Netzwerk neu konfigurieren
netplan apply

# IP-Adresse prüfen
ip addr show

SSH-Konfiguration

# SSH-Konfiguration prüfen
nano /etc/ssh/sshd_config

# SSH-Dienst neustarten
systemctl restart sshd

# SSH-Status prüfen
systemctl status sshd

Boot-Loader reparieren

# GRUB neu installieren
grub-install /dev/sda

# GRUB-Konfiguration aktualisieren
update-grub

# Boot-Informationen aktualisieren
update-initramfs -u -k all

Dateisystem-Reparatur

FSCK durchführen

# Dateisystem prüfen (im Rescue-System, nicht im Chroot)
umount /dev/sda1
fsck /dev/sda1 -y

# Dateisystem wieder mounten
mount /dev/sda1 /mnt

Partitionstabelle prüfen

# Partitionstabelle anzeigen
fdisk -l /dev/sda

# GPT reparieren (falls nötig)
gdisk /dev/sda

Paketverwaltung im Chroot

System aktualisieren

# Paketquellen aktualisieren
apt update

# System aktualisieren
apt upgrade

# Wichtige Pakete neu installieren
apt install --reinstall grub-pc
apt install --reinstall linux-image-generic

Netzwerk im Chroot

# Netzwerk-Interface konfigurieren
ip link set eth0 up
ip addr add 192.168.1.100/24 dev eth0

# Gateway hinzufügen
ip route add default via 192.168.1.1

# DNS-Server eintragen
echo "nameserver 8.8.8.8" > /etc/resolv.conf

Chroot verlassen

Sauberes Verlassen

# Chroot verlassen
exit

# Partitionen unmounten
umount /mnt/dev/pts
umount /mnt/dev
umount /mnt/proc
umount /mnt/sys
umount /mnt/etc/resolv.conf
umount /mnt

System neu starten

# Rescue-System deaktivieren (im Web-Interface)
# Server normal booten
reboot

Automatisierung

Rescue-Script

#!/bin/bash
# Automatisches Chroot-Setup

echo "Mounte Partitionen..."
mount /dev/sda1 /mnt

echo "Binde System-Verzeichnisse..."
for i in proc sys dev; do
    mount --bind /$i /mnt/$i
done

mount --bind /dev/pts /mnt/dev/pts
mount --bind /etc/resolv.conf /mnt/etc/resolv.conf

echo "Wechsle in Chroot..."
echo "Nach der Arbeit: exit, dann umount -R /mnt"
chroot /mnt /bin/bash

Cleanup-Script

#!/bin/bash
# Chroot Cleanup

echo "Unmounte alle Verzeichnisse..."
umount -R /mnt 2>/dev/null || true

echo "Prüfe ob noch etwas gemountet ist..."
mount | grep /mnt

echo "Fertig!"

Fehlerbehebung

Häufige Probleme

  1. “chroot: failed to run command” - Shell nicht gefunden: /bin/bash durch /bin/sh ersetzen

  2. “Network is unreachable” - DNS nicht verfügbar: /etc/resolv.conf prüfen

  3. “Permission denied” - Partition read-only: mit fsck reparieren

  4. “No such file or directory” - Falsche Partition: mit fdisk -l prüfen

Logs prüfen

# Boot-Logs
journalctl -b

# System-Logs
tail -f /var/log/syslog

# Kernel-Messages
dmesg | tail -f

Zurück zur Administrations-Übersicht