解决某研发手残导致的系统宕机问题的处理过程


背景

2022.8.8 公司一台服务器出现了宕机的现象:
所有的人都无法远程, 都提示密码错误.
但是网络还是通的. 2022.8.12 出差前一天去了一趟机房现场
发现使用键鼠登录也提示密码错误
认为很诡异, 一度跟维护同事产生冲突, 认为他们修改密码未告知. 使用rd.break的方式强改密码依旧无法登录.
最终使用一个非root用户执行登录发现可以, 但是想su 到root时提示错误
继而发现 根 目录都被赋予了 777 权限, 导致系统自保护无法登录.

解决过程-密码问题

rd.break的处理:
最开始是使用rd.break的方式去修改密码密码. 处理方式比较简单. 开机进入linux系统前的选择操作系统的界面.
点击e 进行编辑 在linux16开头的一行的末尾输入 rd.break. 并且使用ctrl+x进行启动.
进入系统后输入 mount -o remount,rw /sysroot/
然后执行
chroot /sysroot/
执行命令就可以修改密码
password root 如果要是开启了selinux 还需要执行如下命令
touch /.autorelabel

解决过程--无法登录的问题

上一步仅是记录. 其实改了密码还是不可以登录.
发现文件权限有问题后, 想到一个比较简单的解决办法. 跟改密码的方法一样.
只不过在passwd root 这一步修改为
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 700 /var/empty/sshd 注意不同目录需要的权限不一样, 比如 密码等信息 可能必须用户有读权限, 但是非属主必须没有写权限

解决过程--解决文件权限问题

经过如上操作,重启后用户可以登录了. 不再提示密码错误
但是因为仅仅修改了几个文件权限, 比如像是su sudo等命令权限其实还是无法使用的. 这里想到很早之前信息王萌老师曾经在我不小心干翻 一个oracle RAC节点时提供的setfacl的解决思路.
当时为2016年一次POC测试. 王老师搭建了一个RAC环境 然后我很荣幸的 chmod 777 / software -R 了下.
直接宕机.
具体思路为:
找一台比较干净的机器, 需要注意尽量文件比较少,进程也比较少的机器,不然acl的列表可能会非常庞大.
mkdir /acl
getfacl / -R > /acl/dm.acl
这个命令可以递归的将当前系统的文件目录权限全部获取到.
然后将文件复制到 被开发搞崩的机器上面
setfacl --restore=/acl/dm.acl 就可以恢复.

结论

修改好后重启一下服务器.
验证可以登录
用命令打开达梦数据库 cd /opt/dmdbms/bin && nohup ./dmserver /opt/dmdbms/data/DAMENG/dm.ini & 发现达梦数据库也正常了.
问题解决.

根目录被赋予777 -R权限后的处理过程的更多相关文章

  1. linux CentOS 权限问题修复(chmod 777 -R 或者chmod 755 -R问题修复)

    我个人曾经有一次经历: 就是在修改文件夹权限的时候,本来该执行: #chmod 777 -R ./ 结果我漏掉了那个".";执行的命令是chmod 777 -R /. 这个命令一定 ...

  2. ubuntu 下修改文件访问权限chmod 777 -R *血的教训!没事别乱开权限!用谁开谁的就行。。。最后不要用这个命令,文件操作全部改用终端

    本文转自: 个人建议 Ubuntu下修改目录权限命令如下:chmod 600 name (只有所有者有读和写的权限)chmod 644 name (所有者有读和写的权限,组用户只有读的权限)chmod ...

  3. 看完这篇 Linux 权限后,通透了!

    我们在使用 Linux 的过程中,或多或少都会遇到一些关于使用者和群组的问题,比如最常见的你想要在某个路径下执行某个指令,会经常出现这个错误提示 . permission denied 反正我大概率见 ...

  4. 取得root权限后怎么删除程序

    不知道这个算什么教程,随便一个分类吧,管理员不要扣我分啊,我也是为大家服务嘛,不对的话可以帮我处理下) 最近也学习了下,把我的X8(国行2.1版)给root了,怎么root,论坛里有很多帖子,这里就不 ...

  5. Windows安装MongoDB 4.0并赋予用户访问权限

    第一部分 Windows安装MongoDB-4.0 第一步:下载MongoDB:https://www.mongodb.com/download-center?jmp=nav#community 我目 ...

  6. Docker 记一次容器内部修改宿主机挂载目录用户权限后宿主机目录变化

    一.需求: 因公司需求,需制作mysql5.7.22 docker基础镜像,每个项目以此镜像启动一个数据库容器,并且每个项目挂载一个宿主机目录到镜像中数据存储下面用于数据持久化保存以便后期迁移至阿里云 ...

  7. linux利用用户组给用户赋予不同的权限

    在Linux中wheel组就类似于一个管理员的组.通常在LUNIX下,即使我们有系统管理员root的权限,也不推荐用root用户登录.一般情况下用普通用户登录就可以了,在需要root权限执行一些操作时 ...

  8. ESXI | ESXI6.7如何在网页端添加用户并且赋予不同的权限

    一.首先添加一个用户 管理---用户---安全和用户 添加的新用户会显示在下面 二.给添加上的用户赋予对应权限(我这里演示赋予的是只读权限) 主机---操作---权限 三.测试登录 当用只赋予了只读权 ...

  9. jenkins 设置权限后管理员登陆提示:Access Denied admin没有Overall/Read权限

    jenkins 设置权限后,管理员登陆提示:Access Denied  admin没有Overall/Read权限 处理办法: window下编辑 xml 配置文件: %userprofile%\. ...

  10. 升级R版本后,更新Package

    升级R版本后,若重新安装所有的package将非常麻烦,可以尝试运行一下程序: 1)在旧版本中的R中运行 #--run in the old version of R setwd("C:/T ...

随机推荐

  1. 震惊!火爆全网的ChatGPT背后使用的数据库居然是……

    摘要:ChatGPT承认了自己背后使用的数据库是Cassandra. OpenAI最近发布的AI驱动的智能聊天机器人ChatGPT在互联网上掀起了一阵风暴,热衷于尝试这一新AI成果的网民不在少数.Ch ...

  2. 干了三年的Java,你竟然还不会MySQL性能优化

    摘要:MySQL性能优化就算通过合理安排资源,调整系统参数使MySQL运行更快,更节省资源.MySQL性能优化包括查询速度优化,更新速度优化,MySQL服务器优化等等. 前言 MySQL性能优化就算通 ...

  3. 云小课|MRS基础操作之配置DataNode容量均衡

    阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:当HDFS集群出现 ...

  4. 华为云举办AI经典论文复现活动,打造领先AI开发者学习社区

    摘要:百余篇经典论文算法上线华为云AI Gallery,学AI就用ModelArts 2020年8月28日,华为云AI院长峰会在杭州千岛湖举行,来自中国科学院.中国工程院的多位院士,以及清华大学.北京 ...

  5. 2023年iOS App Store上架流程详解(上)

    ​ 很多开发者在开发完iOS APP.进行内测后,下一步就面临上架App Store,不过也有很多同学对APP上架App Store的流程不太了解,下面我们来说一下iOS APP上架App Store ...

  6. PPT MBE风格的插画

    两种或多种不同的图形,通过合并形状等一些操作叫布尔运算 渐变模式 线性渐变:几个不同的颜色[垂直] 射线渐变:圆形弧度的渐变 矩形渐变:矩形 路径渐变:中心形状和外面形状保持一致 渐变方向 射线渐变方 ...

  7. 注册中心/配置管理 —— SpringCloud Alibaba Nacos

    Nacos 简介 Nacos 是一个易于使用的动态服务发现.配置和服务管理平台,用于构建云原生的应用程序 Nacos 的关键特性包括以下几项: 服务发现和服务健康监测:服务提供者使用原生 SDK.Op ...

  8. 【Vue】表单数据双向绑定 vue生命周期 fetch和axios发送请求 Vue全局组件

    目录 昨日回顾 表单数据双向绑定(重要) checkbox单选 --- 布尔值 checkbox多选 --- 数组 radio单选 --- 字符串 给后端发送数据 购物车案例 全选按钮 商品添加删除 ...

  9. 什么?你居然没有鸭鸭邮箱?@duck.com邮箱注册与使用

    @duck.com 是由专注于隐私的搜索引擎DuckDuckGo提供的面向所有人的匿名邮箱. 注册者可以设置一个自定义前缀,比如 one@duck.com,接着设置接收邮箱(如pete@gmail.c ...

  10. Codeforces Round #620 (Div. 2) (A~D)

    比赛链接:Here A题挺水的就不写了 1304B - Longest Palindrome 题意: 输入 \(m\) 个长度为 \(n\) 的字符串,问这些字符串能组成的最长回文串有多长. 思路: ...