尝试更改 ushare 配置时意外阻止了对 sudoers.d 的访问

尝试更改 ushare 配置时意外阻止了对 sudoers.d 的访问

基本上是试图更改 ushare 配置,并且由于某种原因需要权限,因此我进行了更改sudo -i,并在此过程中做了一些事情,现在我无法访问超级用户来更改任何权限。

它还说/etc/sudoers模式是 0660,但是当我尝试访问它时,在终端中应该是 0440。

我能做些什么?

答案1

您已更改一个或多个 配置文件的权限sudo。由于这些文件可能在某些具有错误权限的系统上导致严重的不安全性,因此sudo除非正确设置其权限,否则 根本无法工作。由于sudo无法工作,您无法使用它来成为root(超级用户)来修复它们。

然而,Ubuntu 桌面系统上实际上使用了两种机制来执行以下操作rootsudoPolicyKitPolicyKit 提供了一个命令,您可以使用它来运行非图形程序root,类似于 sudo:pkexec命令。

如果您的问题是文件/etc/sudoers具有错误的权限,您可以使用以下方法修复:

pkexec chmod 440 /etc/sudoers

然后你应该可以sudo再次使用了。(你可以尝试运行类似这样的无害命令sudo ls来找出答案。)

如果其中有文件/etc/sudoers.d权限错误,您可能必须以类似的方式正确设置它们的权限。或者一次性为所有文件设置权限:

pkexec chmod 440 /etc/sudoers.d/*

(即使其中的文件也需要具有这些限制性权限,因此使用该命令应该没有问题。但是,如果它本身获得了错误的权限,README则您可能不需要它。)/etc/sudoers

也可以看看这个相关问题


您可能想要更改/etc/sudoers文件的权限以/etc/sudoers.d对其进行编辑。您不应该这样做,也不需要这样做。将来你应该使用visudo来编辑这些文件。这样做是安全的,并可防止您现在遇到的问题。

相关内容