BSDLABEL(8) FreeBSD システム管理者マニュアル BSDLABEL(8)
名称
bsdlabel − ディスクラベルの読み書きを行う |
書式
bsdlabel [−A] disk | −f file |
bsdlabel −w [−An] [−B [−b boot]] [−m machine] disk | −f file [type] |
bsdlabel −e [−An] [−B [−b boot]] [−m machine] disk | −f file |
bsdlabel −R [−An] [−B [−b boot]] [−m machine] [−f] disk | −f file protofile |
解説 |
bsdlabel ユーティリティは、ディスクパーティションやパーティションイメージ を含むファイル上に BSD ラベルを書きこんだり、確認したり、修正したりするた めに使われます。また bsdlabel は同時にブートストラップコードをインストー ルすることもできます。 |
ディスクデバイス名 |
デバイス指定時 (すなわち −f オプションが使われていない場合) には、 /dev/ のパスプレフィックスは省略可能です。 bsdlabel ユーティリティは自動的にこ れを前に付けます。 |
一般的なオプション |
−A オプションをつけると、 BSD ラベルの中で歴史的な理由で残っている部分を 処理できるようになります。このオプションを与えない場合、これらのフィール ドには適切な値が設定されます。 −f オプションは、ディスクパーティションの代わりにファイルに対して操作を行 なうよう bsdlabel に指示します。 −n オプションは、ディスクが変更される直前で bsdlabel の実行を止め、実行結 果をディスクに書きこまずに表示します。 −m machine 引数は、指定されたマシンに合ったレイアウトを使うように bsdlabel に指示を行います。 |
ディスクラベルの読み込み |
ディスクドライブ上のラベルを確認するためにはオプションを指定せずに bsdlabel を使用します。 bsdlabel [−A] [−m machine] disk disk は対象とするディスクを示します。また da0 や /dev/da0 のような書式で も指定することができます。これによってパーティションのレイアウトを表示し ます。 |
標準的なラベルの書き込み |
標準的なラベルを書き込むには、以下の書式を使います。 bsdlabel −w [−An] [−m machine] disk [type] ドライブの種類が指定されている場合、 disktab(5) ファイル内の同名のエント リが使用され、指定されていない場合はデフォルトのレイアウトが使われます。 |
既存のディスクラベルの編集 |
既存のディスクラベルを編集するには、以下の書式を使います。 bsdlabel −e [−An] [−m machine] disk このコマンドは、デフォルトのエディタでディスクラベルをオープンし、エディ タ終了時にディスクラベルを検証し、正しければそれをディスクに書きこみま す。 |
ファイルからのディスクラベルの復元 |
ファイルからディスクラベルを復元するには、以下の書式を使います。 bsdlabel −R [−An] [−m machine] disk protofile bsdlabel は以前の操作により ASCII フォーマットのファイルに保存されたディ スクラベルを復元することができます。ラベルを作成するときに使われるプロト タイプファイルは、ラベルを読み込んだり編集したりするときのものと同じ フォーマットである必要があります。コメントは ‘#’ と改行で区切られます。 |
ブートストラップのインストール |
−B 引数が指定された場合、ブートストラップコードが /boot/boot から読みこま れ、それがディスクに書きこまれます。 −b boot 引数を用いると、別のファイル が使用できます。 |
関連ファイル
/boot/boot
デフォルトのブートイメージ 保存されたファイルの書式 |
bsdlabel ユーティリティは、ディスクラベルを確認、編集、または復元する際に ASCII 形式のラベルを使用します。フォーマットは以下のとおりです。 8 partitions: # size offset fstype [fsize bsize bps/cpg] a: 81920 0 4.2BSD 1024 8192 16 b: 160000 81920 swap c: 1173930 0 unused 0 0 # "raw" part, don’t edit −A オプションが指定されている場合、フォーマットは次のようになります: # /dev/da1c: type: SCSI disk: da0s1 label: flags: bytes/sector: 512 sectors/track: 51 tracks/cylinder: 19 sectors/cylinder: 969 cylinders: 1211 sectors/unit: 1173930 rpm: 3600 interleave: 1 trackskew: 0 cylinderskew: 0 headswitch: 0 # milliseconds track-to-track seek: 0 # milliseconds drivedata: 0 8 partitions: # size offset fstype [fsize bsize bps/cpg] a: 81920 0 4.2BSD 1024 8192 16 b: 160000 81920 swap c: 1173930 0 unused 0 0 # "raw" part, don’t edit ‘#’ で始まる行はコメントです。 パーティションテーブルは 8 つまでエントリを持つことができ、以下の情報を含 みます: |
#
パーティションの識別子は ‘a’ から ‘h’ の 1 文字です。慣例的な理由 により、 ‘c’ パーティションはディスク全体を表すために予約されてい ます。 size 例: 2097152, 1G, 1024M, 1048576K はすべて同じ大きさです (512 バイ トセクタを仮定)。 offset fstype fsize bsize bps/cpg 使用例 |
bsdlabel da0s1 |
da0 の最初のスライス用に、 /dev/da0s1 から得たものとしてラベルを表示しま す |
bsdlabel da0s1 > savedlabel |
da0s1 に対するカーネル内のコピーをファイルに savedlabel に保存します。こ のファイルは後で −R オプションを用いてラベルを復元する際に使用できます。 |
bsdlabel -w /dev/da0s1 |
da0s1 のラベルを作成します。 |
bsdlabel -e da0s1 |
da0s1 のラベルを読み込み、編集し、その結果を書き込みます。 |
bsdlabel -e -n da0s1 |
da0s1 のディスク上のラベルを読み、編集し、新規ラベルがどのようになるかを (セクタ単位で) 表示します。新規ラベルは、メモリにもディスクにもインストー ル しません。 |
bsdlabel -w da0s1 |
da0s1 にデフォルトのラベルを書きこみます。パーティション情報やファイルシ ステム情報を編集するには、この後で bsdlabel −e コマンドを使って下さい。 |
bsdlabel -R da0s1 savedlabel |
savedlabel に書かれている情報を da0s1 のラベルとして書き込みます。ディス ク上のラベルとともにカーネル内コピーも書き換えられます。 |
bsdlabel -R -n da0s1 label_layout |
パーティションレイアウト label_layout を使用すると、 da0s1 のラベルがどの ようになるかを表示します。 % と * に基くパーティションの大きさ指定を使用 するラベル方式を使用した場合に、各パーティションにどれだけ割り当てられる かを判定するのに有用です。 |
bsdlabel -B da0s1 |
da0s1 に新たにブートストラップコードを書き込みます. ブートストラップコー ドは /boot/boot です。 |
bsdlabel -w -B -b newboot /dev/da0s1 |
新たなラベルとブートストラップコードを書き込みます。ブートストラップコー ドはカレントディレクトリにある newboot です。 dd if=/dev/zero of=/dev/da0 bs=512 count=32 fdisk -BI da0 dd if=/dev/zero of=/dev/da0s1 bs=512 count=32 bsdlabel -w -B da0s1 bsdlabel -e da0s1 ディスク上の既存の情報を完全に削除し、ディスク全体を覆う 1 つのスライスを 含んだ DOS パーティションテーブル付きのブート可能ディスクを新規に作成しま す。次にスライスを初期化し、編集します。 dd(1) はオプションですが、 BIOS によっては正しくディスクを認識するために必要です。 これは、 %, M, G, * といった新規パーティションサイズ型を使用する、ディス クラベルの例です。次のコマンドラインのソースファイルとして使用可能です: ‘‘bsdlabel -R ad0s1c new_label_file’’ # /dev/ad0s1c: 8 partitions: # size offset fstype [fsize bsize bps/cpg] |
# (Cyl. 0 - 812*) |
b: 1G * swap |
診断
デバイスドライバは、オープンされているパーティションに関して、サイズが小 さくなることおよびオフセットが変化することを許しません。 |
互換性
u_int32_t を用いてセクタ数を格納しているため、 BSD ラベルは最大 2^32-1 セ クタに制限されます。これは通常 2TB のディスク容量を意味します。これより大 きなディスクをパーティションを分けるには、例えば gpt(8) などの別の方法を 使う必要があります。各々の BSD は、少しずつ異なったバージョンの BSD ラベ ルを使用しており、一般的に互換性はありません。 |
関連項目
ccd(4), geom(4), md(4), disktab(5), boot0cfg(8), fdisk(8), gpt(8) FreeBSD 10.0 March 15, 2003 FreeBSD 10.0 |