Linux hängt ein Gerät von einem Skript aus, das auf dem Gerät selbst ausgeführt wird

StackOverflow https://stackoverflow.com//questions/20000547

  •  20-12-2019
  •  | 
  •  

Frage

Ich habe ein gemountetes ISO-Image im Pfad:

/mnt/iso

In dieser ISO habe ich ein Installationsskript install.sh Ich führe das Installationsskript von der ISO aus und am Ende fragt das Skript den Benutzer, ob er die ISO selbst umounten möchte.Wenn der Benutzer "y" drückt, führt das Skript den folgenden Code aus:

cd /
umount /mnt/iso
echo "Installation completed!"

Leider tritt beim Versuch des Skripts, das umount auszuführen, ein Fehler auf

umount: /mnt/iso: device is busy

Ich nehme an, es liegt an der Tatsache, dass das virtuelle Gerät vom Skript selbst ausgelastet ist.Wie kann es funktionieren?Tnx

War es hilfreich?

Lösung

Verwenden Sie die -l oder --lazy wechseln zu umount dies führt zu einem Lazy Umount, bei dem es erst vollständig ausgehängt wird, wenn es nicht mehr verwendet wird.Die vollständige Beschreibung in der Handbuchseite (dies ist eine Linux-spezifische Option) lautet:

Faul aushängen.Trennen Sie das Dateisystem von der Dateisystemhierarchie bereinigen Sie jetzt alle Verweise auf das Dateisystem, sobald dies nicht der Fall ist nicht mehr beschäftigt.(Erfordert Kernel 2.4.11 oder höher.)

Andere Tipps

tomhs Lösung wird das Problem beheben, wenn Sie das neueste verwenden.Ansonsten ist der Kommentar von Simone Palazzo Ihre beste Wette.Sie stören etwas durch ein Skript in der Umgebung, in der Sie nicht montiert sind.Wenn Sie das Skript aus dem Stammverzeichnis ausführen, ist es erfolgreich.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top