Linux – fdisk
◆ Linuxでのハードディスクの利用
Linuxでハードディスクを利用するためには、以下の5ステップを踏む必要があります。
① 電源OFFの状態で、ハードディスクをシステムに物理的に接続
② 追加したハードディスクのデバイスファイルが作成されていることを確認
③ ハードディスクにパーティションを作成 : fdiskコマンド
④ 各パーティションにおいてext3ファイルシステムを作成 : mke2fsコマンド
⑤ ファイルシステムのマウント : mountコマンド
① ハードディスクの接続
ハードディスクを増設するためには、先ずシステムの電源が停止した状態で物理的に接続します。次に
電源をONにすると、起動中に自動的にデバイスを検出します。※ HDDの接続規格には以下があります。
HDDの接続規格 | 説明 |
IDE (Integrated Drive Electronics) | 1989年にANSIにより規格化。IDEインターフェースは、プライマリ とセカンダリの2つのI/Fがある。各I/Fごとに、マスターとスレーブ の2台を接続できる (下図を参照)。レガシーな規格。 |
SCSI (Small Computer System Interface) | ANSIにより規格化。IDE規格より、最大伝送速度が速く、ケーブル 1本あたりの最大接続デバイス数も多いが、IDEに比べ高価である。 IDEと同様、HDD以外にCD-ROMドライブ等が接続可。外付けも可。 |
SATA (Serial Advanced Technology Attachment) | 2000年に業界団体「Serial ATA Working Group」により仕様策定。 IDEの後継規格であり、SCSI に変わって主流となっている規格。 |
SAS (Serial Attached SCSI) | Ultra-320 SCSI の後継にあたる規格。SATAはコンシューマー 向けに対して、SASはサーバ用HDDの接続によく使用されている。 |
USB (Universal Serial Bus) | 一般的には、周辺機器の接続によく使用される規格であるが、 USBポートを持つ外付けのHDDを接続する際に使用される規格。 |
② デバイスファイルの確認
起動中にハードディスクを新しく検出すると、検出されたデバイスを操作するためのデバイスファイルが
/devディレクトリに自動的に追加されます。デバイスファイルは、HDD等の周辺装置を制御する際に使用
される特別なファイルのことです。以下のファイルがLinuxではデフォルトでインストールされています。
デバイスファイル | 説明 |
/dev/hda | プライマリのマスターに接続したHDD |
/dev/hdb | プライマリのスレーブに接続したHDD |
/dev/hdc | セカンダリのマスターに接続したHDD |
/dev/hdd | セカンダリのスレーブに接続したHDD |
/dev/sda | 1番目のSCSI/SATA/USBに接続したHDD |
/dev/sdb | 2番目のSCSI/SATA/USBに接続したHDD |
/dev/sdc | 3番目のSCSI/SATA/USBに接続したHDD |
/dev/sdd | 4番目のSCSI/SATA/USBに接続したHDD |
/dev/sr0 | 1番目のCD/DVDドライブ |
/dev/st0 | 1番目のテープドライブ |
現在では、IDEで接続されたHDDも、SCSI/SATAで接続されたHDDと同様に扱うようになったため、
従来、例えば/dev/hda であったファイルが、現在、例えば/deb/sda と表されるようになっています。
③ パーティションの作成 その1
パーティションとはハードディスクを論理的に分割した各領域のことです。ハードディスクがシステムに
認識されたら、パーティションに分割する必要があります。パーティションには以下の3種類があります。
パーティションの種類 | 説明 |
基本パーティション | 基本パーティションは、1台のディスクに必ず1つ以上が存在する必要がある。 1つの物理ディスクには最大で4つの基本パーティションに分割することができる。 基本パーティションのデバイスファイル名は、SCSIディスク(/dev/sda)の場合は /dev/sda1、/dev/sda2、/dev/sda3、/dev/sda4 のようになる。 |
拡張パーティション | 基本パーティションのうち、1つだけを拡張パーティションとして使用することができる。 拡張パーティションには、直接ファイルシステムを作成することができない。代わりに 拡張パーティションの中には、論理パーティションが格納される。 |
論理パーティション | 論理パーティションは、拡張パーティション内に作成されたパーティションのこと。 作成できる論理パーティションの数は、ハードディスクのタイプにより異なるが、 論理パーティションのデバイスファイル名はSCSIの場合、/dev/sda5 以降となる。 |
ハードディスクをパーティションに分割した場合、各パーティションを操作するためのデバイスファイルも
自動的に作成されます。パーティションのデバイスファイル名はハードディスクの何番目のパーティション
なのかを示す整数値が付けられることから、SCSIディスクやIDEディスクの場合は以下の名称となります。
IDEディスク : /dev/hda1、/dev/hda2、/dev/hda3、/dev/hda4
SCSIディスク : /dev/sda1、/dev/sda2、/dev/sda3、/dev/sda4
そして、論理パーティションは5から順番に /dev/hda5 あるいは /dev/sda5 のように割り当てられます。
③ パーティションの作成 その2
先ず、現在のパーティションテーブルの状態を表示するためには fdisk -l コマンドを使用します。
◆ 構文 : fdisk -l デバイス名
◆ 実行例 : /dev/sda のパーティションテーブルの状態表示 ( VMplayerを使用してCentOSをインストールをした場合 )
Partition 1 does not end on cylinder boundary.
項番 | キーワード | 説明 |
① | Device | パーティションのデバイスファイル名 |
② | Boot | ブートフラグ ※1 |
③ | Start | パーティションの開始シリンダ番号 |
④ | End | パーティションの終了シリンダ番号 |
⑤ | Blocks | パーティションの総ブロック数 |
⑥ | Id | パーティション内のファイルシステムのタイプ ( 数値 ) |
⑦ | System | パーティション内のファイルシステム |
ブートフラグはブートパーティションのカーネル(vmlinuz)やブートローダ―(GRUB)を格納するパーティションに * がつく
パーティションの作成、削除、変更、情報表示のためには、fdiskコマンドを使用します。fdiskコマンドの
実行時に以下のようなサブコマンドを入力して、パーティションの作成、変更、削除等を行っていきます。
◆ 構文 : fdisk デバイス名
サブコマンド | 説明 |
m | 使用可能なサブコマンドの一覧表示 |
p | 現在のパーティションテーブルの表示 |
n | 新しいパーティションテーブルの作成 |
d | 既存のパーティションテーブルの削除 |
l | 設定可能なパーティションタイプの一覧表示 |
a | ブートフラグをオン、またはオフにする |
t | パーティションタイプの設定、変更 |
w | パーティションテーブルの変更を保存して終了 |
q | パーティションテーブルの変更を保存せずに終了 |
01. fdisk /dev/sda 実行後に、パーティションテーブルの表示
02. 基本パーティション ( 2 ) を作成し、サイズを1GBとする
03. 設定保存して終了する場合、w と入力。再起動後に有効となる。
※ 設定保存せずに終了したい場合、q と入力。
※ 視覚的に分かるパーティション分割は VMware Playerでのパーティション分割の作業例 をご参考下さい。
本ページでは、 Linuxでハードディスクを利用するための5ステップのうち①~③までを紹介しました。
① 電源OFFの状態で、ハードディスクをシステムに物理的に接続
② 追加したハードディスクのデバイスファイルが作成されていることを確認
③ ハードディスクにパーティションを作成 : fdiskコマンド
④ 各パーティションにおいてext3ファイルシステムを作成 : mke2fsコマンド
⑤ ファイルシステムのマウント : mountコマンド