|
次のページ
前のページ
目次へ
2. FreeBSD のハードディスクのラベル付け
Linux と FreeBSD はハードディスクやパーティションにそれぞれ異なる方法 でラベルを付けます.この章では,両者の主な違いを解説します. FreeBSD のラベル付けは,今まで使われてきた BSD のラベル付けのスタイル を PC の fdisk によるパーティションに当てはまるよう移植したものです. 従って,この方法は NetBSD, OpenBSD, Ultrix, Digital Unix, SunOS, Solaris 等,他の BSD ベースの UNIX システムとよく似ています. 2.1 FreeBSD の「スライス」と「パーティション」
FreeBSD はPCハードディスクのパーティションテーブルの4つのエントリーの
うち1つのエントリーを用います.FreeBSD の用語では,この基本パーティショ
ンを「スライス」と呼びます.そして,
bash# fdisk /dev/hda Command (m for help): p Disk /dev/hda: 64 heads, 63 sectors, 621 cylinders Units = cylinders of 4032 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/hda1 * 1 1 27 54400+ 83 Linux native /dev/hda2 28 28 55 56448 83 Linux native /dev/hda3 56 56 403 701568 83 Linux native /dev/hda4 404 404 621 439488 a5 BSD/386 Command (m for help): b Reading disklabel of /dev/hda4 at sector 1624897. BSD disklabel command (m for help): p 8 partitions: # size offset fstype [fsize bsize cpg] a: 64512 1624896 4.2BSD 0 0 0 # (Cyl. 404 - 419) b: 104832 1689408 swap # (Cyl. 420 - 445) c: 878976 1624896 unused 0 0 # (Cyl. 404 - 621) e: 64512 1794240 4.2BSD 0 0 0 # (Cyl. 446 - 461) f: 645120 1858752 4.2BSD 0 0 0 # (Cyl. 462 - 621) BSD disklabel command (m for help): q bash# 以下の例で示すように,最初の列の`a'から`f'までの文字は,1つの FreeBSD スライスでは同じラベルになります.BSD の用語では3つの特別なパーティショ ンがあります.`a' はルートパーティションを示し,`b'はスワップパーティ ションを示し,`c'はスライス全体を示します.これらの文字を異なる型のパー ティションに割り当てる「標準の」方法については FreeBSD のドキュメント を参照してください. 2.2 Linux と FreeBSD におけるドライブとパーティションのラベル付けLinux と FreeBSD では,ハードディスクのラベルはそれぞれ以下のように付 けられます. Linux FreeBSD 最初の IDE ドライブ /dev/hda /dev/wd0 2番目の IDE ドライブ /dev/hdb /dev/wd1 最初の SCSI ドライブ /dev/sda /dev/sd0 2番目の SCSI ドライブ /dev/sdb /dev/sd1 IDE のディスク上では,パーティション(FreeBSD のスライス)は以下のように
ラベル付けがされます(
Linux FreeBSD 最初の基本パーティション /dev/hda1 /dev/wd0s1 2番目の基本パーティション /dev/hda2 /dev/wd0s2 3番目の基本パーティション /dev/hda3 /dev/wd0s3 4番目の基本パーティション /dev/hda4 /dev/wd0s4 筆者の FreeBSD のスライス内のパーティションは以下のようにラベル付けさ
れています.これはデフォルトの設定です.FreeBSD をカスタマイズしてイン
ストールした場合には,ラベルの付き方は変わるかもしれません.(例では
Linux のラベル FreeBSDのラベル FreeBSD のマウントポイント /dev/hda5 /dev/wd0s4a / /dev/hda6 /dev/wd0s4b swap /dev/hda7 /dev/wd0s4e /var /dev/hda8 /dev/wd0s4f /usr もし Linux で
Partition check: hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 hda8 > FreeBSD が
Linux のラベル FreeBSDのラベル FreeBSD のマウントポイント /dev/sdb7 /dev/sd1s3a / /dev/sdb8 /dev/sd1s3b swap /dev/sdb9 /dev/sd1s3e /var /dev/sdb10 /dev/sd1s3f /usr この場合には Partition check: sdb: sdb1 sdb2 < sdb5 sdb6 > sdb3 < sdb7 sdb8 sdb9 sdb10 > FreeBSD のパーティションの後に Linux の拡張パーティションを置いて
いるとトラブルの元となります.Linux インストール用ブートフロッピーに入っ
ているほとんどのカーネルは UFS のサポートが有効になっていないため,
スライス内の FreeBSD パーティションを認識しません.例えば
Partition check: hda: hda1 hda2 hda3 < hda5 hda6 hda7 hda8 > hda4 < hda9 hda10 >のように見えるべきものが Partition check: hda: hda1 hda2 hda3 hda4 < hda5 hda6 >のように見えてしまいます. このようなことが起こるとデバイスの割り当てが狂ってしまい,データを壊す こともあり得ます.ですから FreeBSD スライスは必ず Linux 拡張パーティ ションよりも後に置き,FreeBSD をインストールした後は Linux 拡張パーティ ション内の論理パーティションの構成は絶対に変えないことをお勧めします. 次のページ 前のページ 目次へ |
[ |