Snap 套件移除不了該怎麼辦?真的要把整個 Snap 砍掉重練嗎?
在終端機中以 root 身份執行:
snap remove bitwarden
命令,把命令輸出貼上來
會在中間卡住,如:
將 bitwarden: home 從 snapd:home 中斷連線
每次卡住的位置都不一樣
執行下列命令:
journalctl -u snapd | tail -n15
然後把命令輸出貼上來
snap changes 變成這樣
ID Status Spawn Ready Summary289 Hold today at 01:20 HKT today at 01:34 HKT Remove "bitwarden" snap290 Done today at 01:35 HKT today at 01:35 HKT 啟用 "bitwarden" snap292 Done today at 01:46 HKT today at 01:46 HKT 啟用 "bitwarden" snap293 Undo today at 01:55 HKT - Remove "bitwarden" snap
12月 08 01:56:12 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze-Dark" to "/snap/bitwarden/151/data-dir/themes/Breeze-Dark-2" to avoid a clash
12月 08 01:56:12 inspiron-7590 snapd[1260]: backend.go:285: reloading profiles of snap-confine provided by the system snap
12月 08 01:56:12 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze" to "/snap/bitwarden/151/data-dir/themes/Breeze-2" to avoid a clash
12月 08 01:56:12 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze-Dark" to "/snap/bitwarden/151/data-dir/themes/Breeze-Dark-2" to avoid a clash
12月 08 01:56:13 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/icons/breeze_cursors" to "/snap/bitwarden/151/data-dir/icons/breeze_cursors-2" to avoid a clash
12月 08 01:56:13 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze" to "/snap/bitwarden/151/data-dir/themes/Breeze-2" to avoid a clash
12月 08 01:56:13 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze-Dark" to "/snap/bitwarden/151/data-dir/themes/Breeze-Dark-2" to avoid a clash
12月 08 01:56:13 inspiron-7590 snapd[1260]: backend.go:285: reloading profiles of snap-confine provided by the system snap
12月 08 01:56:13 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze" to "/snap/bitwarden/151/data-dir/themes/Breeze-2" to avoid a clash
12月 08 01:56:13 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze-Dark" to "/snap/bitwarden/151/data-dir/themes/Breeze-Dark-2" to avoid a clash
12月 08 01:56:13 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/icons/breeze_cursors" to "/snap/bitwarden/151/data-dir/icons/breeze_cursors-2" to avoid a clash
12月 08 01:56:14 inspiron-7590 snapd[1260]: backend.go:285: reloading profiles of snap-confine provided by the system snap
12月 08 01:56:14 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze" to "/snap/bitwarden/151/data-dir/themes/Breeze-2" to avoid a clash
12月 08 01:56:14 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/themes/Breeze-Dark" to "/snap/bitwarden/151/data-dir/themes/Breeze-Dark-2" to avoid a clash
12月 08 01:56:14 inspiron-7590 snapd[1260]: spec.go:312: renaming mount entry for directory "/snap/bitwarden/151/data-dir/icons/breeze_cursors" to "/snap/bitwarden/151/data-dir/icons/breeze_cursors-2" to avoid a clash
等等我好像發現了問題的原因了
12月 08 01:56:04 inspiron-7590 snapd[1260]: taskrunner.go:304: Change 293 task (Remove data for snap "bitwarden" (151)) failed: failed to remove snap "bitwarden" base directory: remove /home/jasonhk/snap/bitwarden: directory not empty
Bitwarden 之前偶爾會發生無法啟動的問題,以往我的解決方式是把 mv /home/$USER/snap/bitwarden/$VERSION /home/$USER/snap/bitwarden/$VERSION.bak
這次我意外選擇了刪除 snap 套件重新安裝,結果發生了這次的慘劇(其實沒有很慘啦)
Snap 似乎是 rm /home/$USER/snap/bitwarden 崩掉後無法回復到正常狀態
應該是有進程占著 bitwarden snap 的資料目錄才造成軟體包移除卡住
我看過裡面只有我複製了的 *.bak 目錄,按道理應該沒有其他行程佔用了的
而且它的錯誤是 directory not empty