Users

如何使用已經存在的主目錄創建新使用者?

  • March 16, 2020

假設我有一個名為panos的使用者,他的主目錄位於/home/panos. 然後,我創建了另一個名為Tom的使用者:

adduser Tom

它創建了一個使用者Tom,該使用者擁有主目錄:/home/Tom

問題是:如果我想創建一個新使用者並將另一個使用者的主目錄作為主目錄,該怎麼辦。例如,讓我們創建使用者Jerry並將他作為他的主目錄傳遞給使用者Panos的主目錄:

adduser -d /home/panos Jerry

但有一個錯誤說:

adduser: warning: the home directory already exists.
Not copying any file from skel directory into it.

但是,如果您查看該/etc/passwd文件:

tail -n 3 /etc/passwd
anthony:x:501:501::/home/anthony:/bin/bash
panos:x:502:502::/home/panos:/bin/bash
Jerry:x:503:503::/home/panos:/bin/bash

看來它奏效了。但是當我嘗試以 Jerry 身份登錄時:

[root@LinuxAcademy ~]# su Jerry
bash-4.1$ bash: /home/panos/.bashrc: Permission denied
bash-4.1$ 

它會阻止我以 Jerry 身份登錄,並且還會更改我的提示符(PS1)。

那麼,我該怎麼做呢?是否可以?

您確實創建了一個使用者,其主目錄已經存在。

adduser:警告:主目錄已經存在。

不將任何文件從 skel 目錄複製到其中。

這不是錯誤,而是警告。通常,不創建主目錄的原因是使用者的主目錄不應該存在。在這裡,它確實是系統管理員的錯誤(例如,錯誤的複制粘貼或錯誤的腳本)。由於您確實打算使用現有的主目錄,請忽略此警告。

[root@LinuxAcademy ~]# su Jerry
bash-4.1$ bash: /home/panos/.bashrc: Permission denied
bash-4.1$ 

您確實以 Jerry 身份登錄。那個 bash 4.1 作為 Jerry 執行。Jerry 沒有讀取 his 的權限~/.bashrc,要麼是因為該文件.bashrc僅對panos(並且可能對於 Jerry 不屬於的組)可讀,要麼是因為目錄/home/panos本身x對 Jerry 不可訪問(權限)。所以 bash 告訴你它不能讀取它的啟動文件,它會顯示它的預設提示。

讓多個使用者使用同一個主目錄是非常不尋常的(不包括主目錄無關緊要的系統帳戶)。您應該如何處理權限取決於您要通過此實現的目標。您可能確實希望至少允許所有這些使用者讀取他們的主目錄。

引用自:https://unix.stackexchange.com/questions/137147