【自己解釈】OSセットアップ基礎を知る_ArchLinux編

パソコン
この記事は約9分で読めます。

今回はArchLinuxをHyper-Vの仮想環境を使用し構築していきます。私自身2度構築に失敗していますが、少しづつ仕組みを理解できて来たので、私の個人的解釈を入れつつ構築作業をメモしていきます。

ArchLinux とは、シンプルかつ自由度が高く、上級者向けのローリングリリースのLinuxディストリビューションです。

ArchLinux初回起動

今回はUEFIベース(Hyper-v的には第2世代)でArchLinuxのisoでブートします。・・・がStart PXE over IPv4 と表示され、うまくisoイメージからブートしてくれません。こういう場合は、セキュアブートが有効になっていることが原因の場合がほとんどです。なので一度仮想マシンを停止させ、設定からセキュアブートを有効にするのチェックを外します。再度立ち上げてみましょう。

今度はうまく立ち上がりましたね。【ArchLinux install medium】から立ち上げましょう。

ArchLinuxの基本構成イメージ

ArchLinuxを構成するときはソフトウェアイメージをつかむことが大切です。下記のイメージとしてとらえて構成してみてください。

※UEFIベース(Hyper-V的には第2世代)で構成するため、パーティション構成はGPT

設定しやすくするために起動直後にすること

  • キーボードマップを日本語キーボード(jp106)用へ
    • # loadkeys jp106
  • インターネットに接続できているか確認する
    • # ping www.yahoo.co.jp
      • テンポよく応答あれば問題ないです。※ctrl + c で止める。
      • 後工程でパッケージを入れるためにインターネット必須です。
  • 日本時間で設定し、時刻同期できるか確認する
    • # timedatectl set-timezone Asia/Tokyo
    • # timedatectl
      • system clock synchronized:yes になってればOK!
      • Local time が今の日本時刻になっているはず。

パーティションを区切ってArchLinuxをインストールする

先に置いている基本イメージをもう一度貼ります。登録している容量(GB)は無視してください。

># lsblk を実行してみてください。これで表示される sda が、HDD の容量となります。それ以外に表示されているものは HDD の容量とは別のものです。(iso イメージディスクや外部ディスク等となります。)このsdaのパーティションを区切っていきます。

パーティションを区切る

ここからは “・” の行が実際に入力するコマンドになります。小さい〇は補足やポイントを記載しています。

  • # gdisk /dev/sda
    • HDDである”sda”は /dev の下に居ますので gpt で sda のパーティション区切ります
  • Command(? for help): o
  • This option deletes all partitions and creates a new protective MBR.
    proceed? (Y/N): y
boot領域用パーティション(EFI領域)
  • Command(? for help): n
  • Partition number (1-128, default 1):
    • 何もせず Enter で適当な数字が使用される
  • First sector ~:
    • 何もせず Enter で適当な数字が使用される
  • Last sector ~: +512M
    • 公式推奨サイズ
  • Hex code or GUID (L to show codes,Enter = 8300): ef00
    • ef00 が、boot領域として使用する際のコード
Swap領域用パーティション(仮想メモリ領域) ※無くても動く
  • Command(? for help): n
  • Partition number (1-128, default 2):
    • 何もせず Enter で適当な数字が使用される
  • First sector ~:
    • 何もせず Enter で適当な数字が使用される
  • Last sector ~: +1G
    • 仮想メモリとして確保したい容量
  • Hex code or GUID (L to show codes,Enter = 8300): 8200
    • 8200 が、Linux swap領域として使用する際のコード
Linuxシステム領域用パーティション(Windowsで言う Cドライブ)
  • Command(? for help): n
  • Partition number (1-128, default 3):
    • 何もせず Enter で適当な数字が使用される
  • First sector ~:
    • 何もせず Enter で適当な数字が使用される
  • Last sector ~:
    • 何もせず Enter で残り領域で確保できる最大容量で適用される
  • Hex code or GUID (L to show codes,Enter = 8300): 8300
    • 8300 が、Linux ファイルシステム領域として使用する際のコード

Linuxシステム領域用パーティションの作成で空き領域を残して構成し、もう一度同じことを繰り返すとWindowsでいうGドライブやDドライブを作成することができる。

  • Command(? for help): w
  • Final checks complete. Acout to write GPT data.THIS WILL OVERWRITE EXISTING
    PARTITIONS!!
  • Do you want to proceed?(Y / N): y
  • OK; writing new GUID partition table (GPT) to /dev/sda.
  • The operation has completed successfully.

区切ったパーティションをフォーマットして使用できる状態にする

【各パーティションをフォーマットする形式】

sda1(boot):FAT32
sda2(swap):swap
sda3(system):ext4

  • mkfs.vfat -F32 /dev/sda1
  • mkswap /dev/sda2
  • mkfs.ext4 /dev/sda3

OSインストールの前準備(フォーマットしたパーティションをマウント)

OS(パッケージ/ブートローダ)インストールするために、現在のセットアップ用領域にマウントしていきます。

  • mount /dev/sda3 /mnt (Linux システム領域マウント
  • mkdir /dev/boot (boot領域マウント用フォルダ作成)
  • mount /dev/sda1 /mnt/boot (boot領域マウント)
  • swapon /dev/sda2

/var 等他領域を作成したい場合は /mnt 配下に適切なディレクトリを作成してマウントしてください。

OS(パッケージ/ブートローダ)のインストール

ここはまだまだ勉強中ですので、参考にさせていただいたサイトのリンクを張らせていただき、コマンド参照させていただきます。

【備忘録】Arch Linuxのインストール
こんにちは!今回はArch LinuxをノートPCにインストールしたので、手順とポイントを備忘録として残しておこうと思います。 今まではManjaro Linuxを使用していたのですが、色々いじくって...
  • pacstrap /mnt base base-devel linux linux-firmware grub dosfstools efibootmgr netctl iw wpa_supplicant networkmanager dialog xfsprogs vi nano
    • なんかエラーがちょこちょこ出てますが、関係ないパッケージのエラーと信じて突き進みます。
  • genfstab -U /mnt >> /mnt/etc/fstab
    • fstab というファイルシステムの情報を記載したファイルを作成します。起動時にどのパーティションをマウントするかなどが指定できます。

基本的にはここまででインストール作業は終了です。

インストールしたファイルシステムに移動し微調整

arch-chroot コマンドで、OS(パッケージ類)をインストールした /mnt へ移動します。

  • arch-chroot /mnt /bin/bash
  • vi /etc/locale.gen
    • en_US.UTF-8 UTF-8 ←#を削除。
    • ja_JP.UTF-8 UTF-8 ←#を削除。
  • locale-gen
  • echo LANG=en_US.UTF-8 > /etc/locale.conf
  • export LANG=en_US.UTF-8
  • ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
  • hwclock –systohc –utc
  • echo archlinux > /etc/hostname
  • passwd
  • grub-install –target=x86_64-efi –efi-directory=/boot –bootloader-id=arch_grub –recheck
    • ここで efibootmgr : not found エラーが発生。
    • ⇒pacman -S efibootmgr 実行しパッケージを追加することで、問題なく実行できました。
  • mkdir /boot/EFI/boot
  • cp /boot/EFI/arch_grub/grubx64.efi /boot/EFI/boot/bootx64.efi
  • grub-mkconfig -o /boot/grub/grub.cfg

exit

ここまで実行した後に、reboot 実行するとこれまでのインストール画面とは異なり、ArchLinuxの起動画へ遷移するようになりました。

Hyper-Vを使用しているときは、Hyper-Vマネージャーで、ArchLinuxをインストールした仮想マシンから、iso起動イメージをアンマウントしないとうまく立ち上がらないかもしれません。

あとがき

今回はWindowsのHyper-VでArchLinuxをisoイメージから、インストールするところまでやってみました。まだまだ理解が及んでいないところが多いので、一例として見ていただければと思います。また、気づいたところは随時修正していきます。

また、今回インストールしたArchLinuxを使用して、何か出来たらその時はまた記事にしますので、良ければまた見てください。

では。

コメント

タイトルとURLをコピーしました