最近我不得不更改文件夹的文件夹权限/usr
。现在整个系统sudo
都无法正常工作。如果我尝试使用此命令更新我的系统:
sudo apt-get update
我收到以下消息:
sudo: /usr/lib/sudo/sudoers.so must be only be writable by owner
sudo: fatal error, unable to load plugins
因此,我尝试通过以下命令以 root 身份打开 Nautilus 来更改文件夹权限
gksudo nautilus
但什么都没发生。Nautilus 没有打开。这是一个紧急情况,因为整个都sudo
无法正常工作。当我尝试从 Google 搜索解决方案时,许多人建议重新安装。我不喜欢重新安装。那么还有其他解决方案吗?
答案1
Ubuntu 中实际上设置了两种用于执行管理任务的机制。sudo
就是其中之一,它和它的图形前端(如gksu
和gksudo
) 将无法工作,直到您解决权限问题为止。
另一种机制是PolicyKit。根据您对文件权限所做的具体操作,您可能仍然可以使用 PolicyKit 以 身份运行命令来进行恢复root
。
这pkexec
命令将以 的形式运行任何(非图形)命令root
(前提是调用它的用户是系统管理员)。也pkexec
能够以 的形式运行图形命令(如nautilus
)root
,但这并非易事,因为您必须为它们设置配置文件,描述它们应该如何运行以及应该允许它们做什么。 因此,最好使用命令行来解决这个问题……至少要让它sudo
再次起作用。 (然后您可以运行gksu nautilus
以获取root
文件浏览器,如果您更喜欢使用它来递归编辑文件权限。)
我不知道您对权限做了什么,所以我很难给您一个特定的pkexec
命令来运行,以解决问题。但您可以纠正sudo
当前投诉的具体问题。它说:
sudo: /usr/lib/sudo/sudoers.so must be only be writable by owner
因此删除group
并写入该文件的other
权限(但不修改写入权限):owner
pkexec chmod go-w /usr/lib/sudo/sudoers.so
然后您可以看看是否sudo
有效(通过运行一些无害的命令,例如sudo ls
)。
如果您需要使用 命令行对文件权限执行其他操作chmod
,请参阅man chmod
。
(顺便一提,这是另一个相关的情况,了解一下会很有帮助pkexec
。
pkexec
如果您在工作中遇到困难,请随时在此处发表评论,我会尽力提供进一步的帮助。但是您应该知道,即使此方法不起作用,您也不必重新安装 Ubuntu。
相反,您可以从 Ubuntu 实时 CD/DVD 或实时 USB 系统解决问题,因为实时系统将运行 -sudo
将在其上运行 - 并且您可以挂载您的 Ubuntu 分区并以此方式更改权限。
答案2
我将尝试启动到恢复模式并将权限恢复到原来的状态。
重新启动 - 从菜单中选择第二项以进入恢复模式。
最近我不得不更改 /usr 文件夹的文件夹权限
什么要求您更改整个 /usr 文件夹的权限?
答案3
安装用户和组使用这
去管理群组
并将你添加到sudo
群组