Archlinuxをインストールし、その後GRUBをインストールしました。 WindowsとArchの両方のインストールのメニューエントリを手動で入力しました。
GRUBは起動に問題はなく、Windowsに正常にロードできます。ただし、Archにはロードできません。 Linuxは、/deb/sda
ファイルのないリカバリシェルに私を追い込みます。ただし、USBは正しく検出されます。
これを引き起こしている原因と修正方法は?エラーログ全体をコピーする必要がありますか?それほど長くはありません。デバイス ''が見つからず、ttyにアクセスできないことを通知するだけです。
どうやらfstabは保存されなかったか、クリアされませんでした。このファイルを再構成すると、すべての問題が解決しました。
私の推測では、Archの_/boot/grub/grub.cfg
_エントリはデバイスに誤った名前を付けています。本当にエキサイティングな背景の詳細については、 永続ブロックデバイス ArchWikiの命名記事を参照してください。
私のArchサーバーの_grub.cfg
_には次の行があります。
_linux /boot/vmlinuz-linux-lts root=UUID=51167b47-d8b4-41e5-87d5-9c5a7bb6fbc1 ro quiet
_
「by-uuid」という名前を付けているようです。ファイル_/etc/fstab
_は「/ dev/sda?」を使用しますスタイル名ですが、自動生成され、コメントは/ dev/sda1が_grub.cfg
_と同じUUIDを参照していることを示しています。
これを修正するには、デュアルブートセットアップを使用している場合を除いて、GRUBを使用して Arch初心者向けガイド を使用してやり直します。ただし、_grub.cfg
_ファイルを別の場所に置き、「root =」の値が何であるかを確認します。
_grub-mkconfig -o /tmp/testgrub.cfg
_
私はそれを実行しました、そしてそれはこのように見えました:
_[root@splunge tmp]# grub-mkconfig -o /tmp/testgrub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-linux-lts
Found initramfs image: /boot/initramfs-linux-lts.img
Found fallback initramfs image: /boot/initramfs-linux-lts-fallback.img
Found linux image: /boot/vmlinuz-linux-lts
done
_
「menuentry'Arch Linux '」の下で、私はこの行を_/tmp/testgrub.cfg
_で見つけました:
_linux /boot/vmlinuz-linux-lts root=/dev/sda1 rw quiet
_
上からのUUIDの代わりに「/ dev/sda1」と表示されているため、別の方法が必要になる可能性があることがわかります。 _/etc/fstab
_は "/ dev/sda1"エントリのすぐ上で何と言っていますか? UUIDの場合は、_/boot/grub/grub.cfg
_を編集して、UUIDでルートパーティションを設定することをお勧めします。
[〜#〜] edit [〜#〜]_/boot/vmlinuz-linux
_が存在すると言うので、GRUBを再インストールします。 _pacman -S grub
_。 _grub-mkconfig
_を構成するシェルスクリプトが何かで混乱し、適切な_grub.cfg
_ファイルを作成できなくなっています。次に、上記の_grub-mkconfig
_コマンドを試して、_/boot
_でカーネルが見つかるかどうかを確認します。もしそうなら、それを実際に再実行して、「ArchLinux」menuentryセクションの「root =」パラメータが何であるかを確認してください。