Symptome
Ein Anzeichen dafür, dass dein Root-Dateisystem voll ist, kann sein, dass du dich nicht mehr in die grafische Benutzeroberfläche (GUI) von OMV einloggen kannst. Statt einer erfolgreichen Anmeldung wird die Login-Seite erneut angezeigt.
Überprüfen, ob ein volles Root-Dateisystem das Problem ist
Um festzustellen, ob das Root-Dateisystem voll ist, kannst du dich per SSH in deinen Server einloggen (siehe die Anleitung für neue Benutzer, wie man per SSH auf den Server zugreift) und folgenden Befehl ausführen:
df
Dieser Befehl zeigt die Nutzung jedes Dateisystems an. Die Ausgabe von df
könnte folgendermaßen aussehen:
15:01:03 root@server:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 8033820 0 8033820 0% /dev
tmpfs 1610128 27588 1582540 2% /run
/dev/sda1 39108608 39108608 0 100% /
tmpfs 8050632 0 8050632 0% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 8050632 0 8050632 0% /sys/fs/cgroup
tmpfs 8050632 0 8050632 0% /tmp
folder2ram 8050632 75248 7975384 1% /var/log
folder2ram 8050632 4 8050628 1% /var/tmp
folder2ram 8050632 624 8050008 1% /var/lib/openmediavault/rrd
folder2ram 8050632 996 8049636 1% /var/spool
/dev/sda2 76360744 9428044 63010780 14% /srv/dev-disk-by-label-dataos
folder2ram 8050632 11648 8038984 1% /var/lib/rrdcached
/dev/md127 2884009464 1680001056 1203992024 59% /srv/dev-disk-by-label-pool
folder2ram 8050632 4 8050628 1% /var/lib/monit
folder2ram 8050632 1604 8049028 1% /var/cache/samba
/dev/sdb1 2930265540 1627081640 1300996536 56% /srv/dev-disk-by-label-internalbackup
Das Dateisystem /dev/sda1
, das auf /
gemountet ist, ist das Betriebssystem-Dateisystem. Wenn die Auslastung dieses Dateisystems 100% beträgt, bedeutet das, dass das Betriebssystem-Dateisystem voll ist.
Ermitteln, welches Verzeichnis das Dateisystem füllt
Um herauszufinden, welches Verzeichnis das Dateisystem füllt, führe in der Kommandozeile die folgenden Schritte aus:
- Wechsel ins Root-Verzeichnis des Betriebssystem-Dateisystems:
cd /
- Verwende
du
, um die Größe jedes Verzeichnisses im Root-Verzeichnis zu ermitteln:
du -xhd1
Dieser Befehl zeigt die Größe jedes Verzeichnisses im Root-Verzeichnis an (x
: nicht in andere Dateisysteme absteigen; h
: Ausgabe in lesbarem Format anzeigen; d1
: nur die erste Ebene der Verzeichnisse anzeigen). Die Ausgabe könnte wie folgt aussehen:
15:08:05 root@hawk:/# du -xhd1
9.8M ./etc
0 ./media
2.2G ./var
2.3G ./usr
1.4G ./boot
20K ./home
5.7M ./root
0 ./mnt
20.2G ./srv
0 ./opt
0 ./export
4.0M ./tmp_urbackup
16K ./.config
0 ./sharedfolders
25.8G .
(Um nur die 10 größten Ordner/Dateien in der richtigen Reihenfolge zu erhalten, benutze du -ahxd1 | sort -hr | head -n 10
)
- Identifiziere das größte Verzeichnis und wechsle in dieses Verzeichnis:
cd ordnername
Ersetze ordnername
durch den Namen des größten Verzeichnisses.
- Wiederhole diese Schritte, bis du das „tiefste“ Verzeichnis gefunden hast, das dein Root-Dateisystem füllt.
- Wechsel in dieses Verzeichnis und prüfe mit
ls -al
, was sich darin befindet. Der Befehlls
listet den Verzeichnisinhalt auf (a
: zeigt auch versteckte Einträge,l
: zeigt die Liste im Langformat).
ls -al
Weitere Schritte zur Speicherplatzfreigabe
Die weiteren Schritte hängen von den Gründen ab, warum der Speicherplatz belegt ist. Wenn zum Beispiel große Log-Dateien oder veraltete Backups den Speicherplatz füllen, kannst du diese gezielt löschen oder verschieben.
Tooltipp: ncdu
verwenden
Ein nützliches Tool, um den Ordner zu identifizieren, der das Betriebssystem-Dateisystem füllt, ist ncdu
. Es bietet eine benutzerfreundliche, interaktive Ansicht des Speicherplatzverbrauchs.
Installation und Nutzung:
- Installiere
ncdu
mit folgendem Befehl:
apt-get install ncdu
- Wechsel erneut ins Root-Verzeichnis:
cd /
- Starte
ncdu
mit der Option-x
, um zu verhindern, dass es in andere Dateisysteme (z.B. deine Datenträger) hinabsteigt, was viel Zeit in Anspruch nehmen könnte:
ncdu -x
Mit ncdu
kannst du leicht herausfinden, welche Verzeichnisse am meisten Platz beanspruchen und entsprechende Maßnahmen ergreifen.
Lösung
Bereinige den APT-Cache, um zusätzlichen Speicherplatz freizugeben.
Führe dazu folgenden Befehl aus:
sudo omv -aptclean
Dieser Befehl entfernt überflüssige APT-Cache-Dateien und kann helfen, wertvollen Speicherplatz freizugeben.
Jetzt sollte so viel Speicherplatz frei sein dass du dich in einem Privaten Fenster wieder auf der GUI einloggen kannst.
Überprüfen ob statt der Mount-Points auf die Systemplatte gespeichert wurde.
Schritt 1:
Zuerst müssen wir feststellen, welche Verzeichnisse auf deinem System den meisten Speicherplatz belegen. Dazu erstellen wir ein zusätzliches Mount-Point für das Root-Dateisystem und binden das /srv
-Verzeichnis dorthin ein.
mkdir -p /mnt/rootfs # Erstelle einen zusätzlichen Mount-Point für dein Root-Dateisystem
mount --bind /srv /mnt/rootfs # Binde das /srv-Verzeichnis an den neuen Mount-Point
cd /mnt/rootfs # Wechsle in das Verzeichnis, wo der echte Inhalt von /srv sichtbar ist
du -hxd1 /mnt/rootfs | sort -hr # Überprüfe den Speicherplatzverbrauch im Mount-Point
Schritt 2: Speicherplatzverbrauch analysieren
Nachdem du die oben genannten Befehle ausgeführt hast, siehst du eine Liste von Verzeichnissen, die nach ihrer Größe sortiert sind:
root@omv:/mnt/rootfs# du -hxd 1 /mnt/rootfs | sort -hr
6,5G /mnt/rootfs
4,5G /mnt/rootfs/docker
2,0G /mnt/rootfs/docker-apps
1,7M /mnt/rootfs/salt
32K /mnt/rootfs/zfs
32K /mnt/rootfs/pillar
8,0K /mnt/rootfs/ftp
4,0K /mnt/rootfs/dev-disk-by-uuid-e887f188-f1ac-4126-9238-32963bb8dced
4,0K /mnt/rootfs/dev-disk-by-label-docker
root@omv:/mnt/rootfs#
Schritt 3: Speicherplatz freigeben
In dieser Liste sollten alle Verzeichnisse, die mit dev-disk-by-
beginnen, ganz unten stehen und leer sein. Wenn das nicht der Fall ist, hast du den Grund gefunden, warum dein Betriebssystem-Laufwerk voll ist. Lösche den Inhalt dieser Verzeichnisse, um den belegten Speicherplatz zurückzugewinnen:
Achtung: Lösche nur Inhalte in Verzeichnissen, die mit dev-disk-by-
beginnen. Andere Verzeichnisse oder Symlinks enthalten möglicherweise echte Daten, die weiterhin unter /srv/
genutzt werden. Verändere diese nicht!
Schritt 4: Änderungen rückgängig machen
Nachdem du den nicht benötigten Speicherplatz gelöscht hast, musst du das Root-Dateisystem wieder aushängen und den Mount-Point entfernen:
umount /mnt/rootfs # Hänge das /srv-Verzeichnis von /mnt/rootfs aus
rmdir /mnt/rootfs # Entferne den zuvor erstellten Mount-Point
Fazit
Mit diesen Schritten solltest du in der Lage sein, den Speicherplatz auf deinem OMV-System wiederherzustellen und zu verhindern, dass das Root-Dateisystem unerwartet voll wird. Denk daran, regelmäßig den Speicherplatz zu überprüfen, um zukünftige Probleme zu vermeiden.