您尚未登录。

#1 2015-04-10 16:50:45

lostyear
会员
注册时间: 2015-04-09
帖子: 11

更换虚拟机软件导致无法启动

原来是vbox的虚拟机,最近换了电脑以后觉得win8自带的hyper-v不错,就直接切换了,但是debian什么的虚拟机都能正常使用,但是arch的就启动不了了。
在启动的时候提示找不到sda1(我是GPT分区),在启动界面的命令行里,看了一下/dev里面的设备,发现没有sda这个设备了。
通过安装光盘进去的系统里面,是可以看到sda的。

现在怀疑是硬盘驱动需要更新,请问我应该怎么办?

哦,补充一下,我的是IDE模式的GPT虚拟硬盘。而且虚拟biso应该是不支持uefi的。

最近编辑记录 lostyear (2015-04-10 17:08:04)

离线

#2 2015-04-10 18:26:51

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,954
个人网站

Re: 更换虚拟机软件导致无法启动

启动时使用 fallback 选项进系统,然后执行 mkinitcpio -p linux 重新生成 initramfs 文件试试。

离线

#3 2015-04-10 19:27:51

lostyear
会员
注册时间: 2015-04-09
帖子: 11

Re: 更换虚拟机软件导致无法启动

百合仙子 说:

启动时使用 fallback 选项进系统,然后执行 mkinitcpio -p linux 重新生成 initramfs 文件试试。

啊,我用的syslinux。。。
怎么选fallback,而且找不到硬盘根本进不了系统啊

离线

#4 2015-04-10 19:52:57

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,954
个人网站

Re: 更换虚拟机软件导致无法启动

lostyear 说:
百合仙子 说:

启动时使用 fallback 选项进系统,然后执行 mkinitcpio -p linux 重新生成 initramfs 文件试试。

啊,我用的syslinux。。。
怎么选fallback,而且找不到硬盘根本进不了系统啊

进系统之前选的。

你的启动菜单不是官方的而是自己编写的?那样的话,你可以修改引导时使用的 initramfs 吗?或者你从 Live 系统中 chroot 进去执行 mkinitcpio 命令也行。

离线

#5 2015-04-10 20:24:16

lostyear
会员
注册时间: 2015-04-09
帖子: 11

Re: 更换虚拟机软件导致无法启动

解决了,非常感谢
(●'◡'●)

离线

#6 2015-04-10 20:28:40

lostyear
会员
注册时间: 2015-04-09
帖子: 11

Re: 更换虚拟机软件导致无法启动

百合仙子 说:
lostyear 说:
百合仙子 说:

启动时使用 fallback 选项进系统,然后执行 mkinitcpio -p linux 重新生成 initramfs 文件试试。

啊,我用的syslinux。。。
怎么选fallback,而且找不到硬盘根本进不了系统啊

进系统之前选的。

你的启动菜单不是官方的而是自己编写的?那样的话,你可以修改引导时使用的 initramfs 吗?或者你从 Live 系统中 chroot 进去执行 mkinitcpio 命令也行。

启动菜单基本没改的,但是找不到sda确实是找不到initramfs的,最后用live光盘执行的。
非常感谢。

离线

#7 2015-04-10 21:10:45

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,954
个人网站

Re: 更换虚拟机软件导致无法启动

lostyear 说:

启动菜单基本没改的,但是找不到sda确实是找不到initramfs的,最后用live光盘执行的。
非常感谢。


反了。是先由 grub 加载 initramfs,里边有启动需要的内核模块,然后内核才能找到硬盘设备。你更改了虚拟硬盘设置,所以之前打包进去的内核模块里没有需要的,需要重新生成。自动生成 grub 启动菜单时出现的 fallback 启动项就是为了处理这种情况而存在的,它打包了所有块设备的模块。

离线

#8 2015-04-10 23:40:20

lostyear
会员
注册时间: 2015-04-09
帖子: 11

Re: 更换虚拟机软件导致无法启动

百合仙子 说:
lostyear 说:

启动菜单基本没改的,但是找不到sda确实是找不到initramfs的,最后用live光盘执行的。
非常感谢。


反了。是先由 grub 加载 initramfs,里边有启动需要的内核模块,然后内核才能找到硬盘设备。你更改了虚拟硬盘设置,所以之前打包进去的内核模块里没有需要的,需要重新生成。自动生成 grub 启动菜单时出现的 fallback 启动项就是为了处理这种情况而存在的,它打包了所有块设备的模块。

原来是这样的,又张知识了,再次感谢。。。

离线

页脚