我们先看一下用户用户组和密码相关文件:

1
2
3
4
5
6
7
8
9
[root❄centos7 ~]☭ ll /etc/passwd* /etc/shadow* /etc/group* /etc/gshadow*
-rw-r--r--. 1 root root 988 May 28 02:34 /etc/group
-rw-r--r--. 1 root root 975 May 28 02:29 /etc/group-
----------. 1 root root 801 May 28 02:34 /etc/gshadow
----------. 1 root root 790 May 28 02:19 /etc/gshadow-
-rw-r--r--. 1 root root 2247 May 28 02:19 /etc/passwd
-rw-r--r--. 1 root root 2247 May 28 02:19 /etc/passwd-
----------. 1 root root 1257 May 28 02:19 /etc/shadow
----------. 1 root root 1262 May 28 02:19 /etc/shadow-

我们可以看到每一个文件都有一个带-后缀的文件。如果我们不小心破坏了原来的文件,可以用后面的带-文件恢复,基本上能恢复所有的账号和密码。

下面进行破坏

CentOS 7 破坏模拟

1、 在/etc/passwd文件的首行root行加注释#,保存退出:

1
2
#root:x:0:0:root:/root:/bin/bash
...

2、 然后重启服务器,发现进不去系统。

3、 然后我们重启下,然后再按e修改启动方法:

4、 进入到这个界面后,找到linux16那行:

5、 在这行的尾部添加init=/bin/bash,然后按<Ctrl-x>后启动:

6、 然后我们进入bash:

7、 这时候系统是无法写入的,我们要重新以rw的模式remount一下,命令为mount -o rw,remount /

8、 我们可以修复被修改的/etc/passwd文件,记得先给原/etc/passswd做个备份,然后再复制/etc/passwd-文件去覆盖/etc/passwd,(如果有其他文件如/etc/shadow等被破坏,也可以用此方法)

tips:备份是个好习惯,更改重要文件前最好都要先备份下。

9、重启服务器(reboot,init,shutdown等重启命令都无法使用,只能硬重启),正常进入操作系统。

CentOS 6 破坏模拟

1、 在/etc/shadow文件的首行root行加注释#,保存退出:

2、 然后重启服务器,发现可以进入系统,但是输入root密码后,提示不正确(不输入密码直接进也进不去)。

3、 然后我们重启下,在这个界面按任意键进入启动菜单:

4、按a修改启动内核启动参数:

5、进入到这个界面后,在后面输入init=/bin/bash,然后按回车:

6、 然后我们进入bash:

7、 这时候系统是无法写入的,我们要重新以rw的模式remount一下,命令为mount -o rw,remount /(和CentOS 7 一样,就不贴图了)

8、 我们可以修复被修改的/etc/shadow文件,记得先给原/etc/shadow做个备份,然后再复制/etc/shadow-文件去覆盖/etc/shadow,(如果有其他文件如/etc/shadow等被破坏,也可以用此方法)(和CentOS7 一样,就不贴图了)

tips:备份是个好习惯,更改重要文件前最好都要先备份下。

9、重启服务器(reboot,init,shutdown等重启命令都无法使用,只能硬重启),正常进入操作系统。

实践:Linux用户、组和密码相关文件被破坏如何恢复系统的更多相关文章

  1. linux基础命令--userdel 删除用户帐户和相关文件

    描述 userdel命令用于删除用户帐户和相关文件. userdel命令修改系统账户文件,删除所有涉及用户的信息,指定的用户(LOGIN)必须存在. 语法 userdel [options] LOGI ...

  2. Linux用户登录记录日志和相关查看命令汇总

    # 1 utmp.wtmp.btmp文件 Linux用户登录信息放在三个文件中: 1 /var/run/utmp:记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记 ...

  3. Linux用户登录记录日志和相关查看命令汇总(转)

    # 1 utmp.wtmp.btmp文件 Linux用户登录信息放在三个文件中: 1 /var/run/utmp:记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记 ...

  4. (转)Linux用户登录记录日志和相关查看命令汇总

    原文地址:http://www.cnblogs.com/lizhaoxian/p/5981029.html # 1 utmp.wtmp.btmp文件 Linux用户登录信息放在三个文件中: 1 /va ...

  5. linux中用户信息及密码相关知识

    在linux中若修改用户信息.密码,组群信息.密码等.其实是在修改/etc/passwd,/etc/shadow,/etc/group,/etc/groupshadow等文件的内容. 这四个文件的意思 ...

  6. linux初级学习笔记七:linux用户管理,密码和组命令详解!(视频序号:04_1)

    本节学习的命令: 用户管理命令:useradd,userdel,id,finger,usermod,chsh,chfn,passwd,pwck, 组管理命令:groupadd,groupmod,gro ...

  7. linux用户权限、系统信息相关命令(待学)

    用户权限相关命令 目标 用户 和 权限 的基本概念 用户管理 终端命令 组管理 终端命令 修改权限 终端命令 01.用户和权限的基本概念 1.1 基本概念 用户 是Linux系统工作中重要的一环, 用 ...

  8. linux 用户、用户组及相关命令(useradd 、passwd、userdel 、groupadd 、groupdel、usermod 、gpasswd 、 id、su)

    linux是一个多用户系统,用于权限管理(权限最小化); 相关命令: 7 8 9 10 11 12 13 14 15 useradd passwd userdel groupadd groupdel ...

  9. Linux与user和group相关文件分析

    /etc/passwd LOGNAME:PASSWORD::UID:GID:USERINFO:HOME:SHELL 注册名:口令:用户标识号:组标识号:用户名:用户主目录:命令解释程序 ()注册名(l ...

随机推荐

  1. 【AMAD】watchdog -- 用于监控文件系统的事件,并且提供了shell命令行工具

    简介 动机 作用 用法 个人评分 简介 用于监控文件系统的事件的Python库,并且提供了shell命令行工具 动机 有很多情况下,我们希望监控文件的变化,在变化之后作出一些响应. 比如flask,d ...

  2. 云计算共享组件--消息队列rabbitmq(3)

    一.MQ 全称为 Message Queue, 消息队列( MQ ) 是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们. 消息传 ...

  3. 看我如何通过邮箱获取IP定位-复现

    环境准备:一台部署了phpstudy 的vps 脚本内容:get_ip.php 该脚本可以生成一个十分隐蔽的图片,并获取客户端的一些敏感信息. 代码内容如下: <?php //show_sour ...

  4. [c++] 链表各类操作详解

    链表概述 链表是一种常见的重要的数据结构.它是动态地进行存储分配的一种结构.它可以根据需要开辟内存单元.链表有一个“头指针”变量,以head表示,它存放一个地址.该地址指向一个元素.链表中每一个元素称 ...

  5. vim配置及插件安装笔记

    1. 首先打开vim的配置文件vimrc,并加入以下常用的配置: cd ~ mkdir .vim vim .vimrc " 设置当文件被改动时自动载入 set autoread " ...

  6. IIS 404设置

    想给自己做的的网站自定义一个404页面,开始 双击红框提示的错误页图标 双击上图红框提示的所示404行 修改上图红框提示的内容如下:我是直接在根目录放了一个自己做的404.html,实际情况要填写你自 ...

  7. MySQL Explain命令详解--表的读取顺序,数据读取操作的类型等

    表示索引中使用的字节数,可通过该列计算查询中使用的索引的长度(key_len显示的值为索引字段的最大可能长度,并非实际使用长度,即key_len是根据表定义计算而得,不是通过表内检索出的) 不损失精确 ...

  8. TCP/IP 物理层卷二 -- 交换技术

    一.概念 交换技术是指各台主机之间.各通信设备之间或者主机和通信设备之间(简单理解:你的PC和我的PC之间.你的PC和我的路由器.路由器之间)为交换信息所采用的的数据格式和交换装置的方式. 二.交换技 ...

  9. kafka安装使用配置1.1

    官方文档 rz上传到/usr/local/下 解压 tar xzvf 文件 改名 mv 文件 名字 环境变量 vi /etc/profile export KAFKA_HOME=/usr/local/ ...

  10. 前端html+css标签简介(可能就我自己看的懂-。-)

    标签集合 # html 文字标签:修改样式 -<font></font> -属性:size:大小,范围1-7,大于7时默认7 color:颜色,英文单词或者十六进制(editp ...