温馨提示×

CentOS删除后如何恢复

小樊
33
2026-08-04 07:08:53
栏目: 智能运维

CentOS 被“删除”通常分几种情况,不同情况恢复方法差别很大。建议你先对照下面几种场景,看看自己属于哪一种,再按对应方案操作。


一、先判断“删除”是哪种情况

1️⃣ 误删文件 / 目录(系统还能进)

最常见

  • 删除了某个文件、配置文件、目录
  • 系统还能正常启动

✅ 可以恢复(成功率较高)


2️⃣ 误删系统关键目录(如 /bin、/lib、/usr)

  • 系统还能启动(或卡在启动界面)
  • 或进入 emergency mode

✅ 有恢复可能,但较复杂


3️⃣ 误删 CentOS 分区 / 重装系统

  • 磁盘被格式化
  • 分区表被修改

⚠️ 恢复难度大,成功率取决于是否写入新数据


4️⃣ 误删 GRUB / 无法引导

  • BIOS 能进
  • 启动时提示:grub rescue>no bootable device

✅ 通常可修复


二、不同情况的恢复方案


✅ 情况一:误删普通文件 / 配置文件

方法 1:从备份恢复(最推荐)

cp /backup/path/file /original/path/

方法 2:使用 extundelete(ext4 文件系统)

⚠️ 删除后 不要再写入磁盘

yum install e2fsprogs -y
extundelete /dev/sda1 --restore-file /path/to/file

恢复文件在:

RECOVERED_FILES/

方法 3:使用 testdisk(通用)

yum install testdisk -y
testdisk

适合:

  • 误删文件
  • 误删分区

✅ 情况二:删了系统目录(/bin、/lib 等)

方案 1:进入 Rescue(救援模式)

  1. 使用 CentOS 安装 ISO 启动
  2. 选择:
    Troubleshooting → Rescue a CentOS system
    
  3. 挂载原系统:
    chroot /mnt/sysimage
    

重新安装被删的包

rpm -qa | grep bash
yum reinstall bash

或批量修复:

yum groupinstall "Core"

✅ 情况三:误删 GRUB(无法启动)

修复 GRUB(BIOS)

chroot /mnt/sysimage
grub2-install /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg

UEFI

grub2-install --target=x86_64-efi --efi-directory=/boot/efi

✅ 情况四:分区 / 系统被格式化

使用 testdisk 尝试恢复分区

testdisk

使用 photorec 恢复文件(无目录结构)

photorec

⚠️ 注意:

  • 不要再往磁盘写数据
  • 恢复文件最好放到 另一块磁盘

三、CentOS 已 EOL(重要提醒)

⚠️ CentOS 8 已停止维护,CentOS 7 也即将 EOL

如果系统已损坏,强烈建议:

✅ 重装系统
✅ 迁移到:

  • Rocky Linux
  • AlmaLinux
  • CentOS Stream

四、快速判断该怎么做

情况 建议
能进系统 用 extundelete / yum reinstall
进不了系统 用 Rescue 模式
分区被删 testdisk
系统已废 重装 + 数据恢复

五、我可以更精确帮你

你可以直接告诉我:

  1. CentOS 版本(7 / 8 / Stream)
  2. 是删了什么(文件 / 目录 / 分区 / 系统)
  3. 现在能否启动
  4. 文件系统(ext4 / xfs)

我可以给你 一步一步的命令级恢复方案

0