执行后千万不要退出当前窗口!!!

在自己的虚拟机上设置某个站的权限的时候,原来应该是chmod -R 777 ./*  结果少按了个点,执行了chmod -R 777 /*  因为执行时间超出自己的预想范围赶紧按下CTRL+C,可惜晚了,看下了/etc目录下的东西,全部都是777状态,立马开另一个终端尝试登陆,已经登录不上了!

原先执行的窗口还可以操作,于是找资料看看有没有解决方法,要是在机房生产机犯这样低级的错误,总不能重装吧。linux没这么脆弱。

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

cd /etcchmod 644 passwdgroup shadowchmod 400 gshadow

cd ssh

chmod 600moduli ssh_host_dsa_key ssh_host_key ssh_host_rsa_keychmod 644ssh_config ssh_host_dsa_key.pub ssh_host_key.pub ssh_host_rsa_key.pubchmod 640 sshd_config

chmod 700 /var/empty/sshd

然后尝试ssh登录,ok正常,不过没办法切换成root用户

su -

root “su: cannot set groups: "

因为su必须有s权限才能预读取root的相关配置:

chmod u+s `which su`

完成之后就可以进去系统慢慢折腾了。

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

在好的机器上执行

getfacl -R / > ./linux.chmod.bak

然后通过ftp或者rz命令上传到要修复的机子上

执行:

setfacl --restore=/root/linux.chmod.bak

执行这个后需要重启机器才会替换权限(真够麻烦,要是线上机器怎么可以随便重启,实际上这个时候机器是可以正常访问,只是安全方面没保证)

执行前,写个脚本让它在开机后执行,万一替换的脚本有问题,至少还能登录ssh。没错,就是把上面的命令写成脚本放在放在rc.local里面延迟执行。我放在/root/下

cat sshtmp.sh#----------start----------#!/bin/bashsleep 300cd/etcchmod 644 passwdgroup shadowchmod 400gshadow

cdssh

chmod 600moduli ssh_host_dsa_key ssh_host_key ssh_host_rsa_keychmod 644ssh_config ssh_host_dsa_key.pub ssh_host_key.pub ssh_host_rsa_key.pubchmod 640sshd_configchmod 700 /var/empty/sshdchmod u+s `which su`

#-----------------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

777后无效 执行chmod_执行chmod -R 777 / 补救相关推荐

  1. linux系统根目录执行了chmod,根目录执行chmod -R 777 / 的补救方法

    我相信大家都会遇到这样的问题的,执行后千万不要退出当前窗口!!! 在自己的虚拟机上设置某个站的权限的时候,原来应该是chmod -R 777 ./*  结果少按了个点,执行了chmod -R 777 ...

  2. 2021-05-13 根目录执行chmod -R 777 /* 系统无法登录

    执行后千万不要退出当前窗口!!!        在自己的虚拟机上设置某个目录下全部文件的权限的时候,原来应该是chmod -R 777 ./*  结果少按了个点,执行了chmod -R 777 /*  ...

  3. sudo chmod -R 777

    Permission denied,操作的文件没有权限的解决方法: sudo:是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具. -R:是指用到目录里所有子 ...

  4. Linux:chmod -R 777 *含义

    Linux:chmod -R 777 * 首先,chmod命令是linux上用于改变权限的命令,-R 是递归遍历子目录,因为你要操作的文件使用的*通配符. 777,第一个7代表文件所属者的权限,第二个 ...

  5. chmod -R 777使用.

    chmod 修改文件和文件夹读写执行属性 1.把hh.c文件修改为可写可读可执行 chmod 777 hh.c 要修改某目录下所有的文件属性为可写可读可执行 chmod 777 *.* 把文件夹名称与 ...

  6. 误操作“chmod -R 777 / ”怎么办,不慌听我讲解

    前话 一次日常的Linux操作中,用chmod修改文件权限,误把命令敲成chmod -R 777 / ,在我0.5秒的反应时间里,我心跳加速脸红耳赤果断ctrl + c,我回到根目录下,发现还是有两个 ...

  7. chmod -R 777 */755

    r表是读 (Read) .w表示写 (Write) .x表示执行 (eXecute) 1.777 读.写.运行三项权限可以用数字表示,就是r=4,w=2,x=1,777就是rwxrwxrwx,意思是该 ...

  8. Linux:chmod -R 777 * 是什么意思?

    首先,chmod命令是linux上用于改变权限的命令,-R 是递归遍历子目录,因为你要操作的文件使用的*通配符.777,第一个7代表文件所属者的权限,第二个7代表文件所属者所在组的权限,第三个7代表其 ...

  9. linux中 #chmod –R 777 * 是什么意思

    今天看到我同事在Linux系统命令行中输入 sudo chmod 777 -R * 很好奇.? 后来百度了下,其实就是给给它们授权. 例子:~/AndroidStudioProjects/hw-tes ...

  10. 777后无效 执行chmod_厉害了!南航777机队和南航空姐在人民大会堂接受表彰!

    今天上午 在人民大会堂召开的 全国抗击新冠肺炎疫情表彰大会上 南航飞行总队波音777机队和南航乘务长田静 分别荣获"先进集体"和"先进个人"称号! ▲乘务长田静 ...

最新文章

  1. Ubuntu Server系列各项服务的安装和维护 Apache部分
  2. 如何将Windows 10帐户还原为本地帐户(在Windows Store劫持它之后)
  3. 是时候学习生成对抗网络了,李宏毅老师GAN视频教程下载
  4. Scala类型系统的目的——Martin Odersky访谈(三)
  5. n皇后问题c语言_九章算法 | N皇后问题
  6. 如何做一名出色的初级开发?
  7. Flutter进阶第10篇: 本地存储,封装本地存储类,实现最简单的状态管理
  8. Oracle P6培训系列:12进度计算
  9. U盘刻录方式安装CentOS 7
  10. 显示当前系统时间和日期
  11. DIV+CSS学习笔记总结篇
  12. 【精美后台管理系统模版->UI界面欣赏】
  13. 搜狗收录查询 怎么查搜狗是否收录过网页
  14. linux 获取优盘设备序列号变为小写再用MD5加密
  15. Lvs+keepAlived实现负载均衡高可用集群(DR实现)
  16. JS实现抽奖代码(0-999随机数开始暂停抽奖按钮)
  17. 常规放大电路和差分放大电路
  18. break语句的作用
  19. List 列表的用法
  20. 《查看Linux系统版本以及VMWARE快照》

热门文章

  1. 程序员的三行代码情书
  2. 一文看懂ARM Cortex-M处理器 ARM Cortex-M 处理器家族介绍和比较
  3. 浅析Servlet中的四大作用域
  4. virtualbox下安装雪豹10.6系统(AMD下亲测成功)
  5. conda创建管理虚拟环境
  6. html快捷键快速复制粘贴,复制粘贴快捷键是哪几个 最简单的复制粘贴快捷键的使用...
  7. unit在matlab中啥意思,unit8(matlab中uint8函数)
  8. 电驴显示没有连接服务器,电驴未连接到服务器
  9. OPPO,ViVO手机锁屏下弹出来电界面
  10. 截段八面体堆积 matlab,截角八面体可以充满空间