Ubuntu でサーバ構築 -その2-

今回は実際に Ubuntu 12.04 LTS のインストールを行います。

今回は 64bit の Ubuntu 12.04 LTS を用います。また,インストールを行う PC は仮想マシンを用いました。仮想マシンの構成は以下のとおりです。

  • CPU : 2CPU 2.67GHz
  • メモリ : 2GB
  • HDD : 20G
  • ビデオメモリ : 32MB

また,サーバとして運用する場合,ストレージの容量が足りなくなった際に,物理的なドライブを用いたストレージ管理では簡単には容量を追加できないため,容易にストレージの追加,容量の拡大ができるように,論理ボリュームマネージャ (LVM : Logical Volume Manager)を用いて,Ubuntu を構成したいと思います。

LVM の仕組みを簡単に説明すると,OS における物理的なマウントポイントのような物理ボリューム (PV : Physical Volume)と,ハードディスクドライブに相当する,物理ボリュームをグループ化したボリュームグループ (VG : Volume Group),一般的なパーティションに相当する,ボリュームグループを切り分けた論理ボリューム (LV : Logical Volume)で構成されます。

また,LV はブロック単位で数えられ,その単位を PE (Physical Extent)といいます。1つの LV で使用出来る PE の数は決まっており,そのため,PE のサイズによって,LV の容量の限界が決められます。標準の PE は 4MB ですが,これだと,LV のサイズが 256GB 程度に限定されるため,私の環境では PE を 32MB としています。これで 2TB 程度 の LV を扱うことができます。

Ubuntu では標準的なインストールでは,LVM では構成されないため,Live CD 環境でLVM を構成したあと,インストールを進める必要があります。

*Ubuntu 12.10 からインストール時に LVM を構成できるようになりました。

Ubuntu 12.04 LTS インストール手順

1.インストールしたい PC に Ubuntu 12.04 LTS の DVD を挿入し,DVD からブートさせます。

2.キーボードと人の画面が出てきたら,すぐに何かキーを押す。

3.下図のような言語選択画面が表示されるので,日本語を選択。

ubuntu1

4.「インストールせずに Ubuntu を試してみる」を選択。

u2

5.デスクトップ画面が表示されたら,画面左上のダッシュホームをクリックし,検索窓に terminal と入力し,「Terminal 」を起動。

u4

6.Terminal が起動したら,下記のコマンドを実行し,LVMを管理する lvm2 というソフトウェアをインストールする。

#管理者権限になります。
sudo su

#パッケージリストを更新します。
apt-get update
#*ここで apt-get upgrade は行わないでください。

#LVMソフトウェアをインストール
apt-get install lvm2

#続行するかどうか聞かれたら「y」を入力。

7.次に,ブート用のパーティションと LVM 用のパーティションを切ります。私の環境では,ハードディスクは1つで,シングルブート環境で他に OS がないので,1つのハードディスク全体を用います。また,ブート用のパーティションを /dev/sda1,LVM 用のパーティションを /dev/sda2 とします。パーティションのサイズはブート用が 200MB,LVM 用がブート用パーティションを除いた残り全てです。私の環境の場合,インストールするハードディスクは /dev/sda で表されます。複数ハードディスクを用いる場合,複数の OS を1つのハードディスクにインストールしたい等,パーティションが既にある場合は,適宜置き換えてください。

#認識しているディスクの一覧を確認
fdisk -l

#インストールするハードディスクのパーティションを編集します。
fdisk /dev/sda

#以下は fdisk 内でのコマンド(Command (m for help): と出るのでそこで入力)
#エンターキーはdefaultの設定が適用されます。

#現在のパーティションテーブルを表示
p

#boot用のパーティションを新しく作成
n

#Partition typeを選択するのでプライマリーパーティション(基本パーティション)を作成
p

#パーティション番号を入力
1

#ファーストセクター(セクターの始まり)はデフォルトのままなので,
#エンターキーを入力。ここでは 2048 がファーストセクターだったので,2048を入力

#ラストセクター(セクターの始まり)かサイズを入力。ここでは,200MBなので +200Mと入力
+200M

#パーティションが正常に作成されたか確認。
p

#LVM用のパーティションを作成
n

#Partition typeを選択するのでプライマリーパーティション(基本パーティション)を作成
p

#ファーストセクター(セクターの始まり)はデフォルトのままなので,エンターキーを入力。

#ラストセクター(セクターの始まり)はデフォルトのままなので,エンターキーを入力

#パーティションが正常に作成されたか確認。
p

#パーティションの種類を LVM に変更する
t

#パーティション番号を入力。ここでは2。
2

#Hex code を入力。Linux LVM は8eなので,8eを入力
8e

#パーティションが正常に作成されたか確認。
p

#変更を書き込んで,fdisk を終了
w

8.続いて LVM を構成していきます。私の環境では,VG の名前を Ubuntu_server,LV はルート用の領域(OSのシステム部)とスワップ用の領域を作成し,それぞれの名前を lv_root,lv_swap としています。また,それぞれサイズは 18GB,2GBとしています。

#PV(Physical Volume)作成
#PVの一覧の確認
pvdisplay

#PVの作成(LVM 用のパーティションは,ここでは /dev/sda2 です。)
pvcreate /dev/sda2

#PVが正常に作成されたか確認
pvdisplay

#VG(Volume Group)作成
#VGの一覧の確認
vgdisplay

#VGの作成(-s で指定するのが PE のサイズ。次に指定するのが VG の名前と使用する PV の名前)
vgcreate -s 32m Ubuntu_server /dev/sda2

#VGが正常に作成されたか確認
vgdisplay

#LV(Logical Volume)作成
#LVの一覧の確認
lvdisplay

#root用のLVの作成(-L で領域のサイズを指定。-n で LV の名前を指定。最後に LV を作成する VG の指定。)
lvcreate -L 18G -n lv_root Ubuntu_server

#swap用のLVの作成(-l で領域の割合を指定。-n で LV の名前を指定。最後に LV を作成する VG の指定。)
lvcreate -l 100%FREE -n lv_swap Ubuntu_server

#lvが正常に作成されたか確認
lvdisplay

9.次に,作成した LV のフォーマットを行います。ここでは,root 用の LV 領域を ext4 でフォーマットし,swap 用の LV 領域を swap 領域化します。

#root 用 LV 領域のフォーマット (/dev/VGの名前/LVの名前 を指定します。)
mkfs -t ext4 -L root /dev/Ubuntu_server/lv_root

#swap 用 LV 領域の swap 領域化 (/dev/VGの名前/LVの名前 を指定します。)
mkswap -L swap /dev/Ubuntu_server/lv_swap

10.これで,LVM で構成されたパーティションが作成できました。続いて実際のインストールを行います。デスクトップ上の「Ubuntu 12.04.2LTS のインストール」を起動。

11.インストーラが起動したら,言語として日本語を選択し,「続ける」をクリック。

u1

12.「インストール中にアップデートをダウンロードする」と「サードパーティのソフトウェアをインストールする」のチェックボックスにチェックし,「続ける」をクリック。

u2

13.今回は LVM で構成しているので,「それ以外」を選択し,「続ける」をクリック。

u3

14.OS やブートローダをインストールするパーティションを決めます。ここでは,lv_root をルート領域とするので,/dev/mapper/Ubuntu_server-lv_root を選択し,「変更」をクリック。

u4

15.「利用方法」をext4ジャーナリングファイルシステムとし,「マウントポイント」は / を選択し,「OK」をクリック。

u5

16.次にブートローダをインストールするパーティションを決めます。ここでは,/dev/sda1 をブートローダ用のパーティションにしていたので, /dev/sda1 を選択し,「変更」をクリック。

17.「利用方法」をext4ジャーナリングファイルシステムとし,「パーティションの初期化」にチェック,「マウントポイント」は /boot を選択し,「OK」をクリック。

u6

18.ここでは,1つのハードディスクを利用し,他の OS はインストールしないので,ブートローダをインストールするデバイスは /dev/sda を選択します。複数の ハードディスクや,OS をインストールする場合は,適宜自分の環境に合わせてください。「インストール」をクリック。

u7

19.ここで,下図のようなエラーが出る場合がありますが,一度フォーマットしているので,無視してかまいません。

u8

20.次の画面では,自分がいる場所を入力。ここでは,Tokyoを選択。「続ける」をクリック。

u9

21.次の画面では,自分のキーボードレイアウトを選択してください。ここでは「日本語」を選択。「続ける」をクリック。

u10

22.次の画面では,最初に登録されるユーザ情報を入力します。各自の環境に合わせてください。「続ける」をクリック。

u11

23.あとは,インストールが終わるのを待ちます。

24.インストールが完了すると,今すぐ再起動するかどうか聞かれますが,必ず再起動せず,「試用を続ける」をクリック。ここで,再起動してしまうと,起動しなくなります。

u12

25.再び,ダッシュホームから「Terminal」を起動し,下記コマンドを実行します。Ubuntu では,標準では LVM を認識しないため,LV 領域にインストールしたルート領域を識別できません。そのため,先ほど,システムをインストールしたルート領域(ここでは,lv_root)に LVM 管理ソフトウェアである lvm2 をインストールする必要があります。

#管理者権限になります。
sudo su

#システムをインストールしたルート領域をマウント
mount -t ext4 /dev/Ubuntu_server/lv_root /target

#ブートローダをインストールしたブート領域をマウント
mount -t ext4 /dev/sda1 /target/boot

#現在のシステムのルートをシステムをインストールしたルート領域のルートに変更。
#(新しくインストールした Ubuntu にログインすることに相当)
chroot /target

#パッケージリストをアップデート
#*絶対に apt-get upgrade はしないでください。
apt-get update

#lvm2 をインストールする。
apt-get install lvm2

#終了する
exit
exit
exit

25.以上で Ubuntu のインストールが終了しました。再起動してください。

お疲れ様でした。

ちなみに,LVM で構成した後に再起動した場合,Ubuntu のインストールが終わってすぐ,再起動し,起動できなくなった場合は,以下の手順を行なってください。

LVM で構成して,起動しなくなった場合の手順

1.Live DVD 環境で起動後,「Terminal」を起動。

2.下記コマンドを実行し,LVM を認識させる。

#管理者権限になる。
sudo su

#パッケージリストを更新
apt-get update

#lvm2 をインストール
apt-get install lvm2

#LVM を認識させる
modprobe dm_mod
pvscan
vgchange -ay

3.これで LVM が認識されたので,それぞれ再起動してしまったタイミングから,作業をやり直してください。

コメントを残す

メールアドレスが公開されることはありません。