sudo:无法统计/ etc / sudoers:没有这样的文件或目录 – 文件存在

我是管理游戏服务器的少数人之一。 该服务器目前正在运行Ubuntu 14.04,它仅在3周前安装。

一切都运行良好,直到几天前,我们遇到了一些问题。 我怀疑有人入侵我们的SSH服务器并设法严重搞砸了一些东西。

当我尝试执行命令sudo我收到以下错误:

sudo: unable to stat /etc/sudoers: No such file or directory

首先想到的是文件被删除了,只需要重新创建,但是ls /etc/表明sudoers文件已经存在。 此外,当使用nano(我的首选编辑器)进行编辑时,很明显该文件完全正确且格式正确。

ls -l还显示sudoers文件具有权限-r--r----对于用户root和group root,从研究中应该完全足以让sudo能够读取文件,以确保暂时给了root用户文件-rwxrwx--- (使用tmux进行会话控制,我们已经以root身份进行了会话),但仍然失败了。

所以文件存在,其中的内容是正确的,它具有适当的权限。 还有什么呢? 我看了一下在askubuntu.com上遇到过类似问题的人,我发现这个解决方案听起来很有希望,是备份sudoers文件,然后使用: apt-get purge sudo apt-get install sudo

然后用旧的sudo文件替换新的sudo文件。 不幸的是,这没有用。 为了排除sudoers文件没有错误的更远,我再次尝试了解决方案,并尝试使用新创建的sudoers文件执行sudo ,并得到了相同的错误。

——–编辑——–

对于任何对所谓的非existant sudoers文件包含的内容感兴趣的人,这里是一个过滤版本(用户名过滤)请求: http : //paste.ubuntu.com/7781967/

好。 我已经解决了我的问题。 就像我想的那样,它不是文件。


直到10分钟前,我才注意到sudo没有工作。 由于我的大多数工作都是在tmux中进行的,因此我从未注意到我的用户帐户。

首次登录时,我会收到以下错误:

-bash: /etc/profile Permission denied

它会让我: I have no name@作为我的帐户。

所以我对这个问题进行了一些研究,发现了比另一个问题更多的结果。 包括一个与我的情况完美匹配的结果,如此处所示 。

问题是我的/ etc /文件夹缺少组的执行权限。 因此执行: chmod g+x /etc在注销并重新登录后修复了问题。


谢谢

感谢您在评论中的帮助,您提供的建议仍然很有价值,并帮助缩小了问题的范围。 最后它看起来要简单得多。