linux lsof恢复误删除的文件

早上起来被告知昨晚误删除了3个mysql的文件,只能恢复了

这是删除前的文件信息:

首先lsof查看进程:

这里PID都是一样的,下面进入proc里ls -l查看:

# cd /proc/8784/fd/

这里可以看到ibdata1删除的信息了

接着直接cp复制

#cp 4 /tmp/ibdata1.bak

其余的2个同理恢复,下面是恢复后的文件:

+++++++++++++++++++++++++++++++++++++++++++++

虽然恢复了,但是事情绝对没有这么简单!!!

因为,在innodb的buffer pool中,有许多dirty page(就是内存中的数据已经被修改,但是没有写回文件中),如果直接把文件复制回去,轻则数据丢失,重则ibdata1文件损坏。

我们必须保证所有buffer pool中的数据修改都保存到了硬盘文件上面,然后在恢复文件。

时间: 2024-12-21 19:47:33

linux lsof恢复误删除的文件的相关文章

linux下恢复误删除的文件方法(ext2及ext3)

linux下恢复误删除的文件方法(ext2及ext3) 2009-12-19 15:23:47 分类: LINUX 如果是ext2文件系统的,直接用debugfs是可以恢复出来的,但对于ext3,debugfs就无能为力了,好在我们有了ext3grep这个开源工具(http://code.google.com/p/ext3grep/)! 对于ext2 1.在/data(/dev/sdb)上创建并删除测试文件(作测试目的以plantodelete为例) #vi plantodelete 输入Thi

Linux下恢复误删除的文件

原文地址:http://www.libenfu.com/vim-分区下误删的文件,恢复文件全记录-转 当时我的工作目录是/source/needrecovered. $ pwd /source/needrecovered 原本打算清空其中的一个子文件, $ rm -rf canbedeleted/html 却打成如下命令: $ rm -rf canbedeleted/ * 当时我琢磨着今天怎么删个小文件夹这么慢呢.等我仔细看了下命令,反应过来的时候,已经太迟了,整个工作目录被清空了 . 没辙了,

恢复Linux下被误删除的文件(笔记)

恢复Linux下被误删除的文件 [[email protected] ~]# mount /dev/cdrom /mnt/ 分一个区:sda4  查找:extundelete 分一个区:sda4  [[email protected] ~]# mkdir /tmp/sda4 [[email protected] ~]# mkfs.ext4 /dev/sda4     格式化 [[email protected] Desktop]# echo $? 0 [[email protected] ~]#

【学神-RHEL7】1-4-1-Linux文件管理和恢复误删除的文件

  Linux基本文件管理 本节所讲内容: Linux系统目录结构 相对/绝对路径 创建/复制/删除文件 rm -rf / 意外事故 查看文件内容 xfs文件系统的备份和恢复 extundelete恢复ext4文件系统中误删的文件   Linux系统目录结构 /   通常称为根分区.所有的文件和目录皆由此开始.只有root用户对此目录拥有写权限. ---/etc  配置文件  包含所有应用程序的配置文件,也包含启动.关闭某个特定程序的脚本,例如, /etc/passwd,/etc/init.d/

手机怎么恢复误删除的文件?

随着科技互联网的飞速发展,手机已经成为人们日常生活和工作中必不可少的东西,不仅可以用它来进行通讯,也可以用它来存储文件,比如照片,文档之类的.虽然可以用它来存储文件,但是也避免不了发生误删文件的情况,那么是否有办法将手里里面的误删文件恢复呢? 其实是有办法将手机里面的误删除文件删除的,可以借助专业的文件恢复软件,就可以将文件恢复.这里小编要给大家推荐的是叫EasyRecovery易恢复的这款软件,软件免费获取地址:http://wm.makeding.com/iclk/?zoneid=11873

恢复误删除的文件

1.安装extundelete [[email protected] ~]# tar jxvf extundelete-0.2.4.tar.bz2 [[email protected] ~]# cd extundelete-0.2.4 [[email protected] extundelete-0.2.4]# ./configure Configuring extundelete 0.2.4 configure: error: Can't find ext2fs library 解决办法: [

CentOS系统恢复误删除的文件

CentOS系统中,当误删除了文件后,进行以下几步操来恢复文件. 1.关掉所有的服务 当发现误删除文件时,为了尽可能的恢复数据,先要关掉所有的正在进行的服务,不要再进行数据的写入,要不然恢复的概率那就低了.我们可以直接 # killall 进程名 或者 # kill -9 pid 然后把误删除的文件所在分区,重新挂载成只读的 # mount -o ro /dev/sdb  /data/ 2.安装extundelete工具 # yum install -y e2fsprogs*      //安装

如何恢复Linux下被误删除的文件以及如何防止文件被删除

[卸载被误删除文件所在的分区,或以只读方式mount] 当你发现你误删除了文件后,要做的第一件事情是马上卸载被误删除文件所在分区,或者以只读的方式来挂在该防区.如果误删除的是根分区,最好直接断电,进入单用户模式,以只读的方式挂在分区,然后再进行恢复 mount -o ro,remount /dev/sdb /mnt 如果删除的不是根分区,使用umount来将该分区进行卸载   umount /dev/sdb3 [安装Ext3grep工具] 下载Ext3grep工具,http://code.goo

恢复linux里被误删除的文件

慎用删除命令! 之所以能恢复是因为你那块扇区没被覆盖,这就是为什么copy文件那么慢而删除文件那么快,因为删的只是文件名,inode号还在就好. 得先把下载好的extundelete-0.2.4.tar.bz2软件传到Linux系统里,并解压 tar -jxvf extundelete-0.2.4.tar.bz2 卸载需要恢复的分区 umount /tmp/sdb1 cd 到extundelete-0.2.4目录 执行源码编译 ./configure,一般情况下会报错,所以用rpm安装一个叫e2