Sudo
沒有密碼的使用者 - 如何從非 root 帳戶登錄該帳戶
我剛剛開始使用 Scientific Linux (7.0)(儘管我認為這個問題可能與發行版無關……)。核心版本為 3.10.0-123.20.1.el7.x86_64。
回到我的問題。
我切換到
root
帳戶並從那裡test-account
使用命令創建了一個新使用者帳戶adduser test-account
。它沒有提示我輸入密碼,我也沒有使用提供密碼的選項。所以我猜這是一個“無密碼”帳戶。我可以從 root 帳戶登錄到這個帳戶——我想即使測試帳戶有密碼,我也可以不提供密碼。但是,當我嘗試從第三個帳戶登錄此(測試帳戶)時 - 它會提示我輸入密碼。而且只是按下Enter
是行不通的。是否可以從非 root 帳戶登錄到此帳戶。有沒有辦法(不切換到 root 或使用
sudo
)?
預設情況下,在企業 GNU/Linux 及其衍生產品上,該
adduser
命令會創建一個禁用的使用者,直到您明確指定該使用者的密碼。這是 CentOS 6.5 上的範例,它應該與 Scientific Linux 相同。
$ sudo adduser test $ sudo grep test /etc/shadow test:!!:123456:0:99999:7:::
這是因為在
/etc/shadow
文件中,密碼欄位是!!
,如您在範例中所見。一旦您
passwd
為該帳戶執行,它將更改使用者的密碼並允許使用者能夠登錄。所以你應該能夠做的是以下讓一個沒有密碼的使用者,只需創建一個帳戶然後刪除密碼。
$ sudo adduser test $ sudo passwd -d test Removing password for user test. passwd: Success $ su test $ whoami test
現在任何使用者都應該能夠以我的範例
su
中的使用者身份使用和登錄。test
您將不必使用sudo
該帳戶登錄。雖然這是可能的,並且您可以擁有一個沒有密碼的帳戶,但不建議這樣做。如果您只是為使用者設置密碼,則應該允許您登錄。
$ sudo passwd test [sudo] password for <YOURACCOUNT>: Changing password for user test. New password: Retype new password: passwd: all authentication tokens updated successfully.