无有效根

eld*_*222 6 command-line root login

我想以用户身份登录,但是当我输入login usrusr只是用户名的占位符)时,系统返回:

login: Cannot possibly work without effective root. 
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?

Eli*_*gan 7

您可以login通过运行命令来使命令成功root(如错误消息所示)。

您可以使用以下命令以 root 身份运行:login usernamesudo

sudo login username
Run Code Online (Sandbox Code Playgroud)

除非您最近在已经使用的sudoshell 中运行过命令,否则系统首先会提示您以管理员身份输入密码,管理员能够像使用 一样运行命令。rootsudo

然后login命令将运行,它会提示输入 的username密码,如果密码输入成功,您将获得登录名username

但是,您可能不需要真正的登录,因为username

  • 要启动登录 shell username,请运行:

    sudo -i -u username
    Run Code Online (Sandbox Code Playgroud)

    除了初始sudo身份验证(当您输入您的密码,而不是 username的密码时)之外,这不需要任何身份验证。只有管​​理员可以执行此操作。

  • 要以 启动登录 shell username,以便系统提示您输入 的username密码(而不是提示您输入您自己的密码),请运行:

    su - username
    Run Code Online (Sandbox Code Playgroud)

    任何用户(除了来宾)都可以执行此操作,前提是他们知道username密码。

有关运行命令的详细信息root,请参阅社区文档