Nixos
在使用者的主目錄中聲明符號連結
我正在管理一個共享伺服器,當我創建一個使用者時,我想在他們的主目錄中聲明一個指向所有使用者都可以讀取和寫入的共享文件夾的符號連結。我想在 configuration.nix 文件中聲明這一點,以便設置新使用者就像將它們添加到文件並執行 nixos-rebuild 開關一樣簡單。這似乎是一個常見的案例,所以我很驚訝它不存在,這讓我認為出於道德原因它可能不存在(你怎麼敢聲明使用者主目錄的內容)。
該特定案例沒有 NixOS 模組,但您可以使用 oneshot systemd 使用者服務來檢查符號連結是否存在,如果不存在則創建它。一種方法是使用使用者啟動腳本:
system.userActivationScripts.linktosharedfolder.text = '' if [[ ! -h "$HOME/path/to/symlink" ]]; then ln -s "$HOME/path/to/symlink" "/path/to/shared/folder" fi '';
該腳本將在使用者每次登錄時執行。