当前位置: 首页 > news >正文

Linux 破坏性修复

1、备份数据

[root@rhel6 ~]# dd if=/dev/sda of=/root/backup/mbr.bak bs=512 count=1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.000181577 s, 2.8 MB/s
[root@rhel6 ~]# cp /etc/fstab /root/backup/
[root@rhel6 ~]# cp /etc/inittab /root/backup/
[root@rhel6 ~]# cp /etc/rc.d/rc.sysinit /root/backup/
[root@rhel6 ~]# cp /etc/rc.d/rc.local /root/backup/

2、破坏性操作

[root@rhel6 ~]# rm -rf /boot/*
[root@rhel6 ~]# rm -f /etc/fstab 
[root@rhel6 ~]# rm -f /etc/inittab 
[root@rhel6 ~]# rm -f /etc/rc.d/rc.sysinit 
[root@rhel6 ~]# rm -f /etc/rc.d/rc.local 
[root@rhel6 ~]# dd if=/dev/zero of=/dev/sda bs=446 count=1
1+0 records in
1+0 records out
446 bytes (446 B) copied, 0.00297539 s, 150 kB/s
[root@rhel6 ~]# 

3、选择修复模式

从光盘启动,选择Rescure installed system

不需要网络引导--->continue--->shell start shell

4、修复fstab

如果是逻辑卷系统,则需要执行lvm vgscan和lvm vgchange -ay 激活vg才能挂载。

重启后,再次进入修复模式,如果看到chroot /mnt/sysimage,则说明/etc/fstab恢复成功。其实就是把原来的根分区挂载起来,然后利用原来的备份文件进行恢复,

如果之前未进行备份,也可以手动编辑fstab文件来恢复。

5、修复内核

挂载光驱后,安装内核。

6、恢复引导程序

 

还需要手动添加grub.conf配置文件

 

恢复init:

两次exit退出图形界面,选择reboot 

重启后系统自动执行selinux relabel,几分钟后自动重启,至此,系统修复完成。

相关文章:

  • String,StringBuffer ,StringBuilder的区别
  • Android CoordinatorLayout(六) 加入下拉功能
  • 谈谈《Dotnet core结合jquery的前后端加密解密密码密文传输的实现》一文中后端解密失败的原因...
  • 数组单调和
  • 人工智能革命之下你会失业还是变得富有?
  • Angular2开发踩坑系列-生产环境编译
  • HTML5新特性
  • Servlet、Filter
  • Linux学习—退出vi编辑模式
  • storm(二) 事务机制
  • 《PHP和MySQL Web 开发》 第12章 MySQL高级管理
  • Filter(过滤器)
  • mac Homebrew 指令积累
  • React-Native 之 GD (七)下拉刷新 及 上拉加载更多
  • 三分钟轻松了解Spring框架基础知识
  • @angular/forms 源码解析之双向绑定
  • 【前端学习】-粗谈选择器
  • 30天自制操作系统-2
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • Druid 在有赞的实践
  • Effective Java 笔记(一)
  • Hibernate最全面试题
  • MobX
  • RxJS: 简单入门
  • v-if和v-for连用出现的问题
  • Vue 2.3、2.4 知识点小结
  • 浅谈Golang中select的用法
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 优化 Vue 项目编译文件大小
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • #Linux(make工具和makefile文件以及makefile语法)
  • (层次遍历)104. 二叉树的最大深度
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (九)信息融合方式简介
  • (三) prometheus + grafana + alertmanager 配置Redis监控
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • (转)C#调用WebService 基础
  • (转)memcache、redis缓存
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET CORE 2.0发布后没有 VIEWS视图页面文件
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .NetCore部署微服务(二)
  • .Net语言中的StringBuilder:入门到精通
  • .net中的Queue和Stack
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • [AHOI2009]中国象棋 DP,递推,组合数
  • [C#]猫叫人醒老鼠跑 C#的委托及事件
  • [c++] 自写 MyString 类
  • [C语言]编译和链接
  • [element-ui] el-dialog 中的内容没有预先加载,因此无法获得内部元素的ref 的解决方案
  • [JS] 常用正则表达式集(一)
  • [Linux](16)网络编程:网络概述,网络基本原理,套接字,UDP,TCP,并发服务器编程,守护(精灵)进程