linux使用su命令出错

fiy 其他 101

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    使用su命令可能会出现以下几种常见错误:

    1. Permission denied

    这是因为当前用户没有足够的权限以切换到目标用户。解决方法是使用管理员权限执行su命令,即在su命令前加上sudo,如下所示:

    sudo su username

    其中username是要切换到的目标用户。

    2. Incorrect password

    如果输入的目标用户密码不正确,会导致su命令出错。请确保输入的密码是正确的,并且没有多余的空格或者特殊字符。

    3. Account locked or expired

    如果目标用户的账户被锁定或者过期,就无法通过su命令切换到该用户。可以通过root账户登录来解锁或者重新激活目标用户账户。

    4. PAM configuration error

    另一个可能的原因是PAM(Pluggable Authentication Modules)配置错误。可以尝试重新配置PAM或者检查PAM配置文件的权限。

    5. Other errors

    如果以上方法都无效,还可以尝试使用其他命令替代su命令,比如使用su -或者sudo -i命令,这些命令可以以目标用户的环境变量启动一个新的shell。

    总之,如果在使用su命令时遇到错误,首先需要检查当前用户是否有足够的权限以及输入的密码是否正确。如果问题仍然存在,可以考虑其他替代命令或者检查PAM配置。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,su命令用于切换用户身份,但是在使用su命令时可能会遇到一些错误。下面是几种常见的su命令出错情况及解决方法:

    1. “su: Authentication failure”错误:
    这是因为输入的密码错误导致的身份验证失败。请确保输入的密码是正确的,并且区分大小写。

    2. “su: Sorry”错误:
    这是因为当前用户没有权限切换到目标用户的身份。通常只有管理员用户(例如root用户)才有权限使用su命令切换到其他用户。如果您不是管理员用户,请联系管理员进行切换。

    3. “su: Unknown user”错误:
    这是因为输入的目标用户不存在。请确保输入的目标用户是正确的,并且已经创建了该用户。

    4. “su: PAM authentication failed”错误:
    这是由于PAM(Pluggable Authentication Modules,可插拔身份验证模块)配置错误导致的。您可以检查PAM配置文件(通常位于/etc/pam.d/目录下)中与su相关的配置,确保配置正确。如果不确定如何正确配置,请参考系统文档或向管理员寻求帮助。

    5. “su: must be run from a terminal”错误:
    这是因为使用su命令时没有在终端中执行导致的。请确保您在终端中输入su命令,而不是在图形界面或其他应用程序中执行。

    总之,当使用su命令出现错误时,首先要确保输入的密码、目标用户等信息正确,并且当前用户具有切换到目标用户身份的权限。如果问题仍然存在,可以检查PAM配置以及执行环境是否正确,并寻求管理员的帮助。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    问题描述:
    在Linux系统中,使用su命令切换用户时遇到错误。需要解决su命令使用出错的问题。

    解决方法:

    1. 查看用户是否具有切换权限:
    首先,需要确定当前用户是否具有切换为目标用户的权限。可以通过编辑/etc/sudoers文件来授权用户切换身份。使用visudo命令打开sudoers文件,找到”Allow members of group sudo to execute any command”这一行,并确保当前用户是sudo组的成员。

    2. 检查目标用户存在与否:
    如果已经确保当前用户拥有切换的权限,那么需要检查目标用户是否存在。可以使用以下命令查看系统中所有的用户:
    “`bash
    cut -d: -f1 /etc/passwd
    “`
    如果目标用户不存在,可以使用以下命令创建目标用户:
    “`bash
    sudo useradd -m 目标用户名
    “`
    -m参数用于创建用户的同时创建用户的主目录。

    3. 确保目标用户具有可登录权限:
    如果目标用户存在,还需要确保该用户具有可登录系统的权限。可以通过以下命令来设置目标用户的密码:
    “`bash
    sudo passwd 目标用户名
    “`

    4. 检查目标用户的登录Shell是否正确:
    如果目标用户的密码已经设置,还需要确保目标用户的登录Shell是否正确。可以使用以下命令查看目标用户的登录Shell:
    “`bash
    grep 目标用户名 /etc/passwd
    “`
    确保输出中的Shell信息正确。如果需要修改目标用户的登录Shell,可以使用chsh命令:
    “`bash
    sudo chsh -s /bin/bash 目标用户名
    “`

    5. 重启SSH服务:
    如果以上步骤都没有解决问题,可以尝试重启SSH服务。可以使用以下命令重启SSH服务:
    “`bash
    sudo service ssh restart
    “`
    重启SSH服务后,再次尝试使用su命令切换用户,看是否能正常切换。

    以上是解决su命令使用出错的一般方法,根据具体情况可能需要进行调整。如果以上方法仍然无法解决问题,可以尝试查看系统日志,以便获得更多的错误信息。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部