1. 问题描述

事情起因:
对某个系统进行安全测试时,测试人员发现了任意文件删除漏洞,于是便删除了 /etc/passwd 以及 /etc/passwd- 两个文件。

导致结果:
网页上的系统仍然在正常运行,但是所有用户均无法通过SSH客户端连接,也就无法进行恢复操作。

2. 解决步骤

考虑到搜索这篇文章的你八成也是遇见了类似的问题。那就不说废话,直接上解决步骤:

2.1 如果只删除了 /etc/passwd

方法一:你还连接着服务器,可以执行命令

记住,千万不要退出!不要重启!
恭喜你,你这个情况处理起来比较简单。/etc/passwd- 是 /etc/passwd 的备份文件。那么你只需要将 /etc/passwd- 这个引子文件拷贝给 /etc/passwd 即可。

cp /etc/passwd- /etc/passwd

方法二:你无法登录系统,也无法执行命令

这个情况下,核心就是首先要先登录到系统里,然后按照第一种情况,从备份文件(/etc/passwd- )恢复。这里需要了解一下【单用户模式】。

对linux不太熟悉的小朋友科普一下,linux 分为多种模式:
0:关机
1:单用户模式
2:无网络支持的多用户模式
3:有网络支持的多用户模式
4:保留,未使用
5:有网络支持有X-Window支持的多用户模式
6:重新引导系统,即重启

正常情况, Linux 系统开机或重启后,能自动引导启动到多用户模式,并提供正常的网络服务。如果系统启动异常或需要进行系统维护时,就可以进入单用户模式对系统进行管理了。
特注:单用户模式,没有开启网络服务,不支持远程连接

进入单用户模式方法不尽相同,以下步骤仅做参考。

step1:重启机器。启动时长按shift键,进入grub菜单。

step2:选中高级项,按 e 进入编辑grub的界面

step3:找到Linux 开头的行(有recovery字样的),然后挪到 ro recovery nomodeset 那里,修改改为
rw single init=/bin/bash

step4:按ctrl x 退出,进入单用户模式

step5:按照情况一处理,执行cp /etc/passwd- /etc/passwd, 退出重启

2.2 如果删除了 /etc/passwd ,以及 /etc/passwd-

太惨了……不过还有希望……
可以看一下备份里有没有这些文件,也就是 /var/backups 目录下。

方法三: 在 /var/backups 下有备份文件

step1: 如果你无法执行命令,请先进入参照1进入单用户模式。
step2: 如果你有多个硬盘,而且是单用户模式进来的,别忘了挂载上这些硬盘。
step3: 进入备份目录下,看有没有对应文件。

cd /var/backups
ls

step4: 如果你看到了 passwd.bak 。恭喜你,这个就是备份文件,复制过去即可。

cp passwd.bak /etc/passwd
cp passwd.bak /etc/passwd-

step5: 退出重启。(如果没有备份,就继续往下看吧)

方法四:文件恢复

如果在 /var/backups 下没有找到备份文件,这个情况最为棘手,可以尝试进行下文件恢复试试。

如果你的运维知识不够丰富的话,建议立马停手!不要在进行任何文件的写操作。抓紧找运维老师傅来进行恢复文件。

方法五:无中生有
如果无法进行文件恢复,或者找不到运维老师傅。那找一下有没有一模一样的系统,或者在虚拟机安装一个,直接拷贝过来对应文件!
当然并不是拷贝过来就可以用,因为用户未必一样,所以会有 “水土不服 ” 的问题。改造的话,你得先了解一下,这个文件到底是个什么东西。

这里推荐一篇博客,讲的还挺好的。–> 详解Linux中/etc/passwd文件

如果没有的话,那就自己创建一个吧……反正也就十几行代码,手敲出来就成了。

看完后,你会发现,/etc/passwd 和 /etc/shadow 有着千丝万缕的关系,那么就按照/etc/shadow 来仿写即可。

希望文章可以帮助到你~~

【抢救攻略】/etc/passwd文件误删处理相关推荐

  1. 【抢救攻略】/etc/shadow文件误删处理

    前言 记录一下自己在学习过程中的错误,也希望能帮到有同样困难的人.此Linux版本为2021 1.问题描述 1.1事情起因 用xshell连接Linux时,误将/etc/shadow删除 1.2导致结 ...

  2. 手动创建数据库实例全攻略4:参数文件

    手动创建数据库实例全攻略4:参数文件 一.参数文件说明 1.参数文件作用. 在前期的数据库知识探索实验中,我们经常使用这个参数. http://www.cnblogs.com/alexy/p/crea ...

  3. Shell脚本攻略04-玩转文件描述符及重定向

    概述 文件描述符是与文件输入.输出相关联的整数.它们用来跟踪已打开的文件. 最常见的文件描述符是stdin. stdout和stderr. 我们甚至可以将某个文件描述符的内容重定向到另一个文件描述符中 ...

  4. Python:pmml格式文件的简介、安装、使用方法(利用python将机器学习模型转为Java常用的pmml格式文件)之详细攻略

    Python:pmml格式文件的简介.安装.使用方法(利用python将机器学习模型转为Java常用的pmml格式文件)之详细攻略 目录 pmml格式文件的简介 1.PMML结构 pmml安装 pmm ...

  5. .NET 6 攻略大全(三)

    点击上方蓝字 关注我们 (本文阅读时间:15分钟) .NET 6 继续与大家相约周日啦.本篇文章将介绍:单文件应用.IL 修整.System.Text.Json.源代码构建.库AIP的相关攻略. 单文 ...

  6. exxi6.7如何传文件到win7_Win7文件误删如何恢复?这三种方法请收好

    小白系统 免费的智能客服 点击使用 使用电脑时,由于操作速度太快,总是会有手抖意外删除文件的情况.那么如何恢复Win7意外删除的文件?实际上,有很多恢复方法.我将在这里为您介绍3种常见的解决方案.希望 ...

  7. windows 用户的完美“瘦身”攻略

    第一步就是开启 Administrator 帐户,先取得最高管理权限,方法: 右键桌面计算机--管理,本地用户和组--用户,右键 Administrator--属性,去除"帐户已禁用&quo ...

  8. Windows7瘦身攻略

    第一步就是开启 Administrator 帐户,先取得最高管理权限,方法: 桌面右键计算机–管理,本地用户和组–用户,右键 Administrator–属性,去除"帐户已禁用"前 ...

  9. 机试记不住头文件_计算机考研机试攻略

    目录 写在前面的话 2 关于N诺 4 如何使用本书? 5 第一章 从零开始 8 1.1机试分析 8 1.2 IDE的选择与评测结果 10 1.3 DreamJudge的使用 11 1.4输入输出技巧 ...

最新文章

  1. php析构函数的用法
  2. Cache 工作原理、Cache 一致性,你想知道的都在这里
  3. android 触摸屏 旋转,android-使用OpenGl和触摸屏功能在视觉上纠正旋转
  4. sql数据库实例(c#查询登录界面)
  5. 贪心——跳跃游戏 II(Leetcode 45)
  6. 三、Android开启wifi热点
  7. 【论文笔记】SC16 ScaleMine: Scalable Parallel Frequent Subgraph Mining in a Single Large Graph
  8. Android基于安卓手机个人理财系统
  9. 蹦迪--我的黑白玫瑰~!
  10. C# 小程序 getPhoneNumber(e),后台解析手机号码
  11. JS中的事件委托 / 代理详解
  12. android主题设置
  13. 数学的三大核心领域——几何学范畴
  14. 一年经验工作了三年,拥有三年工作经验,你是哪一种?
  15. 使用AFNetworking
  16. android 启动3d加速,内置显卡 六款支持3D加速安卓手机推荐
  17. java多线程 wait和notify方法
  18. Python将图片转化成文字
  19. 十六进制和BCD码的那些事(终结篇)
  20. 如何让Mofile视频自动播放

热门文章

  1. 电脑玩手游绝地求生:刺激战场和绝地求生:全军出击方法汇总
  2. java web数据库设计_java web的新闻发布系统的数据库设计
  3. c++求一百以内质数
  4. Spring切面编程
  5. 卸载IE7恢复到IE6的办法
  6. 2017 DAMS中国数据资产管理峰会顶级嘉宾阵容抢先看!
  7. 计算机机房吊顶保温,机房吊顶高度
  8. 微博舆情分析系统的设计与实现(python)
  9. 【Linux云计算架构:第二阶段-Linux必会的20多种服务】第5章——搭建DNS服务器实现域名解析
  10. 实现checkbox的多选