Linux fdiskドキュメント
1.はじめに
fdiskを使用したパーティションの整備は、始めはとっつきにくいが、慣れればそう難しくはない。現在どのような状態にあるかを確認するコマンドもあり、すぐに使いこなす事ができるようになるはずである。
※ここでは推奨する内容だけを書く。各項目の詳しい意味を知りたい場合は、RedHat Linuxのインストールガイドを参照の程。
(http://www.jp.redhat.com/manual/Doc80/RH-DOCS/rhl-ig-x86-ja-8.0/index.html)
※RedHat Linux8.0のインストール中で、なおかつグラフィカルインストールにてインストール作業を進めている事を想定している。
2.概要
HDD内の全てのパーティションを一旦削除して、新たにパーティションを切る。
fdiskで行なう事は以下の通り。
①いらないパーティションを全て削除する
②/bootパーティションを作成する
③スワップパーティションを作成する
④スワップパーティションとして作成した領域をスワップIDに変更する
⑤/パーティション(ルートパーティション)を作成する
fdiskが終われば、次にDisk Druid(パーティション設定ツール)でマウント位置を設定する。
①/bootパーティションと/パーティションにマウント位置を設定する
3.パーティションの命名体系
Linuxのハードディスクには、Windowsのように「Cドライブ」とか「Dドライブ」とかいうドライブ名は使わない。全ての周辺機器はフォルダにマウントするものとして扱われる。それぞれの周辺機器の命名体系は決まっている。
/dev/xxyN
/dev/は、すべてのデバイスファイルを含むディレクトリの名前である。パーティションはハードディスク上に存在し、ハードディスクはデバイスであるため、 すべてのパーティションを表すファイル群は、/dev/ディレクトリ 内に格納される。
xxには周辺機器の種類が入る。ハードディスクなら「hd」、SCSIディスクなら「sd」である。
その機器が何台目かを次のyで表す。一つ目なら「a」、二つ目なら「b」のようになっている。
次のNにはパーティションの領域番号が入る。領域1なら「1」、2なら「2」である。
よって、HDDのパーティションならば「/dev/hda1」「/dev/hda2」「/dev/hdb1」「/dev/hdb2」などのように命名される事になる。
4.シリンダについて
Linuxのパーティション設定ではシリンダという概念が出てくる。シリンダは要するにクラスタ数のようなものだが、あまり知らなくてもよい。重要なのは、あなたが今からインストールするドライブのシリンダが1023以下かなのか、1024以上なのかという事である。
通常は、メモリが足りない時のためのスワップパーティションをまず作成する。これは動作を快適にするために必要である。そして、残った領域を全てルートパーティションとするのが普通である。しかし、ルートパーティションが1024シリンダを超える領域を使う場合、1024を超える領域だけ認識できなくなってしまう。しかし、現在のHDDは大容量になり、ほとんどが1024以上のシリンダを持つ物である。
1024以上のシリンダを認識させるためには、/bootパーティションを1023シリンダに収まる領域内に作成させなければならない。そうする事で、/bootが1024以降のシリンダを見る事ができるようになり、結果、制限なく全てのシリンダを扱う事ができるようになる。
5.フォーマットタイプについて
Linuxのフォーマットタイプには以下の6つがある。
① ext2
ext2 ファイルシステムは標準の Unix ファイルシステム(通常ファイル、ディレクトリ、シンボリックリンクなど)
をサポートする。このファイルシステムは最大255文字までの長いファイル名を サポートできる。
Red Hat Linux 7.2 までのバージョンはデフォルトで ext2ファイルシステムを使用していた。
② ext3
ext3 ファイルシステムは ext2 ファイルシステムを元にしているが、ジャーナリングという重要な機能が 追加されている。ファイルシステムのジャーナリングファイルを作成すると
クラッシュ時にfsck(メタデータ一貫性の為にファイルシステムを 検査するアプリケーション)を実行する必要がないため、ファイルシステムの回復に必要な時間が短縮されている。
ext3 ファイルシステムはデフォルトで選択されており、強く推薦する。
③ スワップ
スワップファイルは仮想メモリをサポートするために
使用される。言い替えると、処理中のデータを保存するために必要なメモリが足りない場合、データは スワップファイル領域に書き込まれる。
④ VFAT
VFAT ファイルシステムは、Windows 95/NT のFATファイルシステム上のロングファイルネームとの互換がある
Linuxファイルシステムである。
⑤ 物理ボリューム(LVM)
1つ又はそれ以上の物理ボリューム(LVM)パーティションを作成することによって、LVMの論理ボリュームを作成できる。LVMに関する詳細は、オフィシャル Red Hat Linux カスタマイズガイドを 参照。
⑥ ソフトウェア RAID
2つ以上のソフトウェア
RAID パーティションを作成することによって、RAIDデバイスを作成することができる。
RAIDデバイスに関する詳細情報は オフィシャル Red Hat Linux カスタマイズガイドの中のRAIDを参照。
6.スワップパーティションについて
スワップパーティションは作らなくても動かない事はない。実際にスワップパーティションを作成せずにインストールさせてみたが、正確に動作した。しかし、「スワップパーティションを作った方が明らかに快適な動作が望めます。スワップパーティションを作成する事を推奨します」という警告が出る事もあり、作成する事が望ましい。その容量については、メモリの容量の等倍~2倍程度は確保すべきとされている。
7.fdiskのコマンドについて
fdiskの主要なコマンドは以下の通りである。
d 領域を削除する
l 既知の領域タイプをリスト表示
m ヘルプを表示
n 新たに領域を作成する
p 領域テーブルを表示する
q 変更を保存せずに終了する
t 領域のシステムIDを変更する
w テーブルをディスクに書き込み、終了する
今回使用しなかったコマンドには次のものがある。
a ブート可能フラグをつける
b bsd ディスクラベルを編集する
c dos 互換フラグをつける
o 新たに空の DOS 領域テーブルを作成する
s 空の Sun ディスクラベルを作成する
u 表示/項目ユニットを変更する
v 領域テーブルを照合する
x 特別な機能 (エキスパート専用)
8.手順
ディスクパーティション設定の画面では選択肢として3つのうち1つを選択する。
・
自動パーティション設定
・
Disk
Druidを使用して自動パーティション設定
・
fdiskを使用して手動パーティション設定(上級者のみ)
今回選ぶのは3つめの
・
fdiskを使用して手動パーティション設定
である。これを選ぶと、次に操作するHDDを選ぶ画面になる。一つのHDDしか搭載していなければ、「hda」と出るはずである。2つ目以降があれば「hdb」「hdc」・・と、hdのあとにドライブ番号(アルファベット)が付く事となる。ここでは「hda」を選ぶ。
fdiskが立ち上がり、↓のように入力待ち状態になる。
このディスクのシリンダ数は2459に設定されています。 間違いではないのですが、1024を超えているため、以下の場合に問題を生じうる事を確認しましょう。 1)ブート時に実行するソフトウェア(例:バージョンが古いLILO) 2)別のOSのブートやパーティション作成ソフト(例:DOS
FDISK 、OS/2 FDISK) コマンド (m でヘルプ): |
それでは概要の通りにパーティション操作を進めていく。
コマンド (m でヘルプ): p
・・・・・・・・・・・・・現状を表示。まだ、何も削除していない
ディスク /tmp/hda: ヘッド255 セクタ63 シリンダ2495 ユニット=シリンダ数 of 16065 * 512バイト Filesystem 1K-ブロック 使用 使用可 使用% マウント位置 /dev/hda2 18856324 1466232
16432220 9%
/ /dev/hda1 101089 9382 86490
10%
/boot none
192352 0
192352 0%
/dev/shm コマンド (m でヘルプ):d
・・・・・・・・・・・・・削除コマンド 領域番号(1-4):1
・・・・・・・・・・・・・領域1を削除 コマンド (m でヘルプ):d
・・・・・・・・・・・・・削除コマンド 領域番号(1-4):2 ・・・・・・・・・・・・・領域2を削除 コマンド (m でヘルプ):d
・・・・・・・・・・・・・削除コマンド 領域番号(1-4):3 ・・・・・・・・・・・・・領域3を削除 コマンド (m でヘルプ): n
・・・・・・・・・・・・・新規パーティションを切る。ここは
/boot に使用する コマンドアクション e 拡張 p 基本領域 p ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・基本領域を選択。 領域番号(1-4):1
・・・・・・・・・・・・・最初のパーティションから
最初 シリンダ(1-2495 初期値1):
1 ・・・・・・・・・・・・・最初のシリンダーから
終点 シリンダ または +サイズ または
+サイズM または +サイズK(1-2495
初期値2495):13 ・・・・・・・・・・・・・パーティション1にシリンダ1からシリンダ13までを確保 コマンド (m でヘルプ): n
・・・・・・・・・・・・・次にスワップ領域を切る コマンドアクション e 拡張 p 基本領域 p ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・基本領域を選択。 領域番号(1-4):2
・・・・・・・・・・・・・次のパーティションから
最初 シリンダ(14-2495 初期値1):
(Enter) 初期値14を使います。 ・・・・・・・・・・・・・リターンだけ押すとこうなる 終点 シリンダ または +サイズ または
+サイズM または +サイズK
(14-2495 初期値2495):+800M ・・・・・・・・・・・・・スワップパーティションに800MBを確保 コマンド (m でヘルプ):t ・・・・・・・・・・・・・パーティションID
の変更。 領域番号(1-4): 2
・・・・・・・・・・・・・スワップに指定したパーティション
16進コード(Lコマンドでコードリスト表示): 82 ・・・変更 領域のシステムタイプを2から82
(Linuxスワップ)に変更しました。 コマンド (m でヘルプ): n コマンドアクション e 拡張 p 基本領域 p ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・基本領域を選択。 領域番号(1-4):3
・・・・・・・・・・・・・・次のパーティションから
最初 シリンダ(116-2495 初期値116): (Enter) 116を使います。 終点 シリンダ または +サイズ または
+サイズM または +サイズK
(116-2495 初期値2495): 2495を使います コマンド (m でヘルプ):p
・・・・・・・・・・・・・・できたかどうか見てみる ディスク /tmp/hda: ヘッド255 セクタ63 シリンダ2495 ユニット=シリンダ数 of 16065 * 512バイト データm ブート 使用 使用可 ID システム /dev/hda1 1
13 83
Linux /dev/hda2 14 115 82
Linuxスワップ /dev/hda3
116
2495 83
Linux コマンド (m でヘルプ): w
・・・・・・・・・・・・・・でパーティション情報を書き込み、終了。 |
これでfdiskの操作は終了である。fdiskではパーティションのマウント位置を設定できないため、それはDisk Druidで設定していく事となる。
次に出てくるDisk Druid画面で、マウス操作によりパーティション1を選択して「編集」を押す事で、プロパティを出す。その中で/bootをマウント位置とし、フォーマットさせる項目にチェックを入れる。フォーマットタイプはext3を選択後、「OK」を押す。次にパーティション3も/をマウント位置とし、同じようにフォーマットの設定を行なう。また、「次へ」行く時にスワップパーティションのフォーマットをするかどうか聞かれるので、フォーマットする事を選択する。