Dem*_*eep 6 linux grub dual-boot boot centos
我有一个现有的 Dell Precision 690 工作站设置来双引导 Windows XP 和 CentOS 5.5。这些操作系统安装在两个独立的驱动器上。我在 Linux 驱动器上有一个 grub 菜单,它设置为驱动器 1 并指向驱动器 2 上的 Windows 启动信息。
我尝试使用 linux 驱动器并将其安装在新的 HP Z800 工作站中,看看我是否有幸让它启动,但它没有。在它开始启动后立即出现一些错误。
这是系统显示的内容:
在此消息之后,Red Hat nash version 5.1.19.6 starting我收到以下几行:
Unable to access resume device (LABEL=SWAP-sda2)
mount: could not find filesystem '/dev/root'
setuproot: moving /dev failed: No such file or directory
setuproot: error mounting /proc: No such file or directory
setuproot: error mounting /sys: No such file or directory
switchroot: mount failed: No such file or directory
Kernel panic - not syncing: Attempted to kill init!
Run Code Online (Sandbox Code Playgroud)
有什么我可以调整的东西来让它可能启动吗?我真的不想在这台机器上重新加载 CentOS 5.5 和专门的软件。
我在这个驱动器上确实有一个 grub 菜单设置,这可能是我的问题吗?旧机器中的驱动器设置为 Linux 作为驱动器 1,Windows 作为驱动器 2,Linux 驱动器承载 grub 菜单,允许我引导到 Linux 或 Windows。这可能是什么问题?
我确实知道使用 Windows 解决此问题的方法:在机器中安装辅助 HDD 控制器卡,安装驱动程序,将驱动器连接到旧机器中的控制器并确保它启动,将驱动器和控制器移动到新机器并启动关闭它,加载主板驱动程序(特别是硬盘控制器驱动程序),然后您可以取出控制器卡,将硬盘直接连接到主板上就可以了。同样的事情可能在 Linux 中完成,但我不确定。如果没有其他办法,这可能是最后一次尝试。
如果到目前为止,这意味着引导加载程序已成功加载内核和 initrd/initramfs,但内核未找到根设备。因此,您应该能够通过root=/dev/sda42在内核命令行上传递类似的内容来启动。
在 Grub 提示符下,编辑 Linux 条目,然后查找以 开头的行linux。在该行上,应该有一个类似于 的参数root=/dev/sda42。将其更改为root=/dev/sdb42,即不同的驱动器。当前的字母可能不是a,有效的字母可能不是b,但如果您有两个驱动器,您可能只需要交换sdb,sda反之亦然。
Linux 中驱动器号的顺序与 BIOS、Grub 或 Windows 中的顺序无关(或至少不直接相关)(这取决于驱动程序加载的顺序)。(有很多方法可以解决这个问题,但它们现在无法帮助您。)
引导时,如果 中的条目与/etc/fstab当前磁盘设备名称不匹配,则可能会出现错误。如果您无法访问修复控制台,请重新启动并(除了更改之外root=)init=/bin/sh直接添加到 shell,然后运行
mount /proc
mount -o remount,rw /
vi /etc/fstab # or whatever your favorite editor is
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3712 次 |
| 最近记录: |