linux系统误操作执行:chmod -R 777 / 之后 修复方法

不小心误操作:chmod -R 777 !!!!!完了?修改了linux系统的所有文件权限,仅供参考!

linux系统无操作执行:chmod -R 777 之后 修复方法:

1)执行完后千万不要退出当前登录窗口!

 ssh登录不上,应该跟passwd、group、shadow、ssh这几个文件扯上关系而已,开了另一台linux查看权限,并在错误的机器上修改成对应的权限

     cd /etc
     chmod 644 passwd group shadow 
     chmod 400 gshadow 
     cd ssh
     chmod  600  moduli  ssh_host_dsa_key ssh_host_key ssh_host_rsa_key 
     chmod  644 ssh_config ssh_host_dsa_key.pub ssh_host_key.pub ssh_host_rsa_key.pub
     chmod  640 sshd_config
     

      service sshd restart 重启sshd服务

      测试重新连接ssh看是否可以连接成功 ,直到连接成功为止

2)

     找一台linux系统(尽量越干净越好),把系统的权限导出,然后再导入到本机。
     在好的机器上执行

     cd  /   
     getfacl -R / > linux.chmod.txt
     然后通过ftp或者rz命令上传到要修复的机子上
     执行:

     cd /
     setfacl --restore=linux.chmod.txt

     

                       直接查看:权限是否正常!不正常再次执行一次,再次检查是否正常!
     如果不在 / 目录下执行,结果不生效,估计需要reboot吧! 所有建议在根 / 目录下执行导出和导入操作


     如果不正常,可以再次尝试reboot,reboot前先做以下处理:

                         mkdir -p /root/sh

        cd /root/sh/
     vi sshtmp.sh
     #----------start----------
     sleep 300
     cd /etc
     chmod 644 passwd group shadow 
     chmod 400 gshadow 
     cd ssh
     chmod  600  moduli  ssh_host_dsa_key ssh_host_key ssh_host_rsa_key 
     chmod  644 ssh_config ssh_host_dsa_key.pub ssh_host_key.pub ssh_host_rsa_key.pub
     chmod  640 sshd_config
     chmod u+s `which su`

       chmod 755 `which passwd`

      chmod u+s `which passwd`

                         service sshd restart 
     #-----------------end----------
     放到开机启动
     echo '/root/sh/sshtmp.sh &'  >>/etc/rc.local
     然后reboot 吧。
     重启后如果能正常登录系统,可以先把sshtmp.sh 的进程kill掉,并去掉/etc/rc.local里面脚本。然后查看权限有没有正常。


本文参考资料:http://blog.sina.com.cn/s/blog_5937eedc0101h619.html


### 回答1: 这个错误提示是因为在使用chmod命令时,缺少了必要的操作数。在使用chmod命令时,需要指定要修改权限的文件或目录以及要修改的权限值。例如,要将文件file.txt的权限设置为777,可以使用以下命令: chmod 777 file.txt 如果缺少了文件或目录名,就会出现“缺少操作数”的错误提示。因此,在使用chmod命令时,一定要确保指定了正确的文件或目录名,并且指定了要修改的权限值。 ### 回答2: chmodLinux系统中的一个命令,用于改变文件或目录的权限。但是有时候我们在使用chmod命令时会遇到“缺少操作数”这个错误提示。那么这个错误是怎么产生的呢? chmod命令的正确用法是“chmod 权限 文件名”,其中权限可以使用数字(例如777)或符号(例如u+rwx)来表示,文件名包含要改变权限的文件或目录。当我们在执行chmod命令时,如果没有给出正确的操作数,就会出现“缺少操作数”的错误提示。 具体来说,如果只给出了权限而没有指定文件名,或者在使用符号表示权限时未指定要更改权限的用户、组或其他对象,就会出现该错误。还有一种可能性是,在指定文件名时使用了不正确的路径,导致系统无法找到改变权限的目标文件。 为了避免出现“缺少操作数”的错误,我们需要确保在执行chmod命令时,正确地标识要更改权限的对象和权限级别,并且提供正确的文件路径。如果仍然出现该错误,可以通过检查命令中的参数是否正确、目标文件是否存在、是否存在权限冲突等方面进行排查。只要找到问题所在并进行正确的操作,这个错误就能够很快地解决。 ### 回答3: 当我们在Linux系统中使用chmod命令时,会遇到chmod后缺少操作数的错误。这个错误的原因是chmod命令的语法格式中必须指定操作对象,即需要进行权限修改的文件或目录。仅仅输入chmod命令而没有指定操作对象时,就会导致系统无法确定需要修改权限的文件或目录,出现“缺少操作数”的错误。 如果要使用chmod命令进行权限修改,就必须正确指定操作对象。在命令格式中,操作对象可以使用相对路径或绝对路径来指定文件或目录。例如,要修改当前目录下的文件test.txt的权限,可以使用如下命令: chmod 644 ./test.txt 这个命令会将test.txt文件的权限设置为-rw-r--r--,即只有所有者拥有读写权限,其他用户只有读取权限。 如果想修改一个目录及其子目录下所有文件的权限,可以使用递归操作来处理。例如,要将当前目录下所有文件的权限都设置为-rwxr-xr-x,可以使用如下命令: chmod -R 755 . 这个命令中的-R参数表示对当前目录及其子目录下的所有文件和目录进行递归操作,而755表示设置文件权限为-rwxr-xr-x。 总之,使用chmod命令进行权限修改时,一定要注意指定文件或目录作为操作对象,避免出现chmod后缺少操作数的错误。同时,需熟悉chmod命令的语法格式,并理解权限数字的含义,以便正确设置文件和目录的权限。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值