警告

警告

我不小心用了

sudo chmod 3 /

它赋予根目录执行和写入权限,同时删除读取权限。我该如何恢复,我sudo现在甚至无法使用。

答案1

由于您无法使用sudo,请尝试以下命令(您将获得 root 权限执行命令):

pkexec chmod 755 /

在虚拟机中测试成功:

u@u-VirtualBox:/$ sudo chmod 3 /
[sudo] password for u: 
u@u-VirtualBox:/$ ll
ls: cannot open directory .: Permission denied
u@u-VirtualBox:/$ sudo chmod 755 /
sudo: unable to stat /etc/sudoers: No such file or directory
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
u@u-VirtualBox:/$ pkexec chmod 755 /
==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/bin/chmod' as the super user
Authenticating as: u,,, (u)
Password: 
==== AUTHENTICATION COMPLETE ===
u@u-VirtualBox:/$ ll
total 104
drwxr-xr-x  23 root root  4096 oct.  12 20:22 ./
drwxr-xr-x  23 root root  4096 oct.  12 20:22 ../
[...]
u@u-VirtualBox:/$ 

答案2

首先,在仍处于登录状态时尝试其他建议,因为我的需要重新启动。如果您发现其他尝试均无效,则应重新启动并启动实时 DVD/USB 会话。

挂载根分区并/etc/fstab以 root 身份编辑。您需要运行类似下面的命令:

gksu gedit /media/ubuntu/sda1/etc/fstab

调整路径到您使用的正确挂载点。

在该文件中,找到属于根分区的行,它应类似于以下内容:

UUID=[...] /               ext4    errors=remount-ro 0       1

尝试通过添加适当的参数来强制执行“通用”权限:

UUID=[...] /               ext4    umask=000,errors=remount-ro 0       1

重新启动并尝试再次登录。您应该能够使用以下命令修复权限:

sudo chmod 755 /

警告

修复后,记得恢复所做的更改/etc/fstab,否则任何人都可以访问和修改每个系统文件。

答案3

我也几乎完全按照这个做了。我解决这个问题的方法是,首先重启我的设备,进入高级选项,然后启动恢复模式。这会给你一个可以使用的 root shell。在 root shell 中,你可以使用 chmod 755 /(默认),它会恢复正常。它之所以有效,是因为无论权限如何,root 都可以读取、写入或执行任何内容。

相关内容