お米炊けるまで備忘録

プログラミング数年目のがくせい

VMware上でArchLinuxを動かしたかった

意気揚々と書き始めたはいいものの、結局途中までしか書けていない

今回はArchLinuxに手を出した。興味の対象がコロコロ変わっているがともかく。

基本的に公式wikiのガイドに従って作業した。

動作環境

インストールメディアの取得

公式のダウンロードページから日本のミラーサイトを選択する。

「archlinux-2015.01.01-dual.iso」をダウンロードする。

仮想マシン作成

VMware Fusionを起動して新規に仮想マシンを作成する。

f:id:hakumai164:20150117010032p:plain

先程ダウンロードしたisoを選択する。
OSの種類の選択はLinuxの欄にArchLinuxの項目が無いので「Other Linux 3.x カーネル (64 ビット)」を選択した。
カーネルのバージョンは公式のダウンロードページで確認できる)

f:id:hakumai164:20150117010945p:plain

仮想マシンの作成後、設定から仮想ハードディスクのサイズを20GBとした。ここは自由に。使い方にも依るがこんなに必要無い気がする

起動→インストール作業

起動後に表示されるメニューでBoot Arch Linux (x86_64)を選択。

f:id:hakumai164:20150117012314p:plain

コマンドラインが表示されて入力を受け付けるようになったら作業開始。

キーボードレイアウト設定の変更

初期状態ではキーボードレイアウトが「us」に設定されており、キーと実際に入力される文字が一部、一致しないので「jp106」に変更する。

# loadkeys jp106
ネットワーク疎通確認

pingコマンドでネットワークに接続できるか確認。VMware上ならば使用している端末がネットワークに接続されていればおそらく問題は無い...はず

# ping -c 3 www.google.com
パーティション分割

パーティション分割の方式としてMBR(Master Boot Record)とGPT(GUID Partition Table)があるが、ここではMBRを使用する。

fdiskコマンドでパーティションの設定に入る。Linuxでは各種デバイスもファイルとして/dev以下に配置されるが、仮想ディスクは/dev/sdaとして配置されている。

# fdisk /dev/sda

「o」と入力して新規にDOSパーティションテーブルを作成する。
(DOS:Disk Operating System、外部ディスクを記憶装置として使用するOS)

Command (m for help): o

「n」と入力して新たにパーティションを作成する。
パーティションの種類、番号、開始セクタを設定するが、デフォルトの設定を使用するので何も入力せずに確定する。

Command (m for help): n
Select (default p):
Partition number (1-4, default 1):
First sector (2048-41943039, default 2048):

次に終了セクタを設定するが、これは開始セクタからのパーティションのサイズで指定できるので、ここでは「+10G」と入力する。

Last sector, +sectors or +size{K,M,G,T,P} (2048-41943039, default 41943039): +10G

同様に2つ目のパーティションを作成する。残りのセクタをすべて使うので終了セクタもデフォルトの設定で良い。

Command (m for help): n
Select (default p):
Partition number (1-4, default 2):
First sector (20973568-41943039, default 20973568):
Last sector, +sectors or +size{K,M,G,T,P} (20973568-41943039, default 41943039):

「p」と入力するとパーティションテーブルのプレビューを確認できる。

Command (m for help): p

問題無ければ「w」と入力してディスクに書き込む。

Command (m for help): w

ここで作成したパーティションはsda1、sda2という名前で/dev以下に配置される。

ファイルシステム構築

OS上でハードディスクを使用するには作成したパーティション上にファイルシステムを作成する必要がある。ここではext4ファイルシステムを使用する。 ファイルシステムの作成にはmkfsコマンドを使用する。

mkfs -t ext4 /dev/sda1
mkfs -t ext4 /dev/sda2
ファイルシステムのマウント

ディスク上の作成したファイルシステムにアクセスするにはマウントという作業が必要になる。
マウントを行うことで、ファイルシステムをディレクトリの1つとして認識し使用することができる。
マウント用のディレクトリとして /mnt が用意されているのでそれを使用する。

まず、/dev/sda1 上のファイルシステムを /mnt にマウントする。

# mount /dev/sda1 /mnt

次に /mnt 上に homeディレクトリを作成し、 /dev/sda2 をマウントする。

# mkdir /mnt/home
# mount /dev/sda2 /mnt/home
ベースシステムのインストール

sda1とsda2のマウントによって、作成したパーティション内での作業が可能になったので、 /mnt をシステムのルートディレクトリとして、ベースとなるシステムをこの中にインストールする。 ベースシステムのインストールにはpacstrapコマンドを使用する。baseパッケージと補助ツールをまとめたbase-develパッケージをインストールする。

# pacstrap /mnt base base-devel

各種ファイルがダウンロード、インストールされる。

fstabファイルの作成

ファイルシステムのマウントの際には、 /etc/fstab に記述されているファイルシステムに関する情報を参照する。
このfstabファイルは genfstab コマンドで生成できる。インストールしたシステムのルートディレクトリを指定する。

# genfstab -U -p /mnt >> /mnt/etc/fstab

この後

この後、インストールした環境の中に入って作業していく。続きはそのうち書きたい
(書くとは言っていない)