2015-03-07

Ubunut 手動清除 schroot 中斷的 Session

阿舍今天用 df 和 du 指令在檢查磁碟空間的時候,發現在 /var/lib/schroot/mount 資料夾下還掛了一堆的東西,阿舍一看,就知道應該是阿舍前幾天在用 schroot 測東西的時候,有幾次沒有順利的離開時所遺留的殘留物哩 ! 本來,阿舍想要用 rm 指令來直接給它清除的,不過,阿舍突然有一種天啟出現,這... 還是不要太衝的好哩 ! ...



於是,阿舍去查了一下 Ubuntu 的說明文件,在這一篇有關 schroot 的 FAQ 中有提到清除 schroot 遺留 session 的作法,然後,在那個問題的最後面就有說,最好不要直接把 /var/lib/schroot/mount 資料夾裡的所有資料夾都刪除,因為這樣子作的話,可能會有很恐怖的結果哩 !

沒清乾淨的 Session 資料會在 /var/lib/schroot 資料夾

首先,如果你有沒有清除乾淨的 schroot 的 Session 的話,就可以在「/var/lib/schroot/session」和「/var/lib/schroot/mount」資料夾裡,看到一堆用你的 chroot 的名稱開頭的資料夾,例如,阿舍的叫做「vivid」,所以,就會在這二個資料夾裡看到堆用 vivid 開頭的資料夾,而這些就是要被手動清掉的東西哩 !

在「/var/lib/schroot/session」下的資料夾是可以直接刪除的,以阿舍來說,在這個 session 下有個叫做「/var/lib/schroot/session/vivid-112be8de-d8d4-464e-a3fa-e47eba602c61」的資料夾,這個就可以直接用 rm 指令來移除了 ...

$ sudo rm -rf /var/lib/schroot/session/vivid-112be8de-d8d4-464e-a3fa-e47eba602c61

接下來,要處理的是「/var/lib/schroot/mount」資料夾,不過,就像在前面阿舍有提到的,這個資料夾可不能直接刪除,因為,它底下的資料夾可能真的有掛到其它的系統資料夾,一刪就會出問題哩 ! 所以,要先卸載這些資料夾才能把它刪除哩 !

在開始卸載前,可以用 schroot 提供的 schroot-listmounts 來檢查一下這個資料夾有那些掛載點,然後,再逐一把這些掛載點給卸載,之後,才能夠來刪除這個「/var/lib/schroot/mount」資料夾下未清除的 Session 資料夾哩 !

不過,schroot-listmounts 的存放位置要找一下才行,它沒被放在預設的搜尋路徑,而且,不同版本的存放位置可以不同,阿舍建議可以用下面第一行的 find 指令來找一下,找到後,才用這個 schroot-listmounts 指令來檢查掛載點哩 !

$ find / -name schroot-listmounts

# 阿舍的 schroot-listmounts 程式是被放在「/usr/lib/x86_64-linux-gnu/schroot/」資料夾下
$ /usr/lib/x86_64-linux-gnu/schroot/schroot-listmounts -m /var/lib/schroot/mount

把找出的掛載點都卸載後,再把「/var/lib/schroot/mount」下的資料夾給刪掉,這樣就算是清除乾淨了哩 ! .... 雖然,文件上還有說有清除 /var/lib/schroot 資料夾下的其它資料夾,不過,阿舍看了每個資料一下,都沒發現有資料,所以,就省略囉 ! ...




推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁