我正在嘗試使用 Zerofree,這似乎是這個問題的答案:如何減小虛擬機器大小?
我已成功卸載 /dev/sda1,zerofree 工作正常,釋放了約 37gb。
但我似乎無法卸載或重新安裝為只讀 /dev/mapper/mypc-root,它說:
umount: / is busy
或者
mount: / is busy
使用的命令是:
$ umount /dev/mapper/mypc-root
$ mount -no remount,ro -t ext2 /dev/mapper/mypc-root /
我處於單一使用者模式,使用“init 1”輸入。
來賓 SO 是 Ubuntu 12,具有加密的 LVM 和 home。
有任何想法嗎?
答案1
/
無法從系統中卸載,因為/
系統本身正在使用(因此您看到的訊息)。
您需要從 Live-CD 執行此程序。
答案2
當您刪除了根檔案系統上的檔案但仍開啟檔案時,通常會發生這種情況。某些進程保留對檔案的引用,並且在關閉之前無法在磁碟上釋放它。更新系統庫是造成這種情況的一種方法。
由於處於乾淨狀態的檔案系統無法包含已刪除但未釋放的文件,因此核心將拒絕重新掛載唯讀檔案系統。
重新啟動這些進程會有所幫助。它允許核心釋放文件,並且可以乾淨地卸載文件系統。
另一種選擇是使用 SysRq 鍵強制進行唯讀重新安裝:
echo u > /proc/sysrq-trigger
這是安全的,但會導致核心/fsck 在下次掛載/運行時抱怨。
答案3
就我而言,我不想擔心終止進程。由於我的 VirtualBoX 中有兩個虛擬機,因此我安裝了需要在另一個虛擬機上壓縮的虛擬機磁碟,並將其從該計算機上清除。