我不小心跑了
sudo chmod 755 -R /
Run Code Online (Sandbox Code Playgroud)
代替
sudo chmod 755 -R ./
Run Code Online (Sandbox Code Playgroud)
几秒钟后我停止了它,但是现在出现了一些问题,例如
sudo: must be setuid root
Run Code Online (Sandbox Code Playgroud)
如何恢复权限?
我愚蠢地跑了sudo chown -R carlos:carlos /,卡洛斯是我的用户。这将所有文件更改为 Carlos,我无法再次启动(因为根文件现在归 #1000 所有)并且我无法在 live cd 中获得 sudo 访问权限(因为 /usr 的所有者已更改为我的用户)。谁能帮我?仅供参考,我已经安装了我的硬盘。
在尝试调试邮件服务器时,我输入了:
chmod -R 777 /
Run Code Online (Sandbox Code Playgroud)
代替:
chmod -R 777 .
Run Code Online (Sandbox Code Playgroud)
锦上添花,由于我忘记了我已经更改了用于登录以修复某些内容的脚本,因此我以 root 身份执行了所有这些操作。我没有大部分系统的备份(我知道这是一个糟糕的选择)。
与问题“从 chmod -R -777 / 恢复”和“在 'chmod -R 777 /' 之后做什么?”不同。我仍然以 root 身份登录,并没有更改整个系统,所以我确实对系统有一些控制权。我还在一秒钟内 ^C d 退出命令以最大程度地减少损坏。从那以后,我从物理上断开了服务器与互联网的连接。
我相信脚本可以修复它,如果它根据包管理器的数据恢复文件系统的权限,但我不知道我将如何去做。如果这是不可能的,我将如何保存服务器中的数据以重新安装操作系统?
我知道丢失文件的潜在风险,但尽管有这些风险,我还是希望恢复重新安装。
这是当前的输出ls -la /:
drwxrwxrwx 22 root root 4096 Sep 7 2016 .
drwxrwxrwx 22 root root 4096 Sep 7 2016 ..
drwxr-xr-x 2 root root 4096 May 18 07:55 bin
drwxr-xr-x 3 root root 4096 Sep 21 07:53 boot
drwxr-xr-x 19 root root 3180 Sep 11 20:54 …Run Code Online (Sandbox Code Playgroud) 我错误地对/etc. 现在它给了我以下错误消息:
bash: /etc/bash.bashrc: Permission denied
I have no name!@chandan-Inspiron-5520:~$ sudo /etc/init.d/apache2 restart
sudo: unable to stat /etc/sudoers: Permission denied
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin
Run Code Online (Sandbox Code Playgroud) 我做到了...我想每个人都做过,但这是我的第一次。我执行sudo chown -R /usr/bin和我才意识到我的错误,但为时已晚......现在我无法访问sudo的,因为我收到以下错误:sudo: must be setuid root。我真的很感激,如果我能避免Ubuntu的完全重新安装,因为这将需要太多的工作:(
这是我尝试过但没有成功的命令(在恢复模式下):
chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo
Run Code Online (Sandbox Code Playgroud)
我也尝试了chmod 0440 /etc/sudoers所有没有成功。关于我可以尝试修复它的任何想法?
注意:很抱歉创建另一个线程,但由于我知道我执行的确切命令来炸毁它,我认为这可能会有所作为 :)
我尝试了一切,但没有任何效果。
sudo不起作用,因为它说:
/etc/sudoers is world writable
Run Code Online (Sandbox Code Playgroud)
即使我输入命令也无法以 root 用户身份登录sudo -i
chmod: changing permissions of 'etc/sudoers': Operation not permitted
su: Authentication failure
Run Code Online (Sandbox Code Playgroud)
在发生此错误之前,我尝试更改文件夹的权限/etc以允许我在文件夹内创建新文件夹/etc,然后第二天打开ssh后,出现此错误。
以下命令是我记得允许我创建文件夹的唯一命令:
sudo chmod -R 777 /etc chmod a+w test mkdir /etc/backup
Run Code Online (Sandbox Code Playgroud)
我是 Linux 命令新手,所以我只是搜索它们并在 ssh 上尝试一下,然后就发生了这个错误。
谁能帮我?提前致谢。