簡體   English   中英

Linux從設備本身中運行的腳本中卸載設備

[英]Linux umount a device from a script running in the device itself

我在路徑中安裝了iso映像:

/mnt/iso

在這個iso中,我有一個安裝腳本install.sh,我從iso運行安裝腳本,最后該腳本詢問用戶是否要卸載iso本身。 如果用戶按下“ y”,腳本將執行以下代碼:

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

不幸的是,當腳本嘗試執行umount時,出現錯誤

umount: /mnt/iso: device is busy

我想這是由於虛擬設備正忙於腳本本身。 如何使其工作? TNX

使用-l--lazy開關將其--lazyumount ,這將執行一次懶惰的umount,只有在不再使用時才將其完全卸載。 手冊頁(這是特定於linux的選項)中的完整描述是:

懶惰卸載。 現在,從文件系統層次結構中分離文件系統,並在不再繁忙時清除對文件系統的所有引用。 (需要內核2.4.11或更高版本。)

如果您使用的是最新版本,TomH的解決方案將解決該問題。 否則,Simone Palazzo的評論是您最好的選擇。 您正在通過要卸載的區域中的腳本來卸載某些東西。 如果您從根目錄運行腳本,它將成功。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM