Arch LinuxをVirtualBox上にインストール


基本的にはArchWikiの[ビギナーズガイド](https://wiki.archlinuxjp.org/index.php/%E3%83%93%E3%82%AE%E3%83%8A%E3%83%BC%E3%82%BA%E3%82%AC%E3%82%A4%E3%83%89)に従って進めていきます。

## 環境

* MacOSX El Capitan
* VirtualBox 5.0.10
* Arch LinuxのISOファイル [ダウンロードサイト](https://www.archlinux.org/download/)


## 仮想マシン作成

* タイプ: Linux
* バージョン: Arch Linux (64bit)
* メモリー: 1024MB
* 仮想ハードディスク: 20GB
* 光学ドライブ: archlinux-2015.11.01-dual.iso

あとはデフォルトで。



## 光学ドライブからブート

Arch LinuxのISOファイルを入れた状態で仮想マシンをブートすると、(たぶん)GRUBのメニューが出てきます。

![Kobito.UmIn8f.png](https://qiita-image-store.s3.amazonaws.com/0/2492/777e54be-de72-28a6-3f81-f8fd0047239d.png "Kobito.UmIn8f.png")

``Boot Arch Linux (x86_64)``を選択。

無事ブートできれば、rootユーザーで自動ログインされます。

![Kobito.9Lat9Y.png](https://qiita-image-store.s3.amazonaws.com/0/2492/4c5a27cc-01d9-e90a-2961-4b07d66faae3.png "Kobito.9Lat9Y.png")



## 言語の選択

インストール中のトラブルについて、日本語でエラーを吐かれるとググラビリティが低くなるので英語のままで進めます。

キー配置がUSキーボードのままだと困るので、JP106配置に変更しておきます。

![Kobito.OJzFhM.png](https://qiita-image-store.s3.amazonaws.com/0/2492/51b189bb-44df-979f-0d44-fdf1d1c3ac8d.png "Kobito.OJzFhM.png")



## インターネット接続の確立

VirtualBoxのウィザードにお任せで仮想マシンを作ったのであれば、自動的にDHCPでアドレスが振られて、ホストマシン経由でインターネットに接続できているはず。

![Kobito.md2fFW.png](https://qiita-image-store.s3.amazonaws.com/0/2492/061f27f9-c97c-8d87-4990-5ea5ede18bd2.png "Kobito.md2fFW.png")



## ドライブの準備

### デバイスの確認

``lsblk``コマンドで認識されているデバイス一覧を確認します。

![Kobito.Dk4SN9.png](https://qiita-image-store.s3.amazonaws.com/0/2492/49ea3dc0-8849-6703-7be5-03f1f729a6ac.png "Kobito.Dk4SN9.png")

先ほど作成した20GBのドライブは``sda``として認識されているようです。 
違う名前で認識されている場合は適宜読み替えて下さい。


### パーティションテーブルのタイプの選択

パーティショニングツールの選択肢がいくつかありますが、ビギナーズガイドで使われている``parted``で進めていきます。

![Kobito.yIoIax.png](https://qiita-image-store.s3.amazonaws.com/0/2492/67fe7e1c-a921-963f-23c7-1cf1fb66effa.png "Kobito.yIoIax.png")


### パーティションスキーム

UEFI環境に慣れていきたいので、``UEFI/GPT``で作ってみます。 
ビギナーズガイドの「UEFI/GPTの例」に従って、EFI System Partitionを作成します。 
残りのスペースは全部``/``へ。

![Kobito.UOaMjL.png](https://qiita-image-store.s3.amazonaws.com/0/2492/1c45f106-bf75-d8f6-2556-8be4f2d7c404.png "Kobito.UOaMjL.png")


### ファイルシステムの作成

作成したパーティションにファイルシステムを作成します。

![Kobito.MxSPMn.png](https://qiita-image-store.s3.amazonaws.com/0/2492/24c58f29-1d24-9d69-d4d8-6aa40157533e.png "Kobito.MxSPMn.png")

EFI System Partitionは``vfat``、``/``は``ext4``で作成。


### パーティションのマウント

``/``パーティションのマウント。

![Kobito.IgNjPr.png](https://qiita-image-store.s3.amazonaws.com/0/2492/2cf3453e-1c7b-6a38-e025-e663169de53e.png "Kobito.IgNjPr.png")

さらに、EFI System Partitionを``/boot``にマウントします。 
マウント先のディレクトリがないといけないので、先に``mkdir``しておきます。

![Kobito.C3Wso8.png](https://qiita-image-store.s3.amazonaws.com/0/2492/41113ccd-c966-d4b4-4f9e-3804f4dc5f86.png "Kobito.C3Wso8.png")


## ミラーの選択

日本のミラーサイトを一番上に持ってきます。

![Kobito.zK1ldh.png](https://qiita-image-store.s3.amazonaws.com/0/2492/175936ee-6860-e267-c2e1-8fbc2c0e17bc.png "Kobito.zK1ldh.png")



## ベースシステムのインストール

![Kobito.AqIrgA.png](https://qiita-image-store.s3.amazonaws.com/0/2492/09ca0117-b8d0-0d88-d51e-04648c176e11.png "Kobito.AqIrgA.png")

``base``と``base-devel``の中から何をインストールするのか訊かれます。 
全部入れる場合はそのままEnter。

パッケージを沢山ダウンロードするので、そこそこ時間がかかります。



## fstabの生成

![Kobito.xtrjbs.png](https://qiita-image-store.s3.amazonaws.com/0/2492/306f79c1-ab1c-1900-43be-c84560bbc4ce.png "Kobito.xtrjbs.png")



## Chrootとベースシステムの設定

![Kobito.AMDw62.png](https://qiita-image-store.s3.amazonaws.com/0/2492/178ca59d-926c-6400-e7a9-4d2dfb70d239.png "Kobito.AMDw62.png")


### ロケール

``/etc/locale.gen``を編集して、必要なロケールを有効にします。 
今回は``en_US.UTF-8 UTF-8``と``ja_JP.UTF-8 UTF-8``の二つを選びました。

ファイルの編集が終わったら``locale-gen``コマンドを実行します。

![Kobito.OxhmVa.png](https://qiita-image-store.s3.amazonaws.com/0/2492/d3cf86bc-66f1-0c68-6d4a-12e656c67c12.png "Kobito.OxhmVa.png")

引き続いて``/etc/locale.conf``にロケールを追加します。 
この段階ではまだ日本語表示ができない為、とりあえず英語に設定しておきます。

![Kobito.raITrx.png](https://qiita-image-store.s3.amazonaws.com/0/2492/c9ec6873-81f5-7edd-a0b4-7f55de6ef000.png "Kobito.raITrx.png")


### コンソールフォントとキーマップ

キー配置の設定を設定ファイルに仕込んでおきます。

![Kobito.xnC1lh.png](https://qiita-image-store.s3.amazonaws.com/0/2492/4968a745-53c6-0675-8920-9c00cd640f73.png "Kobito.xnC1lh.png")


### タイムゾーン

``/etc/localtime``という名前でシンボリックリンクを作ります。

![Kobito.05jG3q.png](https://qiita-image-store.s3.amazonaws.com/0/2492/827f3394-296c-7b99-8522-96025f393e7a.png "Kobito.05jG3q.png")


### ハードウェアクロック

ビギナーズガイドにはWindowsと共存する場合の注意点とか書いてありますが、今回は仮想マシンなので気にせず設定します。

![Kobito.2WQ6ft.png](https://qiita-image-store.s3.amazonaws.com/0/2492/06a9a99d-de14-f631-948d-34637e3eecdd.png "Kobito.2WQ6ft.png")


### カーネルモジュール

特に設定なし。


### ホスト名

好きなホスト名に設定。今回は安直に``arch``にしました。

![Kobito.JXDviv.png](https://qiita-image-store.s3.amazonaws.com/0/2492/96a465cb-c592-4884-cbd1-2401f898cbc2.png "Kobito.JXDviv.png")


### ネットワークの設定

``ip link``コマンドでインターフェイス名を調べて、``dhcpcd``サービスを有効にします。

![Kobito.lxcouf.png](https://qiita-image-store.s3.amazonaws.com/0/2492/184b414e-077e-03d4-9b03-4a8fd383f428.png "Kobito.lxcouf.png")


### Initial ramdisk 環境の作成

設定の必要なし。


### rootパスワードの設定

``passwd``コマンドでrootパスワードを設定します。

![Kobito.KDaNpz.png](https://qiita-image-store.s3.amazonaws.com/0/2492/59be5e6b-e9ad-796d-0f3a-77850a09278a.png "Kobito.KDaNpz.png")


### ブートローダのインストールと設定

Intel製CPUの場合は追加設定が必要なようです。 

> Intel の CPU を使っている場合、intel-ucode パッケージをインストールしてマイクロコードのアップデートを有効化してください。

最近のMacもIntel入ってるなので、こちらを参考に設定します。
[Intel のマイクロコードのアップデートを有効にする](https://wiki.archlinuxjp.org/index.php/%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E3%82%B3%E3%83%BC%E3%83%89#Intel_.E3.81.AE.E3.83.9E.E3.82.A4.E3.82.AF.E3.83.AD.E3.82.B3.E3.83.BC.E3.83.89.E3.81.AE.E3.82.A2.E3.83.83.E3.83.97.E3.83.87.E3.83.BC.E3.83.88.E3.82.92.E6.9C.89.E5.8A.B9.E3.81.AB.E3.81.99.E3.82.8B)

``intel-ucode``パッケージをインストール。

![Kobito.BwB4rN.png](https://qiita-image-store.s3.amazonaws.com/0/2492/cc170fc2-7043-9f15-d1b8-2a52391eee01.png "Kobito.BwB4rN.png")

``dosfstools``をインストール。

![Kobito.TX1qbr.png](https://qiita-image-store.s3.amazonaws.com/0/2492/31c97caa-9f43-376e-79c9-dc69afddb6b1.png "Kobito.TX1qbr.png")

自動インストールスクリプトを実行。

![Kobito.M5Oa1l.png](https://qiita-image-store.s3.amazonaws.com/0/2492/f0afc374-c168-1ecd-6256-207edf55404c.png "Kobito.M5Oa1l.png")

``/boot/loader/entries/arch.conf``を作成します。 
ビギナーズガイドの内容に加えて、``intel-ucode``に関する設定も必要です。

![Kobito.l91IiJ.png](https://qiita-image-store.s3.amazonaws.com/0/2492/4ddbf5a5-5138-3480-50b0-64f8879a76dc.png "Kobito.l91IiJ.png")


``/boot/loader/loader.conf``を編集します。 
ビギナーズガイドでは新規作成することになっていますが、既存のファイルがあったので念のため退避させておきます。

![Kobito.i1fUA5.png](https://qiita-image-store.s3.amazonaws.com/0/2492/226d9284-9bc2-59f5-c1fc-0cb6d6b15663.png "Kobito.i1fUA5.png")



## パーティションのアンマウントと再起動

``exit``でchroot環境から抜けて、再起動。

このとき、ISOファイルをアンマウントしておかないと永久ループになります。 
また、今回はUEFIを選択したので、仮想マシンの設定で「EFIを有効化」をオンにしておく必要があります。

![Kobito.S48K39.png](https://qiita-image-store.s3.amazonaws.com/0/2492/0d085e43-1f78-ef38-ab7a-517b176c4a92.png "Kobito.S48K39.png")

上手くインストールできていれば、先ほど設定したパスワードを使ってrootユーザーでログインできます！

![Kobito.uAIlvP.png](https://qiita-image-store.s3.amazonaws.com/0/2492/2da5c223-c4c8-d323-4719-7990f2f31b1f.png "Kobito.uAIlvP.png")