Shell

如何從 root 使用者切換到另一個擁有 nologin shell 的使用者?

  • August 21, 2020

我只是在學習linux。以 root 身份工作,我創建了一個名為 testuser 的新使用者。然後我將 testuser 更改為 nologin shell。

現在我想以 testuser 的身份登錄,看看使用 nologin shell 的使用者可以/不能做什麼。

我試過:su testuser 並得到:此帳戶目前不可用。我試過: su - testuser 並得到: su: 警告:無法將目錄更改為 /home/testuser:沒有這樣的文件或目錄 此帳戶目前不可用。

如何從 root 切換到具有 nologin shell 的使用者?

shell的nologin目的是防止使用者登錄。這樣的使用者可能仍然使用您的伺服器服務,如 FTP、IMAP/POP3 和其他服務,但他們將無法登錄,例如使用 sshd 或控制台,句點。

如何從 root 切換到具有 nologin shell 的使用者?

sudo -u USERNAME /bin/bash

可以,但只有 root 可以做到這一點。

Artem 的回答很好,但是如果sudo不可用,也可以使用

su --shell /bin/bash USERNAME

從有關/標誌的su手冊中:-s``--shell

如果目標使用者有一個受限的 shell(即 /etc/passwd 中該使用者條目的 shell 欄位未在 /etc/shells 中列出),那麼**–shell選項或$SHELL環境變數將不會被考慮在內帳戶,除非su**由 root 呼叫。

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