chmod -R 777 / 抢救,看这篇就够了

chmod -R 777抢救全过程记录

背景

在两台Ubuntu 20.04的服务器上错误执行了chmod -R 777 /命令,结果非常酸爽,sudo权限失效,而且ssh也没有用了。在经过了10多个小时的踩坑以后最后在不重装系统的情况下解决了问题,以下记录只记录正确的步骤,照做即可。

参考资料:
https://blog.csdn.net/chrisy521/article/details/128796439

步骤1-找到服务器物理机并物理连接,进入root模式

ssh不能用了,就必须物理连接服务器了,如果无法物理连接,本教程无法解决问题。
作为Ubuntu的机器,只需要在开机过程中不断地点按ESC即可进入GRUB界面,很可能因为按得太快错过了那个界面,直接到了GRUB的命令行,不急,可以输入normal回车并马上点按ESC,即可进入以下界面:
在这里插入图片描述
选择Advanced options for Ubuntu,然后选择第一次带recovery mode字样的进入恢复模式
在这里插入图片描述
然后只需要在后续的界面选择root回车
在这里插入图片描述
就可以在界面最下方看到root登录的命令行terminal了

步骤2-手动授权修复基本权限结构

执行以下命令:

chmod -Rf 755 /
chmod -Rf 777 /tmp
chmod -Rf 700 /root
chmod -Rf 555 /sys

# 对于需要给其他用户sudo权限的还需要执行以下命令
chown root:root /usr/bin/sudo 
chmod 4755 /usr/bin/sudo

重启服务器,这时候可以测试一下sudo权限是否正常,如果报错说什么文件夹必须智能被root writable,那就把那些文件夹的权限通过chmod 755都改过来即可。

步骤3-恢复ssh权限

ssh的正常登录要求ssh一些文件不是world writable。这时候解决方案如下:
找到你的一个ssh正常的机子,通过ls -l /etc/ssh检查正确的权限结构,为了防止你没有ssh正常的机器,我提供一下我机器的权限结构,其中那两个myold尾缀的是我之前的备份,大家可以不管:
在这里插入图片描述

也就是说你需执行以下指令:

cd /etc/ssh
chmod 644 moduli ssh_config sshd_config ssh_host_dsa_key.pub ssh_host_ecdsa_key.pub ssh_host_ed25519_key.pub ssh_host_rsa_key.pub
chmod 600 ssh_host_dsa_key ssh_host_ecdsa_key ssh_host_ed25519_key ssh_host_rsa_key 

然后执行reboot命令重启,这时候应该能够ssh,也能够sudo了,服务器恢复正常使用,大功告成。

步骤4-少数情况出现网络不能正常使用了

我有一台服务器突然网络需要重新配置了,发现ping www.baidu.com都配不同。网络配置的方法很简单,按照上面的教程进入恢复模式,csdn查找你对应系统版本的网络IP, DNS的配置方法,我发现不同系统版本是不一样的,之前用Ubuntu 16.04在我Ubuntu 20.04尝试,怎么也不行。现在提供Ubuntu 20.04的配置方案如下:

修改vim /etc/netplan/01-network-manager-all.yaml文件,01-network-manager-all.yaml在不同机器上可能有不同的名字,并修改内容如下:

network:
  version: 2
  renderer: NetworkManager
  ethernets:
    eno2:
      dhcp4: no
      addresses: [192.168.1.100/24]
      optional: true
      gateway4: 192.168.1.1
      nameservers:
        addresses: [223.5.5.5,223.6.6.6]
~                                             

其中eno2是我的网卡的名字,可以通过ifconfig查看,可能是enoxxx其他编号,也可能是ensxxx,根据具体情况而定。addresses那配置的就是[IP/CIDR]CIDR为24对应的子网掩码是255.255.255.0,有的单位可能是255.255.254.0,这个CIDR就是23,具体可以去这个博客查:https://www.forease.net/docs/handbook/appendix-netmask.html。gateway4就是网关,nameservers下面的就是域名服务器,需要问网管要。

这个文件配置好以后执行以下命令

netplan apply # 应用配置
/etc/init.d/network-manager restart # 重启网络服务

大功告成!如果还不行,建议卸载重装openssh,教程可见(https://blog.csdn.net/zj850324/article/details/124977925)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/618090.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LOTO示波器动作编程功能(命令批处理)

动作编程功能是为了方便客户根据自己的应用场景,做到一个按键就连续做多个示波器操作,从而降低了对操作人员的技术要求,做到傻瓜式操作。之前LOTO有个类似的功能,是把示波器的基础设置根据不同的测试场景存成不同的设置文件&#…

【FFmpeg】Filter 过滤器 ① ( FFmpeg 过滤器简介 | 过滤器概念 | 过滤器用法 | 过滤器工作流程 | 过滤器文档 | 过滤器分类 )

文章目录 一、FFmpeg 过滤器 Filter 简介1、FFmpeg 过滤器概念2、FFmpeg 过滤器用法3、FFmpeg 过滤器工作流程4、FFmpeg 过滤器文档 二、FFmpeg 过滤器 分类1、过滤器分类 - 根据处理数据类型分类2、过滤器分类 - 根据编码器位置分类3、过滤器分类 - 根据功能分类 FFmpeg 相关文…

在vue3中,如何优雅的使用echarts之实现大屏项目

前置知识 效果图 使用技术 Vue3 Echarts Gasp Gasp:是一个 JavaScript动画库,它支持快速开发高性能的 Web 动画。在本项目中,主要是用于做轨迹运动 所需安装的插件 npm i echarts npm i countup.js 数字滚动特效 npm i gsap javascript动画库 np…

竞赛课第十周(巴什游戏,尼姆博弈)

目录 目的: 实验内容: 第一题 思路: 【参考代码】 【运行结果】 第二题 输入: 输出: 【参考代码】 【运行结果】 目的: 熟悉并掌握公平组合游戏 (1)巴什游戏、尼姆游戏 (2)图游戏…

【C++】list原理讲解及其实现

目录 一、认识list底层结构 二、list的构造类函数 三、迭代器 四、数据的访问 五、容量相关的函数 六、关于数据的增删查改操作 前言 要模拟实现list,必须要熟悉list的底层结构以及其接口的含义,在上一篇我们仔细讲解了list的常见接口的使用及其含义&…

2024中国(重庆)人工智能展览会8月举办

2024中国(重庆)人工智能展览会8月举办 邀请函 主办单位: 中国航空学会 重庆市南岸区人民政府 招商执行单位: 重庆港华展览有限公司 【报名I59交易会 2351交易会 9466】 展会背景: 2024中国航空科普大会暨第八届全国青少年无人机大赛在…

linux Nginx安装与启动

一、先到官网下载Nginx 官网地址: http://nginx.org/en/download.html 我下载的是nginx-1.20.2 二、下载好的文件上传到服务器,然后解压 1、上传到指定的服务器地址,我这里是公司服务器,目录都是定义好的,自己玩建…

分层存储无法拯救 Kafka

01 引言 Apache Kafka 自诞生之日起,就以其卓越的设计和强大的功能,成为了流处理领域的标杆。它不仅定义了现代流处理架构,更以其独特的分布式日志抽象,为实时数据流的处理和分析提供了前所未有的能力。Kafka 的成功&#xff0…

element ui输入框后面带输入的字符数量

使用el-input的属性&#xff1a; maxlength&#xff1a;最长字符限制&#xff1b; show-word-limit&#xff1a;显示输入字符数量&#xff1b; 例&#xff1a; <el-input v-model"title" placeholder"请输入名称" maxlength"200" show-wor…

阮怀俊谈如何盘活和挖掘乡村文旅资源

近年来&#xff0c;浙江凭借高水平建设新时代美丽乡村&#xff0c;各项工作持续走在全国前列&#xff0c;最近&#xff0c;在国家发展改革委关于恢复和扩大消费措施的通知中也提到&#xff1a; “推广浙江‘千万工程’经验&#xff0c;建设宜居宜业和美乡村。实施文化产业赋能乡…

vue3专栏项目 -- 四、前后端结合(上)

一、前后端分离是什么 前面我们一直在和静态数据打交道&#xff0c;虽然流程可以跑个半通&#xff0c;但是静态数据还是给我们造成了诸多不便&#xff0c;现在我们是时候用上后端了。 现在的应用开发模式&#xff0c;自从SPA出现以后&#xff0c;前端和后端可以平行的进行对应…

智慧法治:AI技术如何赋能法律行业创新

&#x1f9d1; 作者简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟&#xff0c;欢迎关注。提供嵌入式方向…

AI绘画动漫转真人详细教程

从小到大&#xff0c;我们看过的动漫、玩过的游戏有很多很多 但我们会发现里面的角色或者人物都是二次元的 我就会好奇这些动漫人物在现实中会长什么样 而现在&#xff0c;我们通过AI绘画竟然就能还原出来他们现实中的样子 除了动漫角色和游戏人物&#xff0c;古代的画像、经典…

【笔记】从零开始做一个男性人体的流程/躯干篇(超级详细)

躯干整体 大体 1.创建一个正方体&#xff0c;摆好位置 2.实例呀啥的都搞好 3.胸部它是一个前窄后宽的结构 斜方肌 臀部 1.臀部是前宽后窄的结构 2.我们再去侧面调整以下 胸椎向上倾斜&#xff0c;盆骨向下倾斜。脊椎是s形的 3.真实的身体没有这么方正&#xff0c;所以微调…

3kCTF2021 echo klibrary

文章目录 前言echoklibrary 前言 今天状态不好&#xff0c;很多事情都不想干&#xff0c;就做一做简单的题目 echo 内核版本&#xff1a;v5.9.10smap/smep/kaslr 开启modprobe_path 可写 题目给了源码&#xff0c;非常简单就是无限次的任意地址读写&#xff1a; #include …

Lombok注解详解

文章目录 注解详解lombok包下注解汇总- Getter- Setter- ToString- EqualsAndHashCode- Data- Value- NonNull- NoArgsConstructor- AllArgsConstructor- RequiredArgsConstructor- Builder- Synchronized- Cleanup- Singular- Generated- SneakyThrows- val- var experimental…

pwn(安装环境)

从安装虚拟机开始 1.先安装vmware 详细教程&#xff1a; VMware下载安装教程(超详细)-CSDN博客 2.然后下载虚拟机镜像文件 进入下面这个链接下载 Get Kali | Kali LinuxHome of Kali Linux, an Advanced Penetration Testing Linux distribution used for Penetration Te…

Linux安装配置CGAL,OpenCV和Gurobi记录

安装Qt&#xff0c;查看当前的Qt版本&#xff0c;需要至少满足v5.12 qmake -v安装CGAL&#xff0c;The Computational Geometry Algorithms Library (cgal.org) CGAL v5.6.1&#xff1a;https://github.com/CGAL/cgal/releases/download/v5.6.1/CGAL-5.6.1.tar.xz 确保C编译…

5款可用于LLMs的爬虫工具/方案

5款可用于LLMs的爬虫工具/方案 Crawl4AI 功能: 提取语义标记的数据块为JSON格式&#xff0c;提供干净的HTML和Markdown文件。 用途: 适用于RAG&#xff08;检索增强生成&#xff09;、微调以及AI聊天机器人的开发。 特点: 高效数据提取&#xff0c;支持LLM格式&#xff0c;多U…

改变浏览器大小,图片(img)内容居中显示img标签,不是背景图

改变浏览器大小,图片&#xff08;img&#xff09;内容居中显示&#xff0c;img标签&#xff0c;不是背景图 效果直接上图&#xff1a; 上代码&#xff1a; <!DOCTYPE html> <html> <head><title>测试图片居中显示&#xff0c;高度不变只变宽度<…