我正在使用 ssh 并尝试将系统从 Ubuntu 10.04 升级到 12.04。连接出现问题,因此我必须再次登录才能完成升级。运行
sudo dpkg --configure -a
这是必需的,但系统似乎不再将我识别为 sudoer。如果我以 sudo 身份运行任何命令,我都会得到
sudo: unknown uid xxxxx: who are you?
(xxxxx 当然是实际的 id)同样运行whoami
会返回
whoami: cannot find name for user ID xxxxx
另外,当我尝试时,ssh
我得到了权限被拒绝(尽管我仍然在不同的会话中登录到机器)。
答案1
这意味着你当前使用的 UID 不存在于 中/etc/passwd
。如果你的系统管理员知道他在做什么,那么这不是一个严重的问题。你可以使用以下命令检查它:
strace -f -F -o whoami whoami
现在你有一个名为的文件whoami
,解析它:
grep etc whoami
[...]
5029 open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
答案2
我已将我的计算机加入到 Active Directory 域,但winbind
计算机崩溃了。
我用 修复了这个问题systemctl restart winbind
。
答案3
当/etc
意外移动/删除时,您也会收到此错误。