不小心 rm -rf /usr/* 作为 root,现在怎么办?

pav*_*imo 2 disaster-recovery rhel5 data-recovery disaster

我的一位同事通过运行误删除的/ usr / *数据:rm -rf /usr/*。现在这是一个大问题。我们在那台机器上有很多很好的数据。结果,大多数命令都不起作用。无论如何我可以恢复机器吗?我并不是真正的数据恢复专家。

请帮我指出一个解决方案/程序。以下是有关该机器的一些信息。如果需要更多信息,请告诉我。

-bash-3.00# uname -a
Linux penguin 2.6.9-5.EL #1 Wed Jan 5 19:22:18 EST 2005 i686 i686 i386 GNU/Linux
-bash-3.00# fdisk -l

Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1          13      104391   83  Linux
/dev/hda2              14        9729    78043770   8e  Linux LVM
-bash-3.00#
Run Code Online (Sandbox Code Playgroud)

Cak*_*mox 7

首先,从 Live CD 或恢复磁盘启动并备份您的数据。您可能还希望包含来自 /etc 的系统配置。

您可以尝试重新安装您拥有的分区,保留您想要保持不变的分区。只要您没有将好的数据保存在任何系统分区中(希望不在 /usr 下),您就应该能够在安装过程中保留这些数据。

如果所有其他方法都失败了,请从头开始安装并从备份中恢复。

考虑更改您同事的访问权限。


Con*_*ngo 5

我的建议:

  1. 谷歌“取消删除 Linux”,你会发现诸如http://www.r-tt.com/data_recovery_linux/ 之类的东西。您可以使用它来取消删除要恢复的任何文档。
  2. 采取措施避免将来发生这种情况。您需要的是一种制作分区副本的方法,例如适用于 Linux 的 Acronis TrueImage。如果您运行适用于 Linux 的 Acronis TrueImage,它会将硬盘驱动器的完整克隆复制到一个文件中(您可以将其安全脱机以确保安全),因此如果将来出现任何问题,您始终可以从裸机恢复。


小智 5

我假设您使用 Redhat 只是因为我正在使用它:

第 1 步 - 由于 /usr 中不应该有任何实际数据存储(man hier),因此您应该能够使用以下命令重新安装所有系统二进制文件:

cd /root
rpm -Va > filename
rpm -qf `cat filename | awk '{print $3}'` | sort | uniq > filename2
yum reinstall `cat filename2`
Run Code Online (Sandbox Code Playgroud)

但是,如果您在 /usr 中确实有一些不是由发行版安装的数据,那么请忘记我刚才所说的一切,因为使用磁盘会减少您恢复已删除数据的机会。

  • +1 理论上是的。尽管如果 rpm 和 yum 及其相关库经历了 /usr 的丢失,那么您可能需要在干净的机器上执行其中的一些操作,然后 rsync 生成的 /usr 目录。 (2认同)