我使用 Windows 7 和 Ubuntu 14.04 进行了双启动。我在启动菜单中可以看到这两个系统,但无法启动 Windows 7。配置 Windows 7 的主驱动器现在显示为逻辑驱动器,其中包含所有文件。如何解决?
显示的内容如下:
irshad@irshad-desktop:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 58.6G 0 part /media/irshad/B2E08E69E08E339F
├─sda2 8:2 0 1K 0 part
├─sda5 8:5 0 195.3G 0 part /media/irshad/8E90A6A690A6946D
├─sda6 8:6 0 182.8G 0 part /media/irshad/7650B08250B04B1F
├─sda7 8:7 0 25G 0 part /
└─sda8 8:8 0 4G 0 part
sr0 11:0 1 1024M 0 rom
我尝试运行update-grub
但得到以下结果。
$ sudo update-grub
Generating grub configuration file ...
/etc/grub.d/06_custom: 31: /etc/grub.d/06_custom: function: not found
/etc/grub.d/06_custom: 34: /etc/grub.d/06_custom: save_env: not found
/etc/grub.d/06_custom: 36: /etc/grub.d/06_custom: Syntax error: "}" unexpected
答案1
最后我使用启动了 win 7。Testdisk
如果有人在启动 windows 时遇到问题,即使所有文件都存在/完整,也可以链接到解决方案。
如果您损坏了某个分区的引导扇区(例如,错误地在其中安装了 GRUB),则可能会遇到麻烦。例如,如果这是一个 Windows 分区,您将无法再引导到 Windows。
备注:如果你有这个问题,启动修复应该自动警告并告诉您损坏分区的名称(例如 sda2)。
修复方法如下:
通过 Ubuntu 光盘
步骤 1 - 从 liveCD 或 liveUSB 启动
在 Ubuntu live-CD 或 live-USB 上启动您的计算机,然后选择“试用 Ubuntu”。
第 2 步 - 在实时会话中安装 TestDisk
进入 Ubuntu Live 会话后,安装测试磁盘这边走:
- 连接互联网
- 打开软件中心,在顶部栏单击编辑 -> 软件源 -> 启用 Universe 存储库
打开终端(++ Ctrl)并输入:AltT
sudo apt-get update sudo apt-get install -y testdisk && sudo testdisk
步骤 3 - 使用 TestDisk
- 通过箭头和 Enter 键,进入 [无日志] 菜单,
- 然后选择损坏分区所在的磁盘,
- 然后选择[继续],
- 然后选择分区类型(一般是[Intel]),
- 然后[高级],
然后用[Boot]选择损坏的分区,它将显示类似以下内容:
Boot sector Status: Bad Backup boot sector Status: OK Sectors are not identical. A valid NTFS Boot sector must be present in order to access any data; even if the partition is not bootable. [ List ] [Backup BS] [Rebuild BS] [ Dump ]
检查“备份引导扇区”下方的“状态是否正常”
选择[备份 BS]。
完毕
通过 Windows 光盘
此方法只能修复 Windows 分区的引导扇区。
获取 Windows 恢复磁盘,如上所述这一页
启动它,然后使用“fixboot”命令(不是“fixmbr”命令)。这应该可以修复 Windows 的引导扇区。
答案2
首先使用 Windows 7 安装 CD 启动您的系统来修复您的 Windows 启动。
从第一个对话框中选择语言后,转到“修复系统”。
使用命令提示符(疑难解答►高级选项►命令提示符)
输入bootrec /fixboot
然后按回车
键输入bootrec /fixmbr
然后按回车键
然后从 Ubuntu live CD/USB 启动并执行以下步骤恢复您的 grub:
- 打开终端(使用Ctlr+ Alt+ T)
通过以下命令挂载
/dev/sda7
(您可以从挂载lsblk
根/
分区的位置获取):(逐个运行)sudo mount /dev/sda7 /mnt for i in /sys /proc /run /dev;do sudo mount --bind "$i" "/mnt$i";done sudo chroot /mnt
并运行以下命令将 grub 安装到主分区
/dev/sda
:grub-install /dev/sda
更新 grub 并退出并重新启动系统。
update-grub exit sudo reboot