015.Linux系统删根数据恢复
一 场景介绍
节点
|
IP
|
数据所在目录
|
备注
|
node1
|
172.24.8.51
|
/mysqldb
|
模拟故障机
|
node2
|
172.24.8.52
|
——
|
应用数据恢复-集群节点2
|
/dev/sdb1 /mysqldb ext4 defaults 0 0
二 模拟场景
2.1 建立模拟环境
[root@master ~]# mkdir /mysqldb
[root@master ~]# mount /dev/sdb1 /mysqldb
[root@master ~]# mkdir /mysqldb/test
[root@master ~]# mkdir /mysqldb/prod
[root@master ~]# echo 'This is file01!' >>/mysqldb/file01
[root@master ~]# echo 'This is file02!' >>/mysqldb/file02
[root@master ~]# echo 'This is file03' >>/mysqldb/test/file03
[root@master ~]# echo 'This is file04' >>/mysqldb/prod/file04
[root@master ~]# md5sum /mysqldb/file01
[root@master ~]# md5sum /mysqldb/file02
[root@master ~]# md5sum /mysqldb/test/file03
[root@master ~]# md5sum /mysqldb/prod/file04
2.2 执行删除操作
[root@node1 ~]# rm -rf /* #模拟删根
三 应用数据恢复
3.1 卸载应用数据所在盘符
3.2 node2安装相应恢复软件
3.2 查询可恢复数据
[root@backup /]# extundelete /dev/sdb1 --inode 2
3.3 执行恢复
[root@backup ~]# extundelete /dev/sdb1 --restore-all #恢复所有文件
[root@node2 ~]# ll RECOVERED_FILES/
[root@node2 ~]# md5sum RECOVERED_FILES/file01
[root@node2 ~]# md5sum RECOVERED_FILES/file02
[root@node2 ~]# md5sum RECOVERED_FILES/test/file03
[root@node2 ~]# md5sum RECOVERED_FILES/prod/file04
3.4 还原数据
[root@node2 ~]# md5sum RECOVERED_FILES/file01
[root@node2 ~]# md5sum RECOVERED_FILES/file02
[root@node2 ~]# md5sum RECOVERED_FILES/test/file03
[root@node2 ~]# md5sum RECOVERED_FILES/prod/file04
四 系统修复
4.1 进入救援模式
4.2 将相应目录进行备份
[root@node2 tmp]# tar -zcvf /tmp/etc.tar.gz /etc/
[root@node2 tmp]# tar -zcvf /tmp/bin.tar.gz /bin/
[root@node2 tmp]# tar -zcvf /tmp/lib64.tar.gz /lib64/
[root@node2 tmp]# tar -zcvf /tmp/lib.tar.gz /lib/
4.3 node1进入支持网络的救援模式
4.4 查看并激活磁盘分区
# lvchange -a y /dev/VolGroup/LogVol01 #激活lvm分区
# mkdir /delroot #创建用于挂载node1根分区的目录
# mount /dev/VolGroup/LogVol01 /delroot
4.5 恢复相应数据
# scp root@172.24.8.52:/tmp/*.gz /delroot/tmp
# tar -zxvf bin.tar.gz -C /delroot/
# tar -zxvf etc.tar.gz -C /delroot/
# tar -zxvf lib64.tar.gz -C /delroot/
# tar -zxvf lib.tar.gz -C /delroot/
4.6 改变根目录位置
# exit
4.7 修复引导程序
# grub-install /dev/sda
4.8 修复内核
# mkdir /media
# mount /dev/cdrom /media/
# cd /media/Packages/
# rpm -ivh kernel-2.6.32-642.el6.x86_64.rpm --force
4.9 重启并验证
root (hd0,0)
kernel /vmlinuz-2.6.32-642.el6.x86_64 ro root=/dev/VolGroup/LogVol01 selinux=0
initrd /initramfs-2.6.32-642.el6.x86_64.img
4.10 修复网络
# rm -rf /etc/udev/rules.d/70-persistent-* #删除网卡rule
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 #修复node1IP
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=172.24.8.51 #将IP配置为node1正确地址
NETMASK=255.255.255.0
GATEWAY=172.24.8.2
DNS1=223.5.5.5
# vi /etc/sysconfig/network
HOSTNAME=node1 #将主机名修改为node正确主机名
4.11 修复引导grub配置文件
[root@node2 ~]# scp -p /boot/grub/grub.conf root@172.24.8.51:/boot/grub/
五 应用数据恢复至node1
5.1 加载磁盘
5.2 挂载分区
[root@node1 ~]# fdisk -l /dev/sdb #确认加载是否正常
[root@node1 ~]# mount /dev/sdb1 /mysqldb/ #挂载目录
[root@node1 ~]# ll /mysqldb/ #查看数据
5.3 确认验证
[root@node1 ~]# md5sum /mysqldb/file01
[root@node1 ~]# md5sum /mysqldb/file02
[root@node1 ~]# md5sum /mysqldb/test/file03
[root@node1 ~]# md5sum /mysqldb/prod/file04
015.Linux系统删根数据恢复的更多相关文章
- Linux 系统其他重要文件
其他重要目录 /usr /usr/local 通过源码安装,没有特别指定,就在这个文件下用户自编译软件存放地方 /usr/src 源代码程序 + 内核源代码程序存放目录 /var /var/log/m ...
- Linux 系统的目录结构_【all】
Linux系统的目录结构 /:最大根目录,存放系统程序 /etc: 加载配置文件好服务启动命令,系统配置文件 /etc/exports /etc/hosts /bin:binaries 存放命令 /s ...
- 《手把手教你构建自己的 Linux 系统》学习笔记(10)
目录 /etc/fstab 文件的作用是什么? Linux 内核的图形化启动是怎么回事? Linux 系统中的文件名是否以大小写来进行区别? 「GRUB 中无法找到硬盘」怎么解决? 「GRUB 及配置 ...
- Linux系统使用lvm扩展根分区
Linux系统使用lvm扩展根分区 背景:买的云主机虚拟机封装镜像是40G的系统盘,后期适用不规范或者其他需求需要扩展系统盘,而非挂载在一个盘至新建目录. 1.原本目录磁盘等信息: 2.使用vgdis ...
- Linux 系统常用管理命令(精简笔记)
Linux是一套免费使用和自由传播的类Unix操作系统,下面的笔记是我从鸟菜中摘抄出来的重要命令,并进行了一定的排版,摒弃了一些用不到的乱七八糟的命令,目的是在生产环境中能够快速的定位并查询需要命令的 ...
- 探索 Linux 系统的启动过程
引言 之所以想到写这些东西,那是因为我确实想让大家也和我一样,把 Linux 桌面系统打造成真真正正日常使用的工具,而不是安装之后试用几把再删掉.我是真的在日常生活和工作中都使用 Linux,比如在 ...
- Linux /dev目录详解和Linux系统各个目录的作用
Linux /dev目录详解(转http://blog.csdn.net/maopig/article/details/7195048) 在linux下,/dev目录是很重要的,各种设备都在下面.下面 ...
- 【夯实Mysql基础】MySQL在Linux系统下配置文件及日志详解
本文地址 分享提纲: 1. 概述 2. 详解配置文件 3. 详解日志 1.概述 MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下:在Linux下叫my.cnf,该文件位于 ...
- Linux就这个范儿 第16章 谁都可以从头再来--从头开始编译一套Linux系统 nsswitch.conf配置文件
Linux就这个范儿 第16章 谁都可以从头再来--从头开始编译一套Linux系统 nsswitch.conf配置文件 朋友们,今天我对你们说,在此时此刻,我们虽然遭受种种困难和挫折,我仍然有一个梦 ...
随机推荐
- js获取当前日期时间“yyyy-MM-dd HH:MM:SS”
获取当前的日期时间 格式“yyyy-MM-dd HH:MM:SS” 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 function getNowFormatDat ...
- javascript随笔和常见的知识点
1.js中循环中用 return只能停止循环,不能停止到函数的定义部分.所以下面的返回值为1 return 100没有意义,只起到终止循环的目的 function bb() { var sum = 0 ...
- 【CTF REVERSE】ctf02-查找字符串
1.前言 公司大拿给写的一个CTF逆向程序,提升我们组内人员的水平. 基于对话框MFC框架开发,使用EDIT控制特性隐藏Flag,可借助spy4win之类窗体工具找出Flag. 程序加UPX壳,已对壳 ...
- centos7使用haproxy1.7.5实现反向代理负载均衡实战
使用haproxy实现反向代理负载均衡实战环境准备:两台虚拟机 # yum install -y gcc glibc gcc-c++ make screen tree lrzsz node1源码编译安 ...
- 利用navcat为mysql数据库单独的表赋权限及表结构同步
为mysql数据库单独的表赋权限 场景:考勤系统需要拿OA数据库td_oa中的flow_run和flow_run_data表中的数据做考勤计算 考勤系统只需要读取这两张表的数据,所以只需要开通一个单独 ...
- Ex 3_25 图中每个顶点有一个相关价格..._十一次作业
(a)首先对有向无环图进行拓扑排序,再按拓扑排序的逆序依次计算每个顶点的cost值,每个顶点的cost值为自身的price值与相邻顶点间的cost值得最小值 (b)求出图中的每一个强连通分量,并把所有 ...
- K最近邻kNN-学习笔记
# -*- coding: utf-8 -*- """ Created on Thu Jan 24 09:34:32 2019 1. 翼尾花数据 2. 用 KNeighb ...
- Python-浮动 清浮动
# 浮动布局 ## 一.display总结 ```css/* inline *//*1.同行显示, 就相当于纯文本, 当一行显示不下, 如就是一个字显示不下,那么显示不下的那一个字就会自动换行,和纯文 ...
- 20个实用的webApp前端开发技巧
自Iphone和Android这两个牛逼的手机操作系统发布以来,在互联网界从此就多了一个新的名词-WebApp(意为基于WEB形式的应用程序,运行在高端的移动终端设备). 开发者们都知道在高端智能手机 ...
- VIM 报错
syntax error: unexpected end of file if 没配对 在最后加 fi 试试 环境变量用不了 export PATH=/usr/bin:/usr/sbin:/bin:/ ...