Ubuntu

創建沒有密碼的使用者

  • March 25, 2022

我正在嘗試創建一個沒有密碼的使用者,如下所示:

sudo adduser \
  --system \
  --shell /bin/bash \
  --gecos ‘User for managing of git version control’ \
  --group \
  --disabled-password \
  --home /home/git \
  git

它創建得很好。但是當我嘗試在 git 使用者下登錄時,我輸入了密碼:

su git
Password:...

當我把它留空時,我得到一個錯誤:

su: Authentication failed

怎麼了?

您已經創建了一個使用“禁用密碼”的使用者,這意味著沒有密碼可以讓您在使用時登錄。這與創建一個任何人都可以在不提供密碼的情況下登錄的使用者不同,後者是通過指定一個空密碼來實現的,而且很少有用。

為了像不正常登錄的“系統”使用者那樣執行命令,你需要通過root賬戶跳轉:

su -c 'su git -c "git init"'

或者

sudo -u git git init

如果您希望某些使用者能夠以使用者身份執行命令git而不讓他們以 root 身份執行命令,請設置 sudo(visudo以 root 身份執行並添加類似 的行%gitters ALL = (git) ALL)。

--disabled-password選項不會設置密碼,這意味著沒有密碼是合法的,但仍然可以登錄(例如使用 SSH RSA 密鑰)。

要創建沒有密碼passwd -d $username的使用者,請在創建使用者後使用,使密碼為空。請注意,並非所有系統都允許密碼為空的使用者登錄。

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