
我想建立兩個使用者(例如 adm1 和 adm2),因為每個使用者都想要自己的密碼,並使用該密碼。但是,它們應共用相同的主目錄,我們稱之為 admx。
這可能嗎?
如果是:如何實現這個目標?
(當然他們都屬於同一個組=admx)
答案1
我不建議多個使用者使用相同的主目錄,因為重要的設定檔位於主目錄中。這些由各種程式讀取和寫入,可能會導致用戶之間發生衝突。另外,其中一些文件需要只能由一個用戶訪問,否則相關程序將拒絕工作。最好在一個使用者的主目錄中建立一個供兩個使用者使用的子目錄,然後將該子目錄符號連結到其他使用者的主目錄中。當然,該子目錄需要由群組 admx 進行群組可寫,並且設定了 setgid 位,因此兩個使用者都可以在此目錄中建立文件,並且它們將自動指派給該群組。
為了方便起見,您可以在每個使用者的檔案中放置一個cd
更改此子目錄的命令.profile
,這樣登入後,兩個使用者都會在該子目錄中啟動,而不是在其主目錄中啟動。
答案2
儘管第一個解決方案中有警告,但在閱讀此關鍵字後,我還是使用了符號連結。
人們可能會這樣做:
假設管理員adm1
和adm2
都在同一組admx
。假設/home/adm1
是 的主目錄adm1
且已正確配置。不需要做任何工作來提供adm2
合理的設置,因為他的目錄將被替換為軟連結/home/adm1
:
sudo rm -rf /home/adm2 # remove the original home directory of adm2.
# Note: adm2 must exist before his home directory
# is replaced by a soft link, otherwise owner and
# group of the pointed to directory would change!
sudo chgrp admx /home # intermediate: now /home belongs root:admx
sudo chmod g+ws /home # intermediate: set w and SGID-bit to inherit group
sudo ln -s /home/adm1 /home/adm2 # create adm2's home directory as soft link
# due to SGID-bit, root:admx own the link
sudo chmod g-ws /home # remove rights granted in step 2 and 3
sudo chgrp root /home # back in original state
sudo chown -R adm1:admx /home/adm1 # make sure that adm2 gets access rights through group admx
sudo chmod -R g+s /home/adm1/ # establish group inheritance in favor of admx
sudo chmod -R g+w /home/adm1/.config/* # there might be programs like x-tile wanting to write there
最後兩步是必要的,因為adm2
不是 的所有者/home/adm1
。
此解決方案的優點(儘管與上述解決方案相比更複雜)是它避免了複製./config
(此處未提及)到其他管理員的主目錄,以便兩者享有相同的設定。第二位管理員透過該組獲得所有權力admx
。最後設定的 SGID 位元可確保下面隨後建立的目錄/home/adm1
也繼承 group admx
。