このページではLinuxサーバー構築するときのパーティションの考え方と、DiskDruidの操作方法を初心者/ビギナー向けに解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
CentOS6.2のインストール

CentOS6のインストール

インストールの下準備

インストーラの起動

操作環境の設定

ストレージデバイスの選択

ネットワークの設定

タイムゾーンの選択

rootパスワードを設定

Disk Druidの説明

ディスクの設定

ブートローダの設定

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

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

パッケージのインストール

おめでとうございます

ライセンス情報

ユーザーの作成

日付と時刻の設定

Kdump設定とインストール完了


公開サーバーのディスク設定の考え方

実際の パーティション 設定作業の前に、 LinuxOS ハードディスク 管理とファイルシステムについての解説を、 CentOS6 のパーティション設定ツール "Disk Druid" の操作画面と共に説明しましょう。

LinuxOSのインストール作業で、一番の難関は ハードディスクの設定 でしょう。

なぜならば、LinuxOSの ストレージデバイス の扱い方が、それまでパソコンとして慣れ親しんできた WindowsOS MacintoshOS とは全く異なるからです。

WindowsOSやMacintoshOSなどの クライアント 用途が基本の OS では、ユーザーができるだけ簡単に設定でき、容量やファイルシステムの変更が比較的簡単に行えるようなストレージデバイスの管理方法が採用されています。

実際のところ、これらのクライアントOSでは、ストレージデバイスの設定や扱いは 知識も技術も必要がない と言っても構わないほど簡単です。

しかし サーバー &クライアント方式を起源とする UNIX から生まれたLinuxOSでは、不慣れなユーザーによる誤操作を抑制し、性能と安定性に重点を置いた管理方法が採られているため、ストレージデバイスの管理の考え方そのものがクライアント向けのOSとは根本的に異なっています。

そのため、LinuxOSでは ホスト機 に搭載されるハードディスクの順番や名前の付け方、パーティションの意味、ファイルシステムの構造など、ほぼすべてがWindowsOSやMacintoshOSのそれとは異なっているわけです。

例えば、LinuxOSには、WindowsOSでいうところの "ドライブレター" あるいは "ドライブ名" といわれる "Cドライブ" "Dドライブ" という概念そのものがありませんし、稼動中のシステムにディスクを追加したり、ディスク構成を変更したり、という作業も容易なことではありません。

さて、LinuxOSでサーバーを運用する場合と、WindowsOSやMacintoshOSでクライアントとして運用する場合の、ストレージデバイスの扱いの最も大きな相違は、LinuxOSでは 細かいパーティション分割 が必要になるという点でしょう。

その一番大きな理由は、OSがクライアント用途であるかサーバー用途であるか、という違いにあります。

クライアント用途が中心のWindowsOSやMacintoshOSの場合、ホスト機は常に自分の目の前で、自分自身が使用するものですから、別の誰かが勝手にデータを書き込んだりすることはまずありません。

しかしサーバー用途が中心のLinuxOSの場合、そのホスト機を利用するのは 外部のクライアントユーザー ということになります。

従って運用方法を誤ればサーバーの管理者が予期しないデータが書き込まれることもあるでしょうし、 セキュリティ が甘ければ攻撃者によって大量の不正データを書き込まれることもあるでしょう。

もし、そのデータ量がハードディスクの容量を使い切るほど大きいものであったとして、システム領域の作業スペースが足りなくなったとしたら、間違いなくサーバー機に障害が発生してしまうでしょう。

LinuxOSに限らず、最近のOSの多くは、特定のユーザーのフォルダやファイルシステムに対して書き込み容量制限を行う ディスククオータ という機能が備わっています。
つまりこれを利用すればハードディスクがパンクさせられる心配はないといえるのですが、それでもやはり物理的にパーティションで分けておいたほうが安心といえば安心です。

そこでサーバー用途のホスト機は、クライアントユーザーが書き込む領域や、システムの動作に必要なプログラムの格納領域などを 物理的にパーティションで分けて 、万が一のトラブルに備える、という習慣がある訳です。

ハードディスクをパーティションに分ける利点とは
ハードディスクをパーティションに分ける利点とは

もちろん、ハードディスクをパーティション分けしてしまうと、別の不都合があります。

例えば、ハードディスクがパーティションに分けられていない場合、特定の種類のデータを大量に書き込みたいときなどは柔軟な対応が可能です。

しかし幾つかのパーティションに分けられていると、それぞれの種類のデータの書き込み可能な容量が限られてしまうので、ハードディスク全体としての空き容量があっても容量不足に陥り易くなります。

ハードディスクをパーティションに分ける欠点とは
ハードディスクをパーティションに分ける欠点とは

このように、パーティション分割を行うか行わないかについては、それぞれ一長一短があります。

ところが幸いなことに、最近は大容量のハードディスクが安価に手に入るようになっていますので、パーティション分割で生じる容量不足のデメリットは、まず考慮しなくて良くなっています。

というわけで、公開サーバーとして不特定多数のユーザーからのアクセスを受け付けるとすれば、やはり安全性を重視してパーティション分割を行うべきでしょう。

このページの先頭へ↑

"Disk Druid"について

"Disk Druid" は、 RedHat 系の LinuxOS のほぼ全てに搭載されている ハードディスク パーティション 設定ツールです。

CentOS6でこの "Disk Druid" が利用できるのは OS インストール 、つまり最初の一回だけです。一度インストールしてしまったシステムのパーティションを変更するには、旧来の CUI のツールを使う必要があります。
CUIのツールを使いこなせるようになるには、それなりの知識が必要になりますので、初心者のうちは、 インストール時に設定したパーティションは、後で変更することはできない という気構えで作業してください。

この "Disk Druid" は、ハードディスクの状態確認と設定作業が、視覚的に非常に解り易いように工夫された優秀なツールであるばかりでなく、誤った設定に対する警告機能と、ある程度の自動設定機能を持っています。

従って、このツールを利用することで、難解なLinuxOSのパーティション設定作業が比較的容易になるだけではなく、その考え方や仕組みを理解する上でもとても役に立つはずです。

さて、以下は既に幾つかのパーティションが作成されている "Disk Druid" の画面です。

(1) の枠には、パーティションの設定対象となるハードディスクがバーグラフで表示されます。

CentOS6などのLinuxOSでは、S-ATA接続 S-ATAハードディスクとは のハードディスクは接続位置で、次のように名前(デバイスファイル名)が付けられます。

一番目のポートに接続 = /dev/sda

二番目のポートに接続 = /dev/sdb

三番目のポートに接続 = /dev/sdc

四番目のポートに接続 = /dev/sdd

拡張カードでS-ATAインターフェースを追加していたり、 USB 接続のハードディスクが混在したりしている場合は、引き続き認識順に /dev/sde /dev/sdf ... となります。

"(モデル: *******)" という部分には、そのハードディスクのメーカーや型番が表示されることになります。

バーグラフは、設定したパーティションの情況を視覚的に表すものですので、設定中の参考にしてください。

(2) の枠は、設定したパーティションの一覧です。

デバイス の列は各パーティションが使用するハードディスクとパーティション名、 容量(MB) の列は各パーティションのハードディスクの容量、 マウントポイント/RAID/ボリューム の列は各パーティションのファイルシステム上の マウント 位置、 タイプ の列はフォーマットの形式、 フォーマットする の列は設定の確定後のフォーマット実施、をそれぞれ示します。

(3) の枠には、パーティション設定のためのボタンが並べられています。

作成(C) を左クリックすると、パーティションを新規作成するためのウインドウが開きます。

編集(E) は、既に作成したパーティションの内容を変更するボタンです。 (2) の枠から変更したいパーティションを選び、このボタンを左クリックします。

削除(D) は、既に作成したパーティションを削除するボタンです。 (2) の枠から削除したいパーティションを選び、このボタンを左クリックします。

リセット(S) は、設定したパーティションの内容を すべて 設定前の状態に戻すボタンです。一部分の設定だけを戻すことはできませんので注意してください。

"Disk Druid" の画面だけではちょっとわかり難いかもしれませんので、簡単に図にしてみましょう。


パーティション構造の説明図1
パーティション構造の説明図1

LinuxOSの各パーティションには、ハードディスクの書き込み領域の先頭から、ハードディスク名称の後ろに連番がつけられるようになっています。

この例では、ハードディスク "/dev/sda" に対して、 "/boot" パーティションには "/dev/sda1" "/(ルート)" パーティションには "/dev/sda2" 、という具合に割り当てられているのがお解りと思います。

"Disk Druid" では、パーティションのことを "領域" という呼び名で表現します。従って、 "拡張領域" という場合は一般的に "拡張パーティション" を、 "基本領域" という場合は "基本パーティション" を指すことになります。

ところが、 "/dev/sda4" には、 タイプ の部分が "拡張領域" になっていて、特定のパーティションが割り当てられていないのがお解りでしょうか。

実は、 IA機 におけるハードディスクのパーテション分割には、

1.一つのハードディスク装置は、基本パーティションと拡張パーティションの合計が四つまでしか分割できない。

2.拡張パーティションは起動パーティションとして使用できない。

3.一つの拡張パーティションは、幾つかの論理パーティションに分割して使用することができる。

という仕様上の制限があります。

つまりこの例では、

"/dev/sda1" "/dev/sda3" の三つが 「基本パーティション」

"/dev/sda4" 「拡張パーティション」

"/dev/sda5" 以降が "/dev/sda4" の中に作成された 「論理パーティション」

ということになります。

先の説明のとおり、LinuxOSではハードディスクをいくつかのパーティションに分割して使用するのが一般的ですが、それぞれのパーティションは、例えば WindowsOS MacintoshOS のように、 "C:" "D:" のような 「ドライブ名」 や、パーティションの名前を示す 「ボリューム名」 というように、ファイルシステム上 別々のもの という扱い方をしません。

WindowsOSやMacintoshOSのファイルシステムに慣れた人にとっては、この部分の仕組みを理解するのが難しいようです。実は難しいのではなくて 慣れ の問題ですので、理解できないからといって気に病むことはありません。そのうちあっさり解るようになります。

LinuxOSのファイルシステムでは、 "SWAP" のような、ユーザーが実際に扱うことのない特殊なパーティションを除くと、

全てのパーティションは唯一の"/"ディレクトリ以下に格納される

という扱いを受けます。

例えば、 パーティション構造の説明図1 の中の、 "/dev/sda7" は、 1000MB の独立したパーティションですが、CentOS6のファイルシステム上では、 "/usr/local" というディレクトリとして扱われます。

つまり、 "/usr/local" 以下のファイルやディレクトリ、例えば、 "/usr/local/001.jpg "/usr/local/bin/myprog.conf" などは全てパーティション "/dev/sda7" に書き込まれ、 合計で1000MBまで という制限を受けます。

しかしその一つ上のディレクトリ "/usr" は別のパーティション "/dev/sda5" に存在しますから、例えば "/usr/001.jpg "/usr/bin/myprog.conf" などはパーティション "/dev/sda5" に書き込まれることになります。

この、各パーティションのファイルシステム上の格納位置をLinuxOSでは

マウントポイント

と呼び、その位置で読み書きできるようにする設定作業を

「マウントする」

と表現します。

また、この

「全てのパーティションは"/"以下に格納される」

というLinuxOSのファイルシステムは、パーティションに対してだけのものではなく、 フロッピーディスク CD-ROM DVD-ROM USBメモリ 、別のハードディスク、などに対しても適用されます。以下の図をご覧ください。

パーティション構造の説明図2
パーティション構造の説明図2

これは、先のファイルシステムにフロッピーディスクとCD-ROM、そして更に二台のハードディスク "/dev/sdb" "/dev/sdc" を追加した例です。

もうお解りと思いますが、この例のLinuxOSのファイルシステムでは、フロッピーディスクのマウントポイントは "/mnt/floppy" 、CD-ROMのマウントポイントは "/mnt/cdrom" ですから、それぞれのディスクの内容は、 "/mnt/floppy" "/mnt/cdrom" の中に表示され、扱われることになります。

同様に、追加された二つのハードディスクは、それぞれ "/home/owner" "/data" にマウントされています。ハードディスクだからといって "D:/" "E:/" のようにWindowsOSのような 同列の扱い を受けることはなく、追加されたハードディスクは必ず "/" パーティションの配下という形でマウントされることになります。

LinuxOSでは、このようにパーティションとディレクトリ構造が融合した形のファイルシステムを採用しているため、慣れるまでは戸惑いが大きいかもしれません。「なぜこんなややこしいファイルシステムなの?。」と思われるかもしれません。

実はLinuxOSを含むUNIX系OSで採用されている、このような

「単一のファイルシステム上に全てのパーティションやディスク装置を格納する。」

という管理方法は、サーバー用途として

強固で安定したファイルシステム

として運用するために考案されたものです。

WindowsOSやMacintoshOSなどは、元々「クライアント用途が中心」というコンセプトで設計されているため、安定性や堅牢製よりも解り易さや使い勝手を優先して

「ディスクやパーティションは独立して管理する。」

という方法が採られているわけです。

さて、 タイプ の列は、各パーティションのフォーマートの種類を示します。CentOS6では、標準で "ext4" というフォーマットを使用しますが、スワップ領域だけは "SWAP" というフォーマット形式にします。

フォーマットの種類は、その他にもいくつか選ぶことができますが、当面は知らなくても大丈夫です。

フォーマットする の列は、インストール実行前にフォーマット作業を行うか否です。ここにチェックが入っているパーティションは、後のステップで完全に初期化されることになります。

この部分については、例えば既にCentOS6で利用可能なファイルシステムがインストールされているハードディスクを利用するとき、そのデータを残したままにしたい場合にのみチェックをはずす必要があります。

従って、全くの新規インストールでは全てのパーティションにチェックが入っている必要があります。

開始 終了 の列は、各パーティションのハードディスク上の シリンダ の開始と終了の位置をそれぞれ示します。

以前のLinuxOSでは、 "/boot" パーティションがハードディスクの先頭から1024シリンダ以内に入っていなければ、ハードディスクからの起動ができないという制約がありました。

しかしCentOS6ではその制約は事実上なくなっており、 シリンダ という概念はあまり考慮する必要はなくなっていますから、とりあえずは無視しても構わないでしょう。

以上の点をある程度頭に置いて、次のステップへと進みましょう。

このサイトは リンクフリー です。趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。今のところ更新予定はありませんのでご了承ください。
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。