Ubuntu与Windows引导修复

概况

IE9正式版发布了,看了网上给的评测,貌似有了很大进步。
前几天下了个英文想装下看看,却提示”预发行版要升级到发行版“,查看了下Win7版本,还是最初的RTM版,原来好久都两年没重装系统了。到网上下了个SP1包,结里发现不能从预发行版要升级到发行版。于是再下了个集成SP1的2G多原版win7,还是提示不能升级,有点郁闷了。只好再次求救于谷老师,原来windows每个版本中有一个可以升级的最低版本,下了这个版本升级最低需要7601,而我当前的只是7600,所以就悲剧了。把ISO解压出来,打开sources/cversion.ini,将MinClient改为自己当前的版本,就可以正常安装了。装完后,发现原来的Ubuntu已经进不去了。系统的MBR被覆盖了,只能进windows了,于是又开始弄系统引导了。

Windows下引导Ubuntu:

下个EasyBCD安装,因为它可以直接添加Linux项,只要知道boot所在分区就行了,比较简单。以前一直用VistaBootBCD,发现它不能识别Linux.如果Win7都不能进入了,则需重建引导。需重建bcd,放入安装盘,让它加载完,出现安装图形界面后按Shift+F10,就会出现命令行窗口,输入下面命令行,即可重建,再按上面方法添加Ubuntu.

bootrec /rebuildbcd

Ubuntu修复引导

网上说在方法很多,结果没一个成功,最后终于找到了一个方法

Livcd启动进入试用
sudo -i
mount 你的根分区 /mnt
mount 你的/boot分区 /mnt/boot #注意boot是不是个单独分区
# 挂载你其他的分区,如果有的话
# 重建grub到sda的mbr
grub-install --root-directory=/mnt /dev/sda
# 重建grub.cfg
mount --bind /proc /mnt/proc  
mount --bind /dev /mnt/dev  
mount --bind /sys /mnt/sys  
chroot /mnt update-grub  
umount /mnt/sys  
umount /mnt/dev  
umount /mnt/proc 

如果启动项中还没有windows启动项,则自己添加.

sudo gedit /boot/grub/grub.cfg
添加下面项:
### BEGIN /etc/grub.d/30_os-prober ###     
menuentry "Microsoft Windows XP Professional (on /dev/sda1)" {
	insmod part_msdos
	insmod ntfs
	set root='(hd0,msdos1)'
	search --no-floppy --fs-uuid --set f4a8234ea8230ea4
	drivemap -s (hd0) ${root}
	chainloader +1
}
### END /etc/grub.d/30_os-prober ###

上面的f4a8234ea8230ea4是分区的UUID,打开*/etc/fstab*,查看windows装的分区的UUID,替换掉上面的。花了一天时间弄了这个,对系统引导也有一定的认识…

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×