サーバーリテラシ2005 - 第2回 Linux のインストール

ullr

CentOS4.2のインストール

今回はLinuxのディストリビューションの一つ、CentOS4.2をインストールします。

基本的な操作

Tabキーで項目、↑↓→←でカーソルを移動、スペースキーで選択の[ ]にチェックを入れる(または消す)ことができます。

手順

今回はミラーサーバーを用意しましたのでアクセスを分散させます。
マシン番号が01~04の人はWebサイト名がstorage~から、05以上の人は192~から始まっているのを入力してください。
CentOS-4 i386 ディレクトリは同じ名前で構いません。
設定は以下のようにしてください。

項目備考
Web サイト名storage.cis.k.hosei.ac.jp番号が01~04の人
192.168.123.119番号が05以上の人
CentOS-4 i386 ディレクトリpub/CentOS/4.2/i386-

パーティション

パーティションの設定をします。
パーティション(分割、区画、領域)とはその名の示すとおり、物理ドライブを複数の領域に区切ることです。
一台のハードディスクを複数の領域に区切ると、複数台のハードディスクがあるかのように利用することができます。
パーティションには以下のような種類があります。

基本パーティション

基本パーティションは一応例外もありますが、基本的に最大4つまで作成することが可能です。

拡張パーティション

基本パーティションのうちの一つを拡張パーティションにすることができます。
基本パーティションは4つまでしか作ることができませんが、一つを拡張パーティションとすることにより
論理パーティションを使ってさらに多くのパーティションを作ることができます。
(拡張パーティションの中に作成されたパーティションを論理パーティションと呼びます)

今回のパーティション構成は以下の通りです。

デバイス容量タイプマウント
hda1512MBext3/boot
hda220GBext3/
hda3512MBswapなし
hda4-拡張領域なし
-hda5残り全部ext3/home

今回のパーティション構成のイメージは以下のようなものです。

新しくパーティションを作るには「新規」を選択します。

「新規」を選択すると上のような画面がでてきます。

パーティションを決める際にはマウントポイント、ファイルシステムタイプ、容量の割り当て、第一パーティションとして強制指定するかどうかの4点を入力します。(「第一パーティションとして強制指定する」にチェックをいれるのは/bootのみで他はチェックをいれないでください)

基本パーティションは基本的にhda1~4の順に作成されていきます。
(ただし論理パーティションは4以下の番号が空いていても5から作成される)
4つめの基本パーティションを作ろうとした時、自動でhda4は拡張領域となり、作ろうとしたパーティションは論理パーティションのhda5として作成されます。
上記のパーティション構成内容を参照しながらhda1~3と5の値を順番に入力してください。

最後の/homeを作る際のみ、容量は「固定容量」ではなく「利用できるスペースをすべて利用」にチェックをいれてください。
これにより空いている容量を全て割り当てることができます。

全てのパーティションを作成した後OKを選択。ここで警告がでると思いますが、はいを選択してください。

割り当てる時に入力した容量の値と、実際に作成されたパーティションの容量の表示が微妙に違うかもしれませんが、これはHDDの仕様によるものなので気にしないで大丈夫です。

OSからHDDを利用する場合はバイト単位で管理しますが、HDDの内部構造ではパーティションをシリンダ単位で管理します。よって、MB単位で入力した値をシリンダに対応させる場合に、丁度良いサイズを割り当てることができない時誤差合わせをするため入力した値と異なるサイズになるというわけです。これは、HDDの容量により代わってくるものであり、HDDによってはきちんと512MBと表示される場合もあります。

パーティションタイプとマウントポイント

ここは時間に余裕がなければ飛ばしてしまって構いません。

上記のパーティション構成表のタイプはパーティションタイプと呼ばれるもので
そのパーティションに作成するファイルシステムを指定します。今回はext3とswapを使用しています。

ext3

ext3はLinuxで広く利用されているファイルシステムの一つです。
ファイルシステムは様々なものがありますが、それぞれサポートOS、ファイル操作、データの暗号化などの動作に違いがあります。

swap

swapHDDに用意するスワップ領域のことです。スワップ領域は物理メモリを使い切った時に利用される仮想メモリ領域です。仮想メモリ領域は、HDD内に配置されているため物理メモリと比べると非常に遅いです。

マウントポイント

タイプがext3のパーティションにはマウントポイントを指定しました。WindowsはHDDをドライブ単位で管理しますが、UNIXでは/をトップとしたツリー構造で管理します。今回は/bootと/と/homeを用意しました。

/bootにはKernel本体が配置され、Linux起動時に参照されます。
/homeには各ユーザーのホームディレクトリが配置されています。
/は/bootと/home以外の残りすべてのシステムをインストールするのに利用されます。
実際は用意するのは/だけでも問題ないのですが、分けた理由以下のようなものからです。

/homeにはユーザーデータが置かれていて、頻繁に更新が行われます。頻繁に更新をする=負荷が大きく消耗しやすい領域をまとめておくことにより、障害が発生した時に被害の範囲を限定しやすくすることができます。

/bootは、ファイルシステムに致命的な障害が発生した時にファイルシステムを修復可能にするためです。軽い障害であれば/bootを分けなくても復旧可能ですが、致命的な障害が発生した場合は、/と/bootが分かれていないとデータの救出が難しいです。

その他の設定

パッケージグループの選択

色々入れたい人もいるかもしれませんが、今回は入れるパッケージを統一します。
以下のパッケージにチェックをいれ、また以下に書かれていないパッケージはチェックを外してください。

後はOKを選択していけばインストールが始まります。

インストール後の設定

インストールが終了したら、PCを再起動します。
再起動するとようこそ画面が表示されるので、画面に従って時刻等の設定を行います。

アップデート

Windowsをインストールしたら、皆さんWindowsUpdateを使ってパッチをあてると思います。
Linuxも日々セキュリティホールが発見されているので、パッチをあてなければなりません。
じゃあLinuxにもWindowsUpdateみたいなものがあるのか?というとyumという便利なパッケージ更新ツールがあります。
最後にこのyumを使用してアップデートをしておきます。

まず学内ストレージサーバーからyumの設定ファイルをダウンロードします。
以下のコマンドを入力してください。

wget http://storage.cis.k.hosei.ac.jp/pub/CentOS/yum.conf.example

次に落としたファイルの名前をyum.confに変更します。

mv yum.conf.example yum.conf

このyum.confを/etcに元から置いてあるyum.confと入れ替えます。

yum check-updateとコマンドを入力するとアップデート可能なパッケージ一覧が表示されます。

yum check-update

最後に、yum updateと入力するとアップデート可能な全てのパッケージのアップデートが自動で開始されます。

yum update