更多更新
简而言之,我必须使用 Sudoer 帐户执行命令(sudo nano /etc/passwd),我知道该帐户的用户名和密码,但我必须以非 Sudoer 帐户身份登录
试用 #1 su - $USER -s /bin/sh 不起作用!因为 Sudoer 帐户没有 shell 帐户(意外设置为 /bin/false)
我的 Ubuntu 机器只有 2 个用户:1. 管理员(sudoer)2. Mysql(非 sudoer)
意外地将 /etc/passwd 上的管理员用户更改为 /bin/false
现在我无法以管理员身份登录,但仍然可以以普通用户(非 sudo)身份以 mysql 登录
我怎样才能改回 /etc/passwd?
有什么办法吗?
更新
我尝试过 su - $USER -s /bin/sh 并以用户 POSTGRES 身份登录,但是没有用,因为 ADMIN 上应用了 /bin/false,导致我无法进入 shell
所以 sudo 是最后的希望。我想。
有人知道当我们以非 sudo 用户身份登录时如何以 ADMIN 身份执行 sudo 吗?例如,以 USER_POSTGRES 身份登录,然后以管理员身份执行 sudo COMMAND?
答案1
这没有什么意义 - 您可能也有一个“root”用户 - 尽管可能无法以 root 身份登录。
您可以通过重新启动系统来恢复系统 - 并更改/添加启动“lernel”行以包含“init=/bin/bash”,这将为您提供 root 登录名,以便您可以编辑密码文件,或者使用恢复磁盘执行类似操作。(参见这里)