Ich benutze ein Rescue-Live-System (ähnlich einer Live-CD), um einige Probleme mit meinem Debian-Server zu beheben:
# mkdir -p /mnt/rescue
# mount /dev/md2 /mnt/rescue
# mount --bind /dev /mnt/rescue/dev/
# mount --bind /proc /mnt/rescue/proc/
# mount --bind /sys /mnt/rescue/sys/
Jetzt kann ich chroot to /mnt/rescue
- aber wie kann ich das Dateisystem wieder aushängen, nachdem ich fertig bin?
umount: /mnt/rescue: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
Ich denke, es liegt daran dev
, proc
und sys
sind an das gemountete Dateisystem gebunden. Aber es ist auch nicht möglich, sie abzunehmen ...
mount
chroot
unmounting
Afr
quelle
quelle
/mnt/rescue/proc
? Sind Sie sicher, dass darin noch keine Prozesse ausgeführt werdenchroot
?lsof /mnt/rescue
, welcher Prozess diesen Ordner verwendet.Antworten:
Sie müssen zuerst die chroot-Sitzung beenden, normalerweise reicht ein einfacher
exit
Befehl aus:Dann mounten Sie ALLE gebundenen Verzeichnisse:
Dann:
Falls Sie befürchtet haben, dass
sync
das hier nicht verwendet wird, beachten Sie, dass es keinen Einfluss darauf hat, ob das Abhängen möglich ist. Das Aufheben des Ladevorgangs für ausstehende Schreibvorgänge muss auf jeden Fall erfolgen (da sie nach dem Aufheben des Ladevorgangs nirgendwo mehr hingehen können). Das Vorhandensein eines Chroot-Prozesses ist irrelevant (mit der Ausnahme, dass dadurch das Aushängen verhindert wird). Im normalen Systembetrieb hat die Synchronisierung keinen erkennbaren Effekt. Die Synchronisierung macht nur dann einen Unterschied, wenn ein Gerät physisch getrennt wird, ohne dass es abgemeldet wurde, oder wenn das System abstürzt, während das Gerät gemountet ist.quelle
sync
ist total nutzlos.sync
es nutzlos ist? Wird es im aktuellen Kernel unbrauchbar? Oder nur in diesem Fall (Rettungsmodus)? Ich lege es dort nur für den Fall, dass es riesige ausstehende Schreibvorgänge auf die Festplatte gibt, die ein Umount nach dem Beenden von chroot verhindern.sync
hat keinen Einfluss darauf, ob eine Demontage möglich ist. Das Aufheben des Ladevorgangs für ausstehende Schreibvorgänge muss auf jeden Fall erfolgen (da sie nach dem Aufheben des Ladevorgangs nirgendwo mehr hingehen können). Das Vorhandensein eines Chroot-Prozesses ist irrelevant (mit der Ausnahme, dass dadurch das Aushängen verhindert wird). Hat im normalen Systembetriebsync
keine feststellbaren Auswirkungen.sync
Dies macht nur dann einen Unterschied, wenn ein Gerät physisch getrennt wird, ohne dass es abgemeldet wurde, oder wenn das System abstürzt, während das Gerät gemountet ist.Führen Sie den folgenden Befehl aus, um das Dateisystem zu erzwingen und von der Dateisystemhierarchie zu trennen und alle Verweise auf das Dateisystem zu bereinigen, sobald es nicht mehr ausgelastet ist.
quelle
Der Grund, warum Sie das Ziel erhalten, ist beschäftigt. Meldung ist, weil der Mount Point (
/mnt/rescue
) in einem Dateibrowser oder in einer Terminalsitzung geöffnet ist, und auch die Reihenfolge des Unmounting-Vorgangs (hier meine ich,dev/pts
sollte vorher umounted werdendev/
)Nun, um alle fs dort erfolgreich umounten zu können:
cd
)!Anzahl bei Einhaltung der Bestellung
dev/pts => dev/ => proc/ => sys/
:sudo umount / mnt / rescue / dev / pts
sudo umount / mnt / rescue / dev
sudo umount / mnt / rescue / proc
sudo umount / mnt / rescue / sys
sudo umount / mnt / rescue
quelle
So mache ich mit dem
schroot
Befehl unter Ubuntu ab Version 10.04:quelle
Chroot verlassen. Auf dem Host-System zeigt der Befehl 'mount' den gesamten gemounteten Pfad an. (Beinhaltet den Pfad, der in chroot eingebunden ist.) Zum Beispiel:
Dann betreten Sie die Chroot-Umgebung. Führen Sie in der Chroot-Umgebung "Unmount" aus, um die Bereitstellung aller Pfade in der angegebenen Reihenfolge aufzuheben. (Der Unterpfad muss vor dem übergeordneten Pfad deaktiviert werden.)
quelle