web-dev-qa-db-ja.com

64ビットマシンで32ビットEFIを起動する(ではなく)grub2を修復するにはどうすればよいですか?

私はAsus EeeBook X205TAを持っています。これは、新しいハードウェアと64ビットハードウェア上の32ビットEFIが不明瞭なため、Linuxをインストールするのが非常に難しいことがわかります。たくさんの資料を見たり読んだりして、ほぼ完成です。私が今持っている問題は次のとおりです:

システムを起動すると、常にgrub>プロンプトが表示されます。ここで、/boot/grub/grub.confで記述された内容を入力すると、機能します。

insmod gzio
insmod part_gpt
insmod btrfs
linux  (hd0,gpt5)/@/boot/vmlinuz-3.19.0-18-generic.efi.signed root=LABEL=UNIXROOT rootflags=subvol=@
initrd (hd0,gpt5)/@/boot/initrd.img-3.19.0-18-generic

Grub(2.02〜beta2)がbtrfsパーティション/bootのサブボリューム@LABEL=UNIXROOTを見つけられないという問題を修正するにはどうすればよいですか?私はefibootで遊んだことがありますが、これにはubuntuLinuxの2つの関連エントリがあり、そのうちの1つがgrub>に、もう1つがgrub rescue>に移動します。 grub2から情報を取得するにはどうすれば失敗するのですか?grub-updateは変更しません。

問題は、EFIでブートがどのように機能するかわからないことです->?-> GRUB->?-> FS->/boot/grub/grub.cfgなので、すべての努力はブラインド。

あなたは何を知る必要がありますか? Ubutu 15.04 64ビット、32ビットUEFI、32GB eMMC、Z3735ベイトレイルCPU、Win 8.1は引き続き有効、セキュアブートは無効、レガシーブートはBIOSオプションではない、他に何があるか?

3
Ned64

私は一日中同じような問題に取り組んできました。 Qubunum Byte QS-1043-QBにlubuntuをインストールしました。使用しているのと同じプロセッサとチップセットを使用します。私はあなたがそうであるように同じポイントを得ました。

基本的に、GRUBおよび32ビットGRUBバージョンの32ビットEFIファイルをインストールする必要があります。

まず、GRUBの32ビットサポートをインストールします

Sudo apt-get install grub-efi-ia32 grub-efi-ia32-bin

デフォルトでは、grubは64ビットのEFIをインストールします。これは、PCのUEFIシステムでは機能しません。ラップトップで32ビットのGrub EFIとしてコンパイルし、それをQuantum Byteにコピーしました。そのEFIファイルをここにアップロードしました: grubia32.efi

次に、そのEFIファイルをデフォルトのgrub 64ビットバージョン(ルートとして実行)にコピーしました。

mkdir /boot/efi/EFI
mkdir /boot/efi/EFI/ubuntu
cp grubia32.efi /boot/efi/EFI/ubuntu/grubx64.efi

GRUB構成を更新します(ここでも、rootとして実行します)。

update-grub
update-grub2

この時点で、再起動して動作するかどうかを確認できます。あなたは幸運になるかもしれません。再起動すると、grubコマンドラインにダンプされました。これを入力して、grubに設定ファイルの場所を伝えます。

configfile (hd0,gpt2)/boot/grub/grub.cfg

そしてシステムはGRUBブートメニューに入りましたが、それはすべて意味不明なものでした。起動後、grub構成ファイルを更新してテキストベースのメニューを有効にし、grubを再インストールしてconfigfileの場所の問題を修正しました。

Sudo nano /etc/default/grub

コメント解除:GRUB_TERMINAL = "console" Ctl-Xと入力し、Yを押して保存します。

Grubを再インストールします。

Sudo grub-install

私は再起動し、今すべてがうねりのようです!うまくいきますように。

2
toomuchtv