(現在) 還是很多坑的 systemd-homed
不囉唆,直接講最近幾次使用 systemd-homed 使用的坑以及搬家經驗。
不適當的時機放大縮小
我不太確定是不是 systemd 的 bug 還是本身設計就長這樣,自動縮放大小的策略很怪。
使用指令: homectl update $USER --auto-resize-mode=shrink-and-grow
以下是我嘗試過的調整的大小:
- resized SSD 80% space (預設大小) -> 沒作用,不會自己 shrink
- 自己 resize 到接近實際 home 目錄的大小 -> 不會自己 grow (至少 Steam 下載遊戲,還是出現「空間不足」的問題)
- 設定固定大小 450GB -> 這時才 shrink?!
- 設定跟 home 實際大小差不多的 size 後搬家,並第一次 activate -> 這時才 grow?!(直接把我的系統 SSD 弄爆了...)
不確定到底是怎樣...這部份要再去研究一下。
搬家依舊不方便
systemd-homed 給一個統一 home 目錄管理機制的願景,理論上搬家也該很好處理,但實際上搬家仍然不方便。怎麼個不方便法呢?以下列舉幾點:
- home 目錄 /LUKS2 加密後的
.home檔案,要自己複製貼上,內建無 export 機制 - 承上,因為無 export 機制,Host signing key 也要一起移動(位於
/var/lib/systemd/home),否則 activate 時找不到 Host signing key - 注意 auto-resize-mode 策略,如果是設定
shrink-and-grow,那要注意在 systemd-homed 還原的時候,有機率會自己 grow,所以建議先關掉它,還有設定的 size 不可以太小,不然就踩到上一節的坑了
如果 homectl 內建本身有 export 機制就好了,可以讓使用者少處理很多東西。
軟體相容問題
大部分軟體的設定,因為都放在 home 目錄下的 .config 或是 .local,可以無痛轉移。但還是有些軟體有相容問題:
- Chromium 系瀏覽器,仍會將所有帳號自動登出
- Firefox 系瀏覽器,因為 Installation ID 跑掉了,如果有多個 Profile,有機率會跑掉
- WinBoat 因為 Docker 掛載時機沒有調整好(比 systemd-homed 還早),會導致使用者無法登入,解法是刪除
/home/$USER/.winboat資料夾和移除 Docker 容器 - KDE Plasma 在移轉後有機會 Icon 破圖,通常是沒裝對應的 Theme,目前只能換 Theme 解、找出還沒安裝的 Theme,或是乾脆重置設定
之後還有問題再慢慢補...。
暫時(?)結論
目前 systemd-homed 可用,但不建議在生產環境上使用,會有不少問題。