LFS on VirtualBox に挑戦 その1 - 環境準備
2015.01.19 Author: Jas
あけましておめでとうございます。
開発のお部屋の住人のJasです。
今年の抱負の1つは、「Linuxの知識を(さらに)高める」に決まりました。
ということで、手始めとして、LFS(Linux From Scratch)に挑戦することにします。
LFSとは、ソースからコンパイルして自分用のLinuxシステムを構築するための入門用の教育プロジェクトです。
既存のディストリビューションが存在していますが、敢えて自分で1から組み立て、Linuxの構成要素を知ることで、よりLinuxを理解するのを今回の目的としています。
早速ですが、LFS構築に必要な環境などを準備します。
手軽に環境を用意できるので、VirtualBox上で作業を進めていきたいと思います。
LFSは、現時点での最新版(7.6)の手順に従って構築していきます。
今回使ったものは以下の通りです。
- LFSブック(教科書) 7.6(http://lfsbookja.sourceforge.jp/7.6.ja/)
- CentOS 6.5 Minimalインストールの仮想マシン(64bit) on VirtualBox
まずはLFSを構築するためのホストマシンを準備します。
チェックスクリプトが用意されているので、結果を確認しながら必要なパッケージをインストールします。
gawkやxz等、一部のパッケージはyumでインストールできるものでは古かったので、ソースコンパイルしました。
# yum install bison # yum install patch # yum install gcc # yum install gcc-g++ # yum install byacc# wget http://ftp.jaist.ac.jp/pub/GNU/gawk/gawk-4.0.1.tar.gz
# tar xvf gawk-4.0.1.tar.gz
# cd gawk-4.0.1
# ./configure
# make
# make install# wget http://tukaani.org/xz/xz-5.2.0.tar.gz
# tar xvf xz-5.2.0.tar.gz
# cd xz-5.2.0
# ./configure
# make
# make install
ホスト要件がクリアできたら、LFS用のディスクを追加します。
VirtualBoxのストレージ設定から、SATAに仮想HDD(固定ディスク・10GB)を追加し、仮想マシンにログインしてHDDの追加を確認します。
$ dmesg | grep sdb
sd 3:0:0:0: [sdb] 20971520 512-byte logical blocks: (10.7 GB/10.0 GiB)
sd 3:0:0:0: [sdb] Write Protect is off
sd 3:0:0:0: [sdb] Mode Sense: 00 3a 00 00
sd 3:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sdb: sda1 sda2
sd 3:0:0:0: [sdb] Attached SCSI disk
問題なくHDDが認識されたので、パーティションを作成します。
今回は以下のようなディスクレイアウト(sdb1~sdb3)にしてみました。
/dev/sdb1 100MB ext2 ... /boot パーティション
/dev/sdb2 8GB ext4 ... ルートパーティシィb
/dev/sdb3 2GB ext4 ... /home パーティション
なお、スワップパーティションはホストと共有としました。
LFSの教科書に従って、パーティションにファイルシステムを作成しマウントします。
# export LFS=/mnt/lfs # mkdir -pv $LFS # mount -v -t ext4 -o defaults /dev/sdb2 $LFS # mkdir -v $LFS/home # mount -v -t ext4 /dev/sdb3 $LFS/home # mkdir -v $LFS/boot # mount -v -t ext2 /dev/sdb1 $LFS/boot
これでLFSを構築する環境の準備が整いました。
次回は、LFS構築の一時的環境(ツールチェーン)の構築を行います。