この節では、カスタマイズされたファイルシステムの作成に使用する 2 つのコマンドについて説明します。
newfs
mkfs
newfs コマンドは、ファイルシステムの作成に使用する mkfs コマンドの簡便バージョンです。newfs コマンドは、/usr/sbin ディレクトリに入っています。
構文は次のとおりです。
newfs [-Nv] [mkfs_options] special
表 32-3 に、newfs コマンドのオプションと引数を示します。
表 32-3 newfs コマンドのオプションと引数
オプション |
説明 |
---|---|
N |
ファイルシステムの作成に使用されるファイルシステムパラメタが表示されるが、実際には作成されない。このオプションでは、既存のファイルシステムの作成に使用されたパラメタは表示されない。 |
-v |
mkfs コマンドに渡されるパラメタが表示され、-N オプションを指定しなければファイルシステムが作成される。 |
mkfs-options |
後続のオプションを使用して、mkfs コマンドに渡されるパラメタが設定される。次のオプションは、mkfs に渡される順番に記述されている。各オプションは、先行キーワードを付けずに空白で区切る。 |
-s size |
ファイルシステムのセクター数。デフォルトは、ディスクラベルから自動的に判別される。 |
-t ntrack |
ディスク上の 1 シリンダあたりのトラック数。デフォルトはディスクラベルから判別される。 |
-b bsize |
データ転送に使用される論理ブロックのバイト数。サイズとして 4096 または 8192 バイト (4K または 8K バイト) を指定する。デフォルトは 8192 バイト (8K バイト)。 |
-f fragsize |
ファイルに割り当てられるディスク容量の最小バイト数。フラグメントサイズを、512 バイトから 8192 バイトまでの 2 の乗数単位で指定する。デフォルトは 1024 バイト (1K バイト)。 |
-c cgsize |
1 シリンダグループあたりのディスクシリンダ数。この数値は 1 から 32 までの範囲内でなければならない。デフォルトは 16。 |
-m free |
空きディスク領域の最小許容率。デフォルトは 10 パーセント。 |
-r rpm |
1 分当たりのディスクの回転速度。デフォルトは 3600 である。このパラメタは、mkfs に渡される前に 1 秒当たりの回転数に変換される。 |
-i nbpi |
作成できる i ノードの計算に使用される i ノード 1 個当たりのバイト数。デフォルトは 2048。 |
-o opt |
ディスクブロックをファイルに割り当てるときに使用される最適化のタイプ。s は領域を示し、t は時間を示す。 |
-a apc |
不良ブロックを配置するために予約される 1 ディスクシリンダ (SCSI デバイスのみ) の代替ブロック数。デフォルトは 0。 |
-d gap |
(回転の遅れ) CPU がデータ転送を完了し、同じディスクシリンダ上で次のデータ転送を開始するまでに予想される最小ミリ秒数。デフォルトは 4。 |
-d nrpos |
シリンダグループを分割するさまざまな回転位置の数。デフォルトは 8。 |
-C maxcontig |
あるファイルに属し、回転の遅れが挿入される前に連続して割り当てられる最大ブロック数。デフォルトはドライブごとに異なる。内部 (トラック) バッファを持たないドライブ (または、内部バッファの存在をうたっていないドライブ/コントローラ) の場合は、デフォルトは 1 で、バッファを持つドライブの場合はデフォルトは 7。 このパラメタには、 blocksize*maxcontig が maxphys 以下でなければならないという制限がある。 maxphys は、入出力サブシステムが満たせる最大ブロック転送サイズ (バイト数) を指定する読み込み専用のカーネル変数である (この制限は、newfs や mkfs ではなく mount によって適用される)。 また、このパラメタはクラスタ化も制御する。rotdelay の値に関係なく、maxcontig が 1 より大きいときのみクラスタ化できる。クラスタ化すると、入出力が高速になる。詳細は、tunefs(1M) のマニュアルページを参照。 |
special |
ファイルシステムを入れるパーティションの特殊文字 (raw) デバイスファイル名。この引数は必須。 |
次の newfs の例では、-N オプションを使用して、バックアップスーパーブロックなど、ファイルシステム情報を表示します。
# newfs -N /dev/rdsk/c0t0d0s0 /dev/rdsk/c0t0d0s0: 37260 sectors in 115 cylinders of 9 tracks, 36 sectors 19.1MB in 8 cyl groups (16 c/g, 2.65MB/g, 1216 i/g) superblock backups (for fsck -b #) at: 32, 5264, 10496, 15728, 20960, 26192, 31424, 36656, #
汎用 mkfs コマンドは、ファイルシステム専用の mkfs を呼び出して、指定したディスクスライス上で指定したタイプのファイルシステムを作成させます。mkfs では各種のファイルシステムがサポートされますが、実際には UFS ファイルシステムの作成に使用します。他のタイプのファイルシステムを作成するには、ファイルシステム専用の mkfs コマンドを使用できるようにソフトウェアを作成する必要があります。通常は、mkfs を直接実行せずに、newfs コマンドで呼び出します。
次の例は、mkfs コマンドのすべての引数を示しています。
汎用 mkfs コマンドは、/usr/sbin にあります。引数とオプションについては、mkfs(1M) のマニュアルページを参照してください。