Grub 无法启动 Arch Linux

Rya*_*wis 3 arch-linux grub-legacy

注意:这不是关于双启动,我可以稍后将 GRUB 设置为与 Windows 7 双启动。我只需要能够进入 Arch Linux。

昨晚我通过 netinstall 将 Arch 安装到我的计算机上,一切顺利,但是当我重新启动时......它加载了 GRUB 菜单并列出了 Arch Linux,但是当我选择它时,我收到“错误 15:文件未找到。”

我一直在谷歌搜索并尝试各种方法来解决这个问题,但我总是遇到同样的错误。

关于我的分区的一些信息:

  • /dev/sda:

    1. Windows 7 系统保留
    2. Windows 7的
  • /dev/sdb:

    1. 数据(电影、音乐等)
  • /dev/sdc:

    1. 单独的引导分区
    2. 交换
    3. 独立的家庭分区
    4. 根
  • /dev/sdd:

    1. 随身碟

以下是各种程序的输出和各种文件的内容。

ubuntu@ubuntu:~$ sudo blkid
/dev/loop0: TYPE="squashfs" 
/dev/sdb1: LABEL="Stuff" UUID="72D6355E32F06BD5" TYPE="ntfs" 
/dev/sda1: LABEL="System Reserved" UUID="A8F8AC7FF8AC4CFE" TYPE="ntfs" 
/dev/sda2: UUID="2A20B02620AFF6CB" TYPE="ntfs" 
/dev/sdc1: UUID="2a23abcf-b29f-4119-b406-0b1817e5c8e1" TYPE="ext2" 
/dev/sdc2: UUID="f3d9ce0d-5953-4f4e-885a-4cd2ebf6b6e9" TYPE="swap" 
/dev/sdc3: UUID="2a53bdc8-7a9a-4dd2-9aef-5b7b4c3e74a4" TYPE="ext4" 
/dev/sdc4: UUID="7b4faa93-98db-49e3-ad41-92e9dc60deda" TYPE="ext4" 
/dev/sdd1: LABEL="PENDRIVE" UUID="0290-E580" TYPE="vfat" 
Run Code Online (Sandbox Code Playgroud)

menu.lst

timeout   5
default   0
color     light-blue/black light-cyan/blue

#===--- Arch Linux
title  Arch Linux
root   (hd2,0)
kernel /vmlinuz26 root=/dev/disk/by-uuid/2a53bdc8-7a9a-4dd2-9aef-5b7b4c3e74a4 ro vga=775
initrd /kernel26.img

#===--- Arch Linux Fallback
title  Arch Linux Fallback
root   (hd2,0)
kernel /vmlinuz26 root=/dev/disk/by-uuid/2a53bdc8-7a9a-4dd2-9aef-5b7b4c3e74a4 ro vga=775
initrd /kernel26-fallback.img

#===--- Windows 7
title         Windows 7
rootnoverify  (hd0,0)
chainloader   +1
Run Code Online (Sandbox Code Playgroud)

fstab

# 
# /etc/fstab: static file system information
#
# <file system>        <dir>         <type>    <options>          <dump> <pass>
devpts                 /dev/pts      devpts    defaults            0      0
shm                    /dev/shm      tmpfs     nodev,nosuid        0      0
/dev/sdc1              /boot         ext2      defaults            0      1
/dev/sdc2              /             ext4      defaults            0      1
/dev/sdc3              /home         ext4      defaults            0      1
/dev/sdc4              swap          swap      defaults            0      1
Run Code Online (Sandbox Code Playgroud)

Ste*_*fan 5

这里似乎错误的主要事情是在这一行

内核/vmlinuz26 root=/dev/disk/by-uuid/2a53bdc8-7a9a-4dd2-9aef-5b7b4c3e74a4 ro vga=775

您正在使用UUID为/dev/sdc3这是你的/home分区,你应该使用UUID为/dev/sdc2这是你的/分区。

另外... 的输出与sudo blkid中显示的不匹配fstab。在blkid中交换分区是/dev/sdc2,但在fstab中交换分区是/dev/sdc4...

你需要弄清楚这些descrepencies....然后你可以尝试重新配置你的 grub.conf

一些提示:

  • 您是否尝试过 root 的其他值,例如root (hd2,1)?

  • 代替

    内核/vmlinuz26 root=/dev/disk/by-uuid/2a53bdc8-7a9a-4dd2-9aef-5b7b4c3e74a4 ro vga=775`

    你可以尝试这样的事情

    内核/vmlinuz26 root=/dev/sdc2 ro vga=775

  • 确保/boot/kernel26.img存在。