web-dev-qa-db-ja.com

Arch Linuxはgrubコマンドラインで起動します

UEFIモードで仮想ボックスゲストマシンにArch Linuxをインストールしようとしています。初心者向けガイドに従ってベースシステムをインストールし、fstabなどを生成すると、システムがgrubコマンドプロンプトで起動します。

GPTパーティションテーブルを使用して2つのパーティションを作成しました。

/ dev/sda1-500Mb fat32 UEFIシステムパーティション。/dev/sda2-_/_としてマウントされた7.5Gb ext4;コマンド_genfstab -U -p /mnt >> /mnt/etc/fstab_で生成された/ etc/fstabには以下が含まれます:

_# /dev/sda2
UUID=ce8f33a9-4bb8-42b8-b082-c2ada96cc2bb    /      ext4    rw,relatime,data-ordered    0 1
# /dev/sda1
UUID=3D70-B6C5                               /boot  vfat    rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,error=remount-ro    0 2
_

コマンドでインストールされたgrub:

_\# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch_grub --recheck
\# mkdir /boot/EFI/boot
\# cp /boot/EFI/Arch_grub/grubx64.efi /boot/EFI/boot/bootx64.efi
_

mkdircpがないと、まったく起動しません)

_grub-mkconfig -o /boot/grub/grub.cfg_で生成されたgrub構成とその内容は、ここで取得および投稿するのが非常に困難です。必要なら試してみます。

そして、再起動後、システムは_grub>_コマンドプロンプトで起動し、何も役に立ちません。

この質問とは異なり: EFI install(14.04)boots to GRUB command Prompt、no GUI my my case command configfile (hd1,1)/boot/grub/grub.cfg does not make what make clears clearsスクリーン。

私はchrootを介してcd環境のインストールからインストール済みシステムを「ブート」できますが、それ以外の方法はありません。

どうすれば修正できますか?

8

Grubの代わりにgummibootを使用しようとしたときに、ケースを見つけました。 Gummibootがエラーを報告しました:カーネルイメージが見つかりません。/bootをマウントしてfstabを構成したようですafterpacstrap -iを使用してベースシステムをインストールしました。そのため、/ bootディレクトリに配置されたカーネルイメージはマウント後に失われるため、システムを起動できませんでした。彼らに何が起こったのかしら?それらはまだハードドライブ上にありましたが、マウントされたパーティションでシャドウされていましたか?

とにかく、私はArch wikiの指示に注意深く従ってすべてを再インストールしただけで、それは今動作します。

8

Grub-installコマンドが使用するesp変数をエクスポートしましたか?そうでない場合、grubはefiディレクトリの場所がわかりません。

# export esp=/boot/efi
# grub-install --target=x86_64-efi --efi-directory=$esp .....

ArchlinuxはEFISTUBをサポートしているため、ブートローダーは不要です。詳細は [〜#〜] efistub [〜#〜] を参照してください。

EFIのみのブートローダーを試したい場合は、Gummibootが最適なオプションです。 このガイド には、Gummibootをインストールするための適切なウォークスルーがあります。

1
Ray

私は同じことをしただけで、UEFIボリュームを古いLinuxイメージとinitの上にマウントしました

umount -f -l /boot
mkdir /tmp/boot.bak
mv /boot/* /tmp/boot.bak
mount -a # assuming /etc/fstab is configured
mv /tmp/boot.bak/* /boot

出来上がり

1
Kris Nova