我打算sudo su
在终端上写入,但是出现此错误。
sudo: unknown user: root
sudo: unable to initialize policy plugin
我正在使用在 Microsoft Azure 云中的虚拟机上运行的 Ubuntu 16.04。我无法以 root 身份登录。
答案1
“默认情况下,Azure 中的 Linux 虚拟机上的 root 用户是禁用的。”,请参阅 https://docs.microsoft.com/en-us/azure/virtual-machines/virtual-machines-linux-use-root-privileges
您可能一次只能使用sudo <cmd>
一个命令...如果这不起作用,我认为您必须联系 Microsoft 支持。
答案2
默认情况下,root用户模式是禁用的,因为root/superuser
模式允许做任何事情,即使是恶意的。这也是为了阻止黑客或试图操纵 root 权限的自动脚本。
引用本文在 Microsoft Docs 上:
默认情况下,Azure 中的 Linux 虚拟机上禁用 root 用户。用户可以使用 sudo 命令以提升的权限运行命令。但是,体验可能会因系统的配置方式而异。
SSH 密钥和密码或仅密码 - 虚拟机已配置证书(.CER 文件)或 SSH 密钥以及密码,或者仅配置用户名和密码。在这种情况下,sudo 将在执行命令之前提示输入用户的密码。
仅 SSH 密钥 - 虚拟机已配置证书(.cer、.pem 或 .pub 文件)或 SSH 密钥,但没有密码。在这种情况下,sudo 在执行命令之前不会提示用户输入密码。
你可以拜访这一页了解更多信息:
答案3
另一个建议是使用sudo -i
以 sudo 权限运行用户 shell。否则,依靠 sudo 超时可能是明智之举,这意味着您只需在定义的时间范围内输入一次 sudo 密码。同样值得注意的是,sudo -v
如果您已经处于 sudo 会话中,则应将当前超时期限再延长 15 分钟。