linux中extundelete恢复已删除的数据文件
发布:smiling 来源: PHP粉丝网 添加日期:2015-04-27 15:48:18 浏览: 评论:0
extundelete就是用来恢复文件了,只要我们删除后的文件没有被覆盖就可以常用使用此工具来恢复了,下面来看个例子.
因为人员离职闹得不愉快,系统工程师离职后,由于公司未及时关闭其vpn,数据库服务器(Linux 6.5 Oracle 11.2.0.1)帐号未及时被修改,最后直接上去rm ORACLE_BASE给干掉,悲剧的是ORADATA目录也在里面,更加悲剧的是所有数据文件都在里面.也就是说数据库彻底被删除,而且没有任何备份.朋友咨询了我,让我给予支持.最后比较幸运,文件没有被覆盖,inode都还在,通过extundelete顺利恢复所有数据文件,控制文件,redo文件(extundelete恢复Linux被删除文件),数据库顺利打开,实现0丢失,算是一次完美的恢复,代码如下:
- [root@DB1 tmp]# tar xvf extundelete-0.2.4.tar
- extundelete-0.2.4/
- extundelete-0.2.4/acinclude.m4
- extundelete-0.2.4/missing
- extundelete-0.2.4/autogen.sh
- extundelete-0.2.4/aclocal.m4
- extundelete-0.2.4/configure
- extundelete-0.2.4/LICENSE
- extundelete-0.2.4/README
- extundelete-0.2.4/install-sh
- extundelete-0.2.4/config.h.in
- extundelete-0.2.4/src/
- extundelete-0.2.4/src/extundelete.cc
- extundelete-0.2.4/src/block.h
- extundelete-0.2.4/src/kernel-jbd.h
- extundelete-0.2.4/src/insertionops.cc
- extundelete-0.2.4/src/block.c
- extundelete-0.2.4/src/cli.cc
- extundelete-0.2.4/src/extundelete-priv.h
- extundelete-0.2.4/src/extundelete.h
- extundelete-0.2.4/src/jfs_compat.h
- extundelete-0.2.4/src/Makefile.in
- extundelete-0.2.4/src/Makefile.am
- extundelete-0.2.4/configure.ac
- extundelete-0.2.4/depcomp
- extundelete-0.2.4/Makefile.in
- extundelete-0.2.4/Makefile.am
- [root@DB1 tmp]# cd extundelete-0.2.4
- [root@DB1 extundelete-0.2.4]# ./configure
- Configuring extundelete 0.2.4
- Writing generated files to disk
- [root@DB1 extundelete-0.2.4]# make && make install
- make -s all-recursive
- Making all in src
- Making install in src
- /usr/bin/install -c extundelete '/usr/local/bin'
- [root@DB1 extundelete-0.2.4]# df -h
- Filesystem Size Used Avail Use% Mounted on
- /dev/sda3 244G 11G 221G 5% /
- tmpfs 16G 72K 16G 1% /dev/shm
- /dev/sda1 190M 62M 119M 35% /boot
- /dev/sdb1 2.0T 71M 1.9T 1% /home
- [root@DB1 extundelete-0.2.4]# umount /dev/sdb1
- umount: /home: device is busy.
- (In some cases useful info about processes that use
- the device is found by lsof(8) or fuser(1))
- [root@DB1 extundelete-0.2.4]# fuser -m -u /home
- /home: 3914c(oracle) 8372c(oracle)
- [root@DB1 extundelete-0.2.4]# kill -9 3914
- [root@DB1 extundelete-0.2.4]# fuser -m -u /home
- /home: 8372c(oracle)
- [root@DB1 extundelete-0.2.4]# kill -9 8372
- [root@DB1 extundelete-0.2.4]# fuser -m -u /home
- [root@DB1 extundelete-0.2.4]# umount /dev/sdb1
- [root@DB1 extundelete-0.2.4]# df -h
- Filesystem Size Used Avail Use% Mounted on
- /dev/sda3 244G 11G 221G 5% /
- tmpfs 16G 72K 16G 1% /dev/shm
- /dev/sda1 190M 62M 119M 35% /boot
- [root@DB1 extundelete-0.2.4]# extundelete /dev/sdb1 --restore-all
- NOTICE: Extended attributes are not restored.
- Loading filesystem metadata ... 16384 groups loaded.
- Loading journal descriptors ... 26542 descriptors loaded.
- Searching for recoverable inodes in directory / ...
- 18896 recoverable inodes found.
- Looking through the directory structure for deleted files ...
- 2 recoverable inodes still lost.
- Unable to restore inode 43778050 (file.43778050): Space has been reallocated.
- [root@DB1 extundelete-0.2.4]# ls
- acinclude.m4 autogen.sh config.h.in config.status configure.ac install-sh Makefile Makefile.in
- aclocal.m4 config.h config.log configure depcomp LICENSE Makefile.am missing
- [root@DB1 extundelete-0.2.4]# cd RECOVERED_FILES/
- [root@DB1 RECOVERED_FILES]# ls
- app file.43778051 oracle oraInventory
- [root@DB1 RECOVERED_FILES]# cd app
- [root@DB1 app]# ls
- admin cfgtoollogs diag oracle oradata orcl ORCL
- [root@DB1 app]# cd oradata //phpfensi.com
- [root@DB1 oradata]# ls
- orcl
- [root@DB1 oradata]# cd orcl
- [root@DB1 orcl]# ls
- control01.ctl redo01.log redo02.log redo03.log sysaux01.dbf system01.dbf undotbs01.dbf users01.dbf
- [root@DB1 orcl]# ls -ltr
- total 2908776
- -rw-r--r--. 1 root root 734011392 Nov 18 02:06 system01.dbf
- -rw-r--r--. 1 root root 1069555712 Nov 18 02:06 sysaux01.dbf
- -rw-r--r--. 1 root root 120594432 Nov 18 02:06 undotbs01.dbf
- -rw-r--r--. 1 root root 887365632 Nov 18 02:06 users01.dbf
- -rw-r--r--. 1 root root 9748480 Nov 18 02:06 control01.ctl
- -rw-r--r--. 1 root root 52429312 Nov 18 02:06 redo01.log
- -rw-r--r--. 1 root root 52429312 Nov 18 02:06 redo02.log
- -rw-r--r--. 1 root root 52429312 Nov 18 02:06 redo03.log
- [root@DB1 orcl]#
再次提醒各位:数据库备份重于一切,防天灾的同时还要防人灾,也希望圈子里面以后不要听到类似故障.
Tags: extundelete linux恢复删除
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)