【解决vmware ubuntu不小心删boot分区,进不去系统】

发布于:2025-07-24 ⋅ 阅读:(15) ⋅ 点赞:(0)

如果仍然提示 Unable to locate package testdisk,有可能是源中不包含该工具(LiveCD 使用的是“最小环境”)。

🪛 解决方法:切换到国内完整软件源(推荐)

编辑 sources.list

sudo nano /etc/apt/sources.list

用以下内容替换(适用于中国大陆):

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

然后保存并退出(Ctrl+O → 回车,Ctrl+X)

然后重新执行:

sudo apt update
sudo apt install testdisk

然后按下面的步骤继续:

  1. 选择磁盘 → /dev/sda

  2. 选择分区类型 → 一般选默认(Intel / EFI GPT)

  3. 选择 AnalyseQuick Search

  4. 找到你的原来 Linux 分区(ext4)

  5. P 预览文件 → 如果能看到熟悉的 /home/etc 就是它

  6. Write → 写回分区表

  7. 重启测试

设置boot标志

sudo fdisk -l

/dev/sda3 的启动标志去掉,只保留 /dev/sda2 作为启动分区

fdisk 操作:

sudo fdisk /dev/sda



# 假设根分区是 /dev/sda2:

```bash
sudo mount /dev/sda2 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt

然后在 fdisk 交互命令下:

输入 a,提示选择分区号,输入 3(取消其启动标志)

输入 a,选择 2(设置启动标志)

输入 p 查看分区表,确认只有 /dev/sda2 带 * 标志

输入 w 保存退出

修复 GRUB 引导

grub-install /dev/sda
update-grub
exit
sudo reboot

若重新设置root标志后还是自动进入救援模式

  1. 重新安装并修复 GRUB

先进入系统恢复环境(live CD 或 rescue 模式),然后挂载系统分区并 chroot

sudo mount /dev/sda2 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt

然后重新安装 GRUB:

grub-install /dev/sda
update-grub

退出 chroot 并卸载

exit
sudo umount /mnt/dev /mnt/proc /mnt/sys /mnt

重启试试:

sudo reboot

网站公告

今日签到

点亮在社区的每一天
去签到