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

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爬虫学习==>第九章:正则表达式基础

    学习目的: 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特点字符.及这些特点字符组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑. 正式步骤 Step1 ...

  2. Unity中的动画系统和Timeline(2) 按钮动画和2D精灵动画

    按钮动画 1 创建按钮后,按钮的Button组件中,Transition我们平时用的时Tint,这次选择Animation 选择Auto Generate Animation,创建一个按钮动画 2 后 ...

  3. PJzhang:shell基础入门的2个疗程-one

    猫宁!!! 在centos7上操作这一切 第1节:什么是shell centos7默认使用shell的bash cat /etc/shells 第2节:linux的启动过程 BIOS(主板,引导介质) ...

  4. 搭建本地parcel仓库

    参考:https://www.cloudera.com/documentation/enterprise/6/6.2/topics/cm_ig_create_local_parcel_repo.htm ...

  5. 利用微信web开发者工具调试企业微信页面

    1.只有企业号的管理员才能调试. 2.勾选企业号的开发者工具(具体位置见下图,这个入口位置总是在变,一般来说,找到”微工作台“就能找到了) 3.下载web开发者工具 https://developer ...

  6. Struts 2访问Servlet API

    在servlet中可以通过servlet API来获取Session,在Struts中如何获取Session呢? 解析:将用户名放入session 两种方案 1. 与Servlet API解耦的访问方 ...

  7. NOIP2017 D2T3 题解

    题面 这种数据范围不是乱搞dfs就是乱搞状压DP 首先应该通过任一方式求出a和b的值: 任意一条抛物线只用两头猪就可以确定,所以我们N^2枚举,并把在这两头猪的抛物线上的猪都存进状态state[i][ ...

  8. HTML5自学

    1.1   标题文本 在HTML5中,文本的结构除了以行和段落出现之外,还可以作为标题存在,通常一篇文档最基本的结构就是由不同级别的标题和正文组成的. 例如1:(中国门户网站) https://www ...

  9. spark教程(二)-shell操作

    spark 支持 shell 操作 shell 主要用于调试,所以简单介绍用法即可 支持多种语言的 shell 包括 scala shell.python shell.R shell.SQL shel ...

  10. 如何用纯 CSS 创作六边形按钮特效

    效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/xjoOeM 可交互视频教 ...