LoginSignup
4
0

いよいよArch Linuxをインストールする〜Arch LinuxをT2チップを備えない古いIntel Macにインストールしようとする日々その3

Last updated at Posted at 2023-12-25

この記事は,Ubuntuはよく使うが,Arch Linuxは初めてという私 @zacky1972 が,まずは手近なT2チップを備えていない古いIntel MacにArch Linuxをインストールして習得していく過程を記録する駄文の3回目です.今回は,表題の通り,いよいよMacBook Air (11-inch, Early 2014, MacBookAir6,1)にArch Linuxインストールする作業を行いたいと思います.

シリーズ

  1. Arch LinuxをブートできるUSBメモリを用意する
  2. デュアル・ブート環境にするためにパーティションを区切る
  3. いよいよArch Linuxをインストールする(本記事)
  4. ネットワークの設定を見る
  5. Mac Pro (Mid 2010)にArch Linuxをインストールする
  6. ネットワークが繋がらない最小構成のままElixirをインストールして実行してみる
  7. ネットワークが繋がらない最小構成のままElixirをasdfではなくソースコードビルドしてインストールする

パーティションの状態

前回までにパーティションを次のように区切りました.

Device Size Type
/dev/sda1 200M EFI System
/dev/sda2 92.7G Apple HFS/HFS+
/dev/sda3 619.9M Apple boot
/dev/sda4 5.6G Apple HFS/HFS+
/dev/sda5 795.1G Microsoft basic data

今日はここから作業していきます.

macOSの起動セクションを作る(1回目)

下記の手順に従います.

まず,次のようにして/dev/sda4をマウントします.

mount /dev/sda4 /mnt

これで,ドキュメント中の/mountpoint/mntに置き換えられます.

試しに次のようにしてみます.

touch /mnt/mach_kernel

おや?書き込みができないようです.

一旦,アンマウントして,書き込みするようにしてマウントし直します.

umount /dev/sda4
mount -rw /dev/sda4 /mnt

しかし,依然として,書き込みができません.

下記の記事を見つけました.

hfsprogsなるものをインストールするようです.

Arch Linuxのパッケージマネージャのpacmanのドキュメントを読みます.

次のようにインストールします.

pacman -Sy hfsprogs

ターゲットがないと言われますね.

調べてみたら,レポジトリと同期する必要があるようです.

pacman -Syy

この後で,もう一度,hfsprogsをインストールします.

pacman -Sy hfsprogs

まだ見つかりません.下記をやってみても,見つからないようです.

pacman -Ss hfsprogs

次のようにアップグレードしようとすると,パーティションがいっぱいでできないと言われます.

pacman -Syyu

推測ですが,先にSSD(/dev/sda5)にArch Linuxをインストールして,ルートディレクトリ(/)をSSD(/dev/sda5)にマウントしてから,この手順をやるんじゃないでしょうかね.

Arch Linux を SSD にインストールする

というわけで,Arch LinuxをSSD(/dev/sda5)にインストールして,マウントしなおしてみたいと思います.

まず,下記のようにしてext4/dev/sda5をフォーマットします.

mkfs.ext4 /dev/sda5

次に下記のようにマウントします.

mount /dev/sda5 /mnt

続いて,次のインストール手順を行います.

pacstrap -K /mnt base linux linux-firmware

続いて,次の手順に移ります.

genfstab -U /mnt >> /mnt/etc/fstab
arch-chroot /mnt
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
hwclock --systohc

ここで /etc/locale.gen を編集しようとしてつまづきました.エディタであるviがありません.

pacmanviをインストールします.

pacman -Syyu
pacman -Sy vi

/etc/locale.genを編集して,ja_JP.UTF-8 UTF-8を有効にして,次のコマンドを実行します.

locale-gen

/etc/locale.confを次のように作成します.

locale.conf
LANG=ja_JP.UTF-8

英語キーボードなので,キーボードレイアウトはそのままにします.

/etc/hostnameを作成して,ホスト名を決めます.

Initramfsは研究してみたいので,設定します.

mkinitcpio -P

Root passwordを設定します.

passwd

macOSの起動セクションを作る(2回目)

下記に従って,ブートローダーを設定します.

今回は,Installing a boot loader to a separate HFS+ partitionに従うものと思います.

次のようにhfsprogsをインストールします.

pacman -Sy hfsprogs

依然としてパッケージが見つかりません.

どうも調べてみると,パッケージを作成してインストールする必要があるみたい.

ただし,下記手順でrootではmakepkgを実行できませんでした.

そこで,ユーザーを作成します.

参考

ユーザーzackyを作成します.ログインシェルは/bin/bashとします.

useradd -m -g wheel -s /bin/bash zacky

パスワードを設定します.

passwd zacky

sudoをインストールします.

pacman -Sy sudo

visudoで次の2行をコメントアウトします.

# Defaults env_keep += "HOME"

# %wheel ALL=(ALL) ALL

次のようにして,ユーザー権限になります.

sudo su zacky
cd

次のようにインストールします.

sudo pacman -S --needed base-devel git

次のようにhfsprogsをチェックアウトして,インストールします.

git clone https://aur.archlinux.org/hfsprogs.git ~/hfsprogs
cd ~/hfsprogs
makepkg -si

ここまでうまく終わったら,次のようにして,rootに戻ります.

exit

下記の記事にあるようにHFS+をマウントします.

mount -t hfsplus -o force,rw /dev/sda4 /mnt

下記の手順に従います.

touch /mnt/mach_kernel

今度は無事書き込めました.

mkdir -p /mnt/System/Library/CoreServices

将来課題

次に"Now, you can install any UEFI boot loader you want."の手順をしようとするのですが,ファイルが見つかりません.

rEFIndをインストールする手順をやってみます.

まず,パッケージをインストールします.

pacman -S refind

次のコマンドを実行すると,エラーになります.

refind-install

ESPを設定していないのだそうです.

ESPの説明はこちらです.

読んだ感じ,おそらくですが,下記の/dev/sda1を書き換えると言っているような気がします.

Device Size Type
/dev/sda1 200M EFI System
/dev/sda2 92.7G Apple HFS/HFS+
/dev/sda3 619.9M Apple boot
/dev/sda4 5.6G Apple HFS/HFS+
/dev/sda5 795.1G Microsoft basic data

しかし,デュアル・ブート環境に支障が出そうな予感がします.つまり,ここにインストールすると,Arch Linuxしか立ち上がらないのではないかという気がするのです.

そもそも,デュアル・ブート環境にしようというのは,保険の意味だったので,ここで決断して,Arch Linuxのみのシングル・ブートにしても良いのかもしれません.しかし,今後の研究材料ということで,ブート方法については,将来課題として,置いておこうと思います.

現状の起動シーケンス

現状でも,次のように操作することで,Arch Linux環境にすることができます.

  1. Arch LinuxのliveのUSBメモリを挿す
  2. optionキーを押しながら電源オン
  3. EFI boot (USB) を選択
  4. GRUBが立ち上がるので,Enterキーを入力
  5. (Arch Linuxが起動)
  6. mount /dev/sda5 /mnt
  7. arch-chroot /mnt
  8. sudo su zacky
  9. cd

これでユーザーzackyのユーザー権限で起動できます.お疲れ様でした!

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0