Ich möchte die unter /tmp
gemountete Partition verkleinern auf 10 GB und fügen Sie den gesamten ungenutzten Speicherplatz zu /
hinzu Partition.
Wenn ich umount -l /tmp
und führen Sie fsck.ext3 -f /dev/privg/lv_tmp
aus , bekomme ich das:
fsck.ext3: Device or resource busy while trying to open /dev/privg/lv_tmp
Filesystem mounted or opened exclusively by another program?
Was sind die richtigen Schritte für eine LVM-Neupartitionierung?
$ df -hl
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/privg-lv_root 12G 4.2G 6.9G 38% /
/dev/mapper/privg-lv_tmp 29G 3.2G 24G 12% /tmp
/dev/mapper/privg-lv_var 3.9G 1.5G 2.3G 40% /var
/dev/sda1 494M 40M 429M 9% /boot
tmpfs 16G 0 16G 0% /dev/shm
Akzeptierte Antwort:
Sie müssen das ext3-Dateisystem aushängen, um es zu verkleinern. umount -l
bedeutet, dass das Dateisystem ausgehängt wird, wenn es keine offene Datei mehr darauf gibt.
Führen Sie lsof /tmp
aus um zu sehen, welche Dateien auf /tmp
geöffnet sind . Wenn Sie einen X-Server betreiben, sehen Sie seinen Socket /tmp/.X11-unix/X0
. Sie können diesen Socket¹ nicht entfernen und trotzdem eine Verbindung zum X-Server herstellen. Abgesehen davon neigen die meisten Dateien dazu, kurzlebig zu sein oder zu Programmen zu gehören, die neu gestartet werden können.
Wenn Sie den Vorgang wirklich auf einem Live-System ausführen möchten, müssen Sie zu einem anderen /tmp
migrieren Dateisystem, zumindest für die Dauer der Operation. Sie könnten zu tmpfs wechseln, in dem /tmp
wird im RAM oder Swap gespeichert; siehe diese Anleitung. Tatsächlich tmpfs für /tmp
ist ein gängiges Setup; Vielleicht möchten Sie sich daran halten und /tmp
entfernen vollständig partitionieren (und vielleicht stattdessen Ihren Swap ein wenig vergrößern).
Sobald Sie alles von /tmp
schließen konnten , können Sie es aushängen. Verwenden Sie nicht umount -l
, ist es hier nutzlos, da es den Einhängepunkt, aber nicht das Gerät freigibt, während Sie das Gerät freigeben möchten. Einmal /tmp
ausgehängt ist, führen Sie fsck
aus , führen Sie resize2fs
aus um es zu verkleinern, und verkleinern Sie das logische LVM-Volume entsprechend. Oder Sie sparen Zeit, indem Sie das LVM-Volume direkt verkleinern und ein neues Dateisystem für /tmp
erstellen . (Wenn Sie irgendwelche Daten haben, die Sie in /tmp
behalten möchten , Du machst es falsch. /tmp
ist für Daten, die zwischen Neustarts nicht gespeichert werden müssen, und geschlossene Dateien in /tmp
sind Freiwild zum Löschen.)
Wenn all dies entmutigend erscheint, starten Sie zu einem Wiederherstellungssystem (Live-CD oder USB) neu und arbeiten Sie von dort aus weiter.
¹ Sie können es auch nicht in ein anderes Dateisystem verschieben:Das würde das Original entfernen und einen neuen Socket erstellen.