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

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. python二级考试知识点——turtle、random、time、PyInstaller、jieba、wordcloud

    turtle库(必考) 1.from turtle import * #导入turtle库中的所有方法 2.turtle.pensize(size) #画笔的大小 3.turtle.pencolor( ...

  2. Botanical Dimensions:借助第九代智能英特尔® 酷睿™ 处理器实现独特沉浸式体验

    本文介绍位于洛杉矶的互动体验设计工作室 Master of Shapes (MOS) 打造 Botanical Dimensions 时所做出的技术努力.在这种互动式多世界体验中,参与者将穿越丛林,寻 ...

  3. 【AMAD】splinter -- 用于测试web app的python框架

    简介 动机 作用 用法 热度分析 个人评分 简介 Splinter1是一个开源工具,使用Python编写,用于测试web apps.它可以用来对浏览器实现自动化操作,比如访问URLs,和按钮等交互. ...

  4. NOIp2015D1T3 斗地主【暴搜】

    题目传送门 刚开始读到题目的时候,非常懵逼,非常崩溃,写着写着呢,也有点崩溃,细节有点多. 这个做法呢,只能过掉官方数据,洛谷上好像有加强版,只能得$86$分,就没有管了. 大概说一下思路: 暴力搜索 ...

  5. 【Linux开发】linux设备驱动归纳总结(一):内核的相关基础概念

    linux设备驱动归纳总结(一):内核的相关基础概念 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...

  6. SSH代理

    参考: http://www.dkys.org/archives/1111.html SSH的-L与-D代理 SSH有三种代理参数-L,-D,-R.-R代理不是本次重点,有兴趣的读者可以自行查阅man ...

  7. [转帖]ORA-00600: internal error code, arguments: [4193]问题解决

    ORA-00600: internal error code, arguments: [4193]问题解决 https://www.cnblogs.com/linyfeng/p/7496736.htm ...

  8. 小记---------sparkRDD的Transformation 和 Action 及案例 原理解释

    RDD :弹性分布式数据集:是一个容错的.并行的数据结构,可以让用户显式地将数据存储到磁盘或内存中,并控制数据的分区   RDD是Spark的核心数据结构,通过RDD的依赖关系形成Spark的调度顺序 ...

  9. Hive 教程(九)-python with hive

    本文介绍用 python 远程连接 hive,此时需要 hive 启动 hiveserver2 服务 windows 下报如下错误 thrift.transport.TTransport.TTrans ...

  10. Codeforces 1201C. Maximum Median

    传送门 看到中位数考虑先把数排序一下 然后有个显然的贪心,一个数增加后一定不能比下一个数大,不然我们直接增加下一个数显然更优 所以初始时的中位数操作后也是中位数 那么我们只要考虑中间再往后怎么加使得答 ...