当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 8 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 14:54 

注册: 2011-04-24 14:29
帖子: 4
送出感谢: 0 次
接收感谢: 0 次
之前windows和Ubuntu的启动过程都很正常,后来,升级了grub后,问题就出现了,在论坛里翻了很久之前到帖子,但是还是没有找到解决的方法,所以发帖求助,请各位高手指点一二!

为了把问题说明白,帖子会比较长,请各位耐心些哈~~

1.打开电脑后,启动界面如下:
Ubuntu, with Linux 2.6.35-28-generic
Ubuntu, with Linux 2.6.35-28-generic (recovery mode)
Ubuntu, with Linux 2.6.35-22-generic
Ubuntu, with Linux 2.6.35-22-generic (recovery mode)
Memory test (memtest86+)
Memory test (memtest86+, serial console 115200)
Microsoft Windows XP Professional (on /dev/sda1)
于是,选择最后一项,之后进入一个空白界面,光标在左上角闪了几下就又跳回这个界面。

2.我到grub.cfg文件的详细内容:
引用:
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
set have_grubenv=true
load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi

function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}

function recordfail {
set recordfail=1
if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}

function load_video {
insmod vbe
insmod vga
}

insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
if [ "${recordfail}" = 1 ]; then
set timeout=-1
else
set timeout=10
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.35-28-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
linux /boot/vmlinuz-2.6.35-28-generic root=UUID=4792df2a-ffb6-44a3-a28d-8408feb4427a ro quiet splash
initrd /boot/initrd.img-2.6.35-28-generic
}
menuentry 'Ubuntu, with Linux 2.6.35-28-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
echo 'Loading Linux 2.6.35-28-generic ...'
linux /boot/vmlinuz-2.6.35-28-generic root=UUID=4792df2a-ffb6-44a3-a28d-8408feb4427a ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.35-28-generic
}
menuentry 'Ubuntu, with Linux 2.6.35-22-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
linux /boot/vmlinuz-2.6.35-22-generic root=UUID=4792df2a-ffb6-44a3-a28d-8408feb4427a ro quiet splash
initrd /boot/initrd.img-2.6.35-22-generic
}
menuentry 'Ubuntu, with Linux 2.6.35-22-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
echo 'Loading Linux 2.6.35-22-generic ...'
linux /boot/vmlinuz-2.6.35-22-generic root=UUID=4792df2a-ffb6-44a3-a28d-8408feb4427a ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.35-22-generic
}
### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" {
insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" {
insmod part_msdos
insmod ext2
set root='(hd0,msdos11)'
search --no-floppy --fs-uuid --set 4792df2a-ffb6-44a3-a28d-8408feb4427a
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### 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 5aec8239ec821005
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###


3.输入sudo fdisk -l之后的显示如下:

Device Boot Start End Blocks Id System
/dev/sda1 * 1 3037 24391602 7 HPFS/NTFS
/dev/sda2 3037 30401 219804353+ f W95 Ext'd (LBA)
/dev/sda5 4048 7782 30000000 7 HPFS/NTFS
/dev/sda6 9417 12992 28716451+ 7 HPFS/NTFS
/dev/sda7 17366 30401 104711638+ 7 HPFS/NTFS
/dev/sda8 3037 4047 8115200 83 Linux
/dev/sda9 7782 9416 13125632 83 Linux
/dev/sda10 12992 13241 1999872 82 Linux swap / Solaris
/dev/sda11 13241 17365 33131520 83 Linux
(windows系统装于硬盘下第一个分区,Ubuntu装于/dev/sda11)

4.使用过的解决方法如下,均无法解决此问题:
(1) sudo update-grup
(2)进入后采用“C”命令运行
[a]root (hd0,0)(显示no such partition)【输入root (hd0,1)后显示为什么ntfs】
[b]chainloader +1
[c]boot
【结果】继续跳回最初的选择界面。

5.本人电脑是上网本,没有光驱,没有启动盘。
希望我把问题说明白了,请各位高手指点呀~~


页首
 用户资料  
 
2 楼 
 文章标题 : Re: windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 15:02 
头像

注册: 2009-09-06 5:53
帖子: 4666
送出感谢: 6
接收感谢: 110
代码:
sudo fdisk -lu

结果贴上来


_________________
电子书下载:
鸟哥的Linux私房菜 基础学习篇 第三版 pdf
鸟哥的Linux私房菜 服务器架设篇 第三版 pdf


页首
 用户资料  
 
3 楼 
 文章标题 : Re: windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 16:37 

注册: 2011-04-24 14:29
帖子: 4
送出感谢: 0 次
接收感谢: 0 次
引用:
Device Boot Start End Blocks Id System
/dev/sda1 * 63 48783266 24391602 7 HPFS/NTFS
/dev/sda2 48783358 488392064 219804353+ f W95 Ext'd (LBA)
/dev/sda5 65015180 125015179 30000000 7 HPFS/NTFS
/dev/sda6 151268103 208701005 28716451+ 7 HPFS/NTFS
/dev/sda7 278968788 488392064 104711638+ 7 HPFS/NTFS
/dev/sda8 48783360 65013759 8115200 83 Linux
/dev/sda9 125016064 151267327 13125632 83 Linux
/dev/sda10 208701440 212701183 1999872 82 Linux swap / Solaris
/dev/sda11 212703232 278966271 33131520 83 Linux

结果如上


页首
 用户资料  
 
4 楼 
 文章标题 : Re: windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 17:06 
头像

注册: 2009-09-06 5:53
帖子: 4666
送出感谢: 6
接收感谢: 110
命令仅对楼主,他人勿试:
第一步:
代码:
sudo grub-install /dev/sda
sudo update

第二步:
代码:
sudo dd if=/dev/sda of=/dev/sda bs=512 count=1 seek=63 skip=48783266


_________________
电子书下载:
鸟哥的Linux私房菜 基础学习篇 第三版 pdf
鸟哥的Linux私房菜 服务器架设篇 第三版 pdf


页首
 用户资料  
 
5 楼 
 文章标题 : Re: windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 17:40 
头像

注册: 2007-11-25 13:29
帖子: 7283
地址: 新疆博乐
系统: 14.04/16.04/Fedroa22
送出感谢: 38
接收感谢: 102
看了一下我的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 4028b77b28b76f12
   drivemap -s (hd0) ${root}
   chainloader +1
}


_________________
===新手请看===
Ubuntu 安装 | Ubuntu12.04/14.04/16.04 桌面操作指南
··Ubuntu16.04 安装图文教程(超简单)
····有时间就静下心来——折腾:)


页首
 用户资料  
 
6 楼 
 文章标题 : Re: windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 21:30 

注册: 2011-04-24 14:29
帖子: 4
送出感谢: 0 次
接收感谢: 0 次
感谢oneshoestring,问题已解决。 :em11

输入后的具体变化如下:
输入——sudo grub-install /dev/sda
显示——Installation finished.No error reported.
输入——sudo update
显示——command not found
输入——sudo dd if=/dev/sda of=/dev/sda bs=512 count=1 seek=63 skip=48783266
显示——1+0 records in. 1+0 records out. 512 bytes(512 B) copied,0.0168027s, 30.5kB/s

顺便请问oneshoestring,你是如何看出我启动项的问题的,我的启动项是哪里出的问题,你的给出的命令是针对什么在执行的?
我不仅想知其然,还想知其所以然。
还望oneshoestring耐心解释一下 :em06 谢谢啦~~~


页首
 用户资料  
 
7 楼 
 文章标题 : Re: windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 21:47 
头像

注册: 2009-09-06 5:53
帖子: 4666
送出感谢: 6
接收感谢: 110
引用:
输入——sudo update
显示——command not found

应该是sudo update-grub,漏打上了。

引用:
1.打开电脑后,启动界面如下:
Ubuntu, with Linux 2.6.35-28-generic
Ubuntu, with Linux 2.6.35-28-generic (recovery mode)
Ubuntu, with Linux 2.6.35-22-generic
Ubuntu, with Linux 2.6.35-22-generic (recovery mode)
Memory test (memtest86+)
Memory test (memtest86+, serial console 115200)
Microsoft Windows XP Professional (on /dev/sda1)
于是,选择最后一项,之后进入一个空白界面,光标在左上角闪了几下就又跳回这个界面。

这个现象就是grub2错装到sda1的pbr。

引用:
### 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 4028b77b28b76f12
drivemap -s (hd0) ${root}
chainloader +1
}

按 "Microsoft Windows XP Professional (on /dev/sda1)" 菜单项,执行chainloader到sda1的pbr。接着运行sda1的pbr里的代码(错装的grub2代码),自然就
引用:
选择最后一项,之后进入一个空白界面,光标在左上角闪了几下就又跳回这个界面。


修复有个顺序,不可错,先装grub2到mbr,保证ubuntu能正常启动。
再修复sda1的pbr,用的billbear的dd大法。这里要感谢billbear。链接:http://www.linux-wiki.cn/index.php?title=%E4%BF%AE%E5%A4%8D%E8%A2%ABgrub%E8%A6%86%E7%9B%96%E7%9A%84ntfs%E5%88%86%E5%8C%BA%E5%BC%95%E5%AF%BC%E6%89%87%E5%8C%BA&variant=zh-cn
没看懂billbear文章的不要试。


_________________
电子书下载:
鸟哥的Linux私房菜 基础学习篇 第三版 pdf
鸟哥的Linux私房菜 服务器架设篇 第三版 pdf


页首
 用户资料  
 
8 楼 
 文章标题 : Re: windows启动陷入死循环(处女帖)
帖子发表于 : 2011-04-24 23:27 

注册: 2011-04-24 14:29
帖子: 4
送出感谢: 0 次
接收感谢: 0 次
多谢多谢,受教了,希望以后技术提高后,自己也能帮助更多的人~~~
好好学习喽~~~


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 8 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译