it-swarm-ja.com

ArchLinuxをUEFI / GPTシステムにインストールしたかったのですが、プロセスについて質問がありました

私の最初の正式な質問は、「GPT/UEFIシステムにArchLinuxをインストールするにはどうすればよいですか」でした。

これは、次の場所にあるArchLinuxコミュニティが提供するドキュメントで対処することを目的としています。

https://wiki.archlinux.org/index.php/Installation_guide

ドキュメントに従おうとしましたが、プロセスを機能させることができませんでした。もっと正確に言うと、マウントのセットアップとベースシステムのインストールで問題が発生しました。 Arch Linuxは高度にモジュール化された非線形の方法で文書化されているため、ガイドに従っている間は、あるセクションから別のセクションにかなり頻繁にジャンプする必要があります。彼らのガイドから物事の順序を理解することができなかったので、私はこれで迷子になったに違いありません。私は自分のプロセスを一緒にまとめることになりました(ここのArch Linuxフォーラムの人々の助けを借りて: https://bbs.archlinux.org/viewtopic.php?id=196339 )そして私はしたかった他の誰かを助けることができる場合に備えて、ここに投稿してください。

Arch Linuxフォーラムに調査結果を投稿してから、私のスレッドのビュー数が1,000を超えていることに気付いたので、それが一部の人々の助けになることを願っています。可用性を高めるために、ここに投稿するのも良いと思いました。

これが私が持っているすべてのもので、最初から最後まで、すべて1か所にあります。

これはAsusM5A97 R2.0の場合であり、システムが異なればUEFIの実装も異なる可能性があることに注意してください。

1
Volumetricsteve

Arch wikiに 初心者向けガイド があり、Archのインストールプロセスに慣れていないユーザーにとってはわかりやすいことをご存知ですか?

インストールは非常に簡単なので、ここでは完全には説明しません。UEFI関連の部分を強調するだけです。

  • まず、GPTパーティションテーブルを使用する必要があります。 partedではなくgdisk(GPTでfdiskに相当)を使用する方が好きなので、EFIシステムパーティションを作成する必要があります。 最小サイズ で、4Kセクタードライブの場合は260MB、従来の512Bセクタードライブの場合は100MBです。安全にプレイでき、常に260MB以上を使用できます。 gdiskにパーティションを作成するときは、タイプをef00に設定します。

  • パーティションが作成されたら、FAT32ファイルシステムをそのパーティションに配置します-mkfs.fat -F32 /dev/sdX1

  • 他のパーティションを必要に応じて作成およびフォーマットし、wikiに従ってマウントします。/bootパーティションを作成しないでください。そのためにEFIシステムパーティションを使用できます。

  • そのEFIパーティションを/mnt/boot --mount /dev/sdX1 /mnt/bootにマウントします。

  • インストールガイドに従いますが、ブートローダーはインストールしないでください-LinuxカーネルはUEFIアプリケーションとして直接起動できるため、必要ありません。また、 wikiに記載されています なので、インストールするだけで済みます。 efibootmgr(UEFIブートエントリを管理するためのパッケージ)そして次のコマンドを実行して、UEFINVRAMでArchシステムを宣言します。efibootmgr -d /dev/sdX -p 1 -c -L "Arch Linux" -l /vmlinuz-linux -u "root=/dev/<root partition, UUIDs or LABELs can be used> initrd=/initramfs-linux.img"

Chrootを終了し、魔法を賞賛してください。

4
user256743

まず、コマンド:

parted /dev/sda
mklabel gpt
mkpart ESP fat32 1MiB 513MiB
set 1 boot on
mkpart primary ext4 513MiB 100%
quit
mkfs.vfat -F32 /dev/sda1
mkfs.ext4 /dev/sda2
mount /dev/sda2 /mnt
mkdir -p /mnt/boot
mount /dev/sda1 /mnt/boot
pacstrap -i /mnt base base-devel
genfstab -U -p /mnt >> /mnt/etc/fstab
check fstab with 'nano /mnt/etc/fstab'
Arch-chroot /mnt /bin/bash
locale-gen
echo LANG=en_US.UTF-8 > /etc/locale.conf
export LANG=en_US.UTF-8
hwclock --systohc --utc
echo SomeHostname > /etc/hostname
echo SomeHostname > /etc/hosts
systemctl enable [email protected]
passwd
pacman -S grub os-prober efibootmgr
mkdir -p /boot/efi
mount -t vfat /dev/sda1 /boot/efi
modprobe dm-mod
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-    id=Arch_grub --recheck --debug
mkdir -p /boot/grub/locale
cp /usr/share/locale/en\@quot/LC_MESSAGES/grub.mo /boot/grub/locale/en.mo
grub-mkconfig -o /boot/grub/grub.cfg
pacman -S wget Zip unzip
cd ~
wget http://dl.dropbox.com/u/17629062/Shell2.Zip
unzip Shell2.Zip
cp ~/Shell2/UefiShellX64.efi /boot/efi/shellx64.efi
reboot
F2 to get into ASUS's pre-boot GUI
Shell> bcfg boot add 3 fs1:\EFI\Arch_Grub\grubx64.efi "Arch_Grub"
Shell> bcfg boot dump -v
reboot
pacman -Syyu

このプロセスで注意すべき重要な点は、UEFI標準で必要とされるESPパーティションと、残りのデータを保持するための他のパーティションの作成です。

1
Volumetricsteve