GRUB 无法找到硬盘上的 ISO 映像?

GRUB 无法找到硬盘上的 ISO 映像?

我有一台装有 Kubuntu 10.10 版本的旧电脑。我想安装最新版本,并按照帖子中的说明进行操作直接从运行 Linux 的系统硬盘上的 ISO 映像安装 Ubuntu

iso 映像位于 /home/newinstall/kubuntu-14.10-desktop-amd64.iso

我更改了 /etc/grub.d/40_custom 文件:

#!/bin/sh
exec tail -n +3 $0
# 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.
menuentry "Kubuntu ISO" {
        set isofile="/home/newinstall/kubuntu-14.10-desktop-amd64.iso"
        loopback loop (hd1,6)$isofile
        linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
        initrd (loop)/casper/initrd.lz
}

重启并选择新的 grub 菜单“Kubuntu ISO”后,我总是遇到相同的错误:

error: file not found.
error: no such disk.
error: you need to load the kernel first.

本系统还安装了一些其他硬盘:

$ sudo blkid
/dev/sda1: LABEL="Vista" UUID="1478E3F678E3D510" TYPE="ntfs" 
/dev/sdb1: LABEL="WinXP" UUID="70445A47445A1068" TYPE="ntfs" 
/dev/sdb5: LABEL="DataXP" UUID="1EC4D769C4D74227" TYPE="ntfs" 
/dev/sdb6: UUID="3155a65d-e23d-4b53-844a-f5071e0fd957" TYPE="ext3" 
/dev/sdb7: UUID="6780d437-a484-40da-a95c-06ce66d8b3cd" TYPE="ext4" 
/dev/sdb8: UUID="8c31b07c-eaac-4404-9e03-c1ce66ca0d6f" TYPE="ext4" 
/dev/sdb9: UUID="ceb365a4-5f7b-414a-954c-f7e2c93264ed" TYPE="ext4" 
/dev/sdb10: UUID="f35c6cbd-3e0c-47f0-960b-753b8c5cc7f9" TYPE="swap" 
/dev/sdb11: UUID="e8c4bba7-459c-4f6b-8627-c084ae9fe1fe" TYPE="ext4" 
/dev/sdb12: UUID="f02ad769-fbff-49b1-8ff6-1144412d3ae0" TYPE="ext4" 
/dev/sdb13: UUID="6a7823c1-3ca3-4e56-b6b3-61a4a9bf5650" TYPE="ext4" 

    df -k
    /dev/sdb8              2401840    407196   1872636  18% /
    none                    504304       260    504044   1% /dev
    none                    511172       584    510588   1% /dev/shm
    none                    511172        80    511092   1% /var/run
    none                    511172         0    511172   0% /var/lock
    /dev/sdb11              235021      6186    216701   3% /tmp
    /dev/sdb7               472036     48393    399272  11% /boot
    /dev/sdb12             2882592    388612   2347548  15% /var
    /dev/sdb13            28767364    176068  27130000   1% /res
    /dev/sdb6             48062440  24521892  21099072  54% /home
    /dev/sdb9              7693480   2443544   4859128  34% /usr

这个配置有什么问题?

答案1

请注意关于使用较新版本的 ISO 的评论,但您的问题可能是您有一个单独的 /home 分区。假设您的“newinstall”是用户主目录,则分区以 /newinstall,,, 而不是 /home 开头

set isofile="/newinstall/kubuntu-14.10-desktop-amd64.iso"
loopback loop (hd1,6)$isofile

另一个潜在问题是 grub 提示符和最终运行系统中的磁盘枚举可能不同。您可能希望 grub 提示符下的 sdb 是 hd1,但有时 hd0 和 hd1 似乎颠倒了。我确实尝试了上面提到的修复方法,因为我在已安装的分区上有一个 iso,并且启动成功,但是插入了外部(不可启动)USB 硬盘后,必须手动将 hd0(在我的情况下为 sda)更改为 hd1 才能启动。没有 USB 磁盘,hs0 可以工作。

相关内容