
事情是这样的,我两块硬盘分别安装win10 和Archlinux系统,引导分区也分别为每块硬盘的第一个分区,每次开机时会自动进入win10 的引导系统,而不是arch的grub2引导。进入grub2时只需要开机时按住F9选择arch的boot option即可。
然后,由于自己的折腾把win10和archlinux的引导都搞挂了。。
那么就先修复了再折腾吧(不修复进不了系统。。)
手头有一个wePE启动U盘,使用U盘启动进入PE系统后打开 UEFI修复引导,然后点两下就行了,是不是这样??
反正用那个修复了好几次都不行,最后呢只能打开WePE的命令行工具用bcdboot命令来修复了
d是我的安装盘,h是挂载的windows EFI分区
另外,附送链接 win8/10 bcdboot引导修复命令的原理和使用方法
Archlinux的修复就没那么容易了 因为我把 /boot/下的vmlinuz-linux 误删掉了,而另外两个initramfs-linux.img 和inittramfs-linux-fallback.img也不幸被删掉了。。
我是这样解决的 进入windows系统 重新使用rufs(不知道是不是叫这个,忘记名字了,arch的wiki上推荐的)将最新的archiso刻入U盘,重启进入
archiso,这个时候只需要按照installation guide来就行了(~~~)
好吧,事实不是这样的,只需要
然后呢,就是
在这里,你可以安装grub
等待install 成功,然后reinstall linux就行了
reinstall 选y就可以等待编译内核,生成压缩内核文件和初始化内存文件成功就OK了。
退出arch-chroot 重启进入Arch即可。
安装Debian 6.0.5后,Grub启动菜单中没有把原来的Windows系统加到启动选项中,无法启动Windows。启动Windows有两种方法:\x0d\x0a \x0d\x0a在Grub命令行下,手工启动Windows\x0d\x0a修改Grub的配置文件grub.cfg,为Windows添加启动菜单\x0d\x0aGrub版本:GNU GRUB Version 1.98+20100804-14+squeeze1\x0d\x0a \x0d\x0a手工启动Windows\x0d\x0a进入Grub启动菜单后,键入c,进入Grub命令行\x0d\x0a1. 用ls命令,查看硬盘和分区信息,找到Windows系统的启动分区\x0d\x0a \x0d\x0aGrub代码 \x0d\x0agrub>ls -l \x0d\x0a \x0d\x0a2. root命令确定要启动的分区, \x0d\x0a \x0d\x0aGrub代码 \x0d\x0agrub>root (hd0,msdos1) \x0d\x0a \x0d\x0a3. chainloader命令将控制权将给Windows的boot loader,自己不用管理加载内核等工作\x0d\x0a \x0d\x0aGrub代码 \x0d\x0agrub>chainloader +1 \x0d\x0a \x0d\x0a注意:chainloader要知道的是如何找到Super Block,因而需要设定启动的root分区和所在扇区。命令使用chainloader (hd0,msdos1)+1。如何执行过root (hd0, msdos1),则可简化为chainloader +1。命令参数中的+1,是指定分区上的第一个扇区。\x0d\x0a另,chainloader并不负责加载工作,主要用于设置启动Windows等非Linux系统的参数,交给这些系统的boot loader自已启动。因而,如果要启动linux,则不使用chainloader。\x0d\x0a \x0d\x0a4. 启动Windows\x0d\x0a \x0d\x0aGrub代码 \x0d\x0agrub>boot \x0d\x0a \x0d\x0a为Grub菜单添加Windows 启动项\x0d\x0a在grub的配置文件\boot\grub\grub.cfg中添加Windows启动菜单。\x0d\x0a1. 设置默认启动的 *** 作系统\x0d\x0a \x0d\x0aGrub.cfg代码 \x0d\x0aset default="2" \x0d\x0a \x0d\x0adefault的值设置,0表示第一次Grub启动菜单项,余下以此类推\x0d\x0a \x0d\x0a2. 设置Grub启动菜单的Timeout时间\x0d\x0a \x0d\x0aGrub.cfg代码 \x0d\x0aset timeout=30 \x0d\x0a \x0d\x0a3. 添加Windows启动菜单\x0d\x0a \x0d\x0aGrub.cfg代码 \x0d\x0a### BEGIN /etc/grub.d/30_os_prober ### \x0d\x0amenuentry 'Windows 7 Ultimate{ \x0d\x0ainsmod part_msdos \x0d\x0ainsmod ntfs \x0d\x0aset root='(hd0,msdos1) \x0d\x0achainloader +1 \x0d\x0a} \x0d\x0a### END /etc/grub.d/30_os_prober ### \x0d\x0a \x0d\x0a在grub命令行下,也可以查看grub.cfg配置文件\x0d\x0a \x0d\x0aGrub代码 \x0d\x0agrub>cat (hd0,msdos10)/boot/grub/grub.conf \x0d\x0a如果不行,可以搜索如何修复Grub,尝试其他的办法欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)