EN JA
MAKEFS(8)
MAKEFS(8) FreeBSD System Manager's Manual MAKEFS(8)

名称

makefsディレクトリツリーまたは mtree マニフェストのファイルシステムイメージを作成する

書式

makefs [ -DxZ][ -B byte-order][ -b free-blocks][ -d debug-mask][ -F specfile][ -f free-files][ -M minimum-size][ -m maximum-size][ -N userdb-dir][ -o fs-options][ -S sector-size][ -s image-size][ -t fs-type] image-file directory | manifest [ extra-directory ...]

解説

ユーティリティ makefs は、ディレクトリツリー directory または mtree マニフェスト manifest からファイルシステムイメージを image-file に作成します。オプションのディレクトリツリー extra-directory が渡されるなら、各引数のディレクトリツリーは、 directory か、または image-file を作成する前に最初に manifest にマージされます。スペシャルデバイスまたは特権は、このタスクを実行するために必要ではありません。

オプションは、次の通りです:

-B byte-order
イメージのバイト順を byte-order に設定します。有効なバイト順は、ビッグエンディアンのためには、‘ 4321’, ‘ big’または‘ be’、リトルエンディアンのためには、‘ 1234’, ‘ little’または‘ le’です。いくつかのファイルシステムには、固定のバイト順があるかもしれません。それらの場合には、この引数は、無視されます。
-b free-blocks
イメージ中に最小の free-blocks フリーブロックが存在するように努めます。オプションの‘ %’接尾辞は、 free-blocks が計算されたイメージサイズの割合を示すために提供されます。
-D
mtree マニフェストの重複したパスをエラーではなく警告として扱います。
-d debug-mask
どのビットが debug-mask に設定されているかによって、様々なデバッグのレベルを有効にします。 XXX: これらの文書
-F specfile
mtree(8) ‘specfile’仕様として specfile を使用します。このオプションは、イメージがディレクトリではなく mtree マニフェストから作成されるとき、効果がありません。

specfile エントリが基本的なファイルシステムに存在していて、specfile によって明確に上書きされないなら、そのパーミッションと更新時刻が使用されます。 specfile のエントリのタイプが既存のエントリのものと衝突するなら、エラーが起こります。

反対の場合 (specfile エントリが基本的なファイルシステムのエントリにないところ) では、次のことが起こります: specfile エントリが optional とマークされるなら、specfile エントリは、無視されます。そうでなければ、エントリが、イメージ中に作成され、少なくとも specfile 中に次のパラメータを指定する必要があります: type, mode, gname または gid および uname または uid および link (シンボリックリンクの場合)。 time が提供されないなら、現在の時間が使用されます。 flags が提供されないなら、現在のファイルフラグが使用されます。失われた通常のファイルエントリは、長さ 0 のファイルしてして作成されます。

-f free-files
最低限の free-files フリーファイル (inode) がイメージに存在することを確実にします。オプションの‘ %’接尾辞は、 free-files が計算されたイメージサイズの割合を示すために提供されます。
-M minimum-size
ファイルシステムイメージの最小サイズを minimum-size に設定します。
-m maximum-size
ファイルシステムイメージの最大サイズを maximum-size に設定します。ターゲットのファイルシステムが、指定されたディレクトリツリーを収容するより大きい必要があるなら、エラーが起こります。
-N dbdir
システムの getpwnam(3)getgrnam(3) (と関連する) ライブラリ呼び出しからの結果を使用するよりむしろ dbdir のユーザデータベーステキストファイル master.passwd とグループデータベーステキストファイル group を使用します。
-o fs-options
ファイルシステムの特有のオプションを設定します。 fs-options は、オプションのコンマで区切られたリストです。有効なファイルシステム特有のオプションは、以下に詳細に記述されます。
-p
推奨されません。 -Z フラグを参照してください。
-S sector-size
ファイルシステムのセクタサイズを sector-size に設定します。デフォルトは、512 です。
-s image-size
ファイルシステムイメージのサイズを image-size に設定します。
-t fs-type
fs-type ファイルシステムイメージを作成します。次のファイルシステムタイプが、サポートされています:
ffs
BSD ファースト (fast) ファイルシステム (デフォルト)。
cd9660
ISO 9660 ファイルシステム。
-x
specfile 中に明白にリストされなかったファイルシステムノードを除きます。
-Z
スパースファイルとしてイメージを作成します。

サイズが指定されるところでは、10 進数のバイト数が、予想されます。 2 つ以上の番号は、製品を示すために“x”によって区切られます。各数値には、次のオプションの接尾辞の 1 つを指定できます:

b
ブロック。 512 の倍数。
k
キロ。 1024 (1 KiB) の倍数。
m
メガ。 1048576 (1 KiB) の倍数。
g
ギガ。 1073741824 (1 GiB) の倍数。
t
テラ。 1099511627776 (1 TiB) の倍数。
w
ワード。整数のバイト数の倍数。

FFS 特有のオプション

ffs イメージには、提供される ffs 特有のオプションのパラメータがあります。それぞれのオプションは、キーワード、等号 (‘ =’) と値から成ります。次のキーワードがサポートされています:

avgfilesize
期待される平均のファイルサイズ。
avgfpdir
期待されるディレクトリ毎のファイル数。
bsize
ブロックサイズ。
density
inode 毎のバイト。
fsize
フラグメント (断片) サイズ。
label
イメージのラベル名。
maxbpg
シリンダグループ内のファイル毎の最大のブロック数。
minfree
最小 % フリー (空き)。
optimization
最適化の優先順序。‘ space’ (空間) または‘ time’ (時間) の 1 つ。
extent
最大の限界 (extent) サイズ。
maxbpcg
シリンダグループ内の最大の合計ブロック数。
version
UFS バージョン。 FFS (デフォルト) に対しては 1、UFS2 に対しては 2。

CD9660 特有のオプション

cd9660 イメージには、提供される ISO9660 特有のオプションのパラメータがあります。引数は、キーワードと、省略可能な等号 (‘ =’) と値から成ります。次のキーワードがサポートされています:

allow-deep-trees
ディレクトリ構造が仕様で指定された最大を超えることを許可します。
allow-max-name
バージョン ID を省略することによって、ファイル名のための 33 文字の代わりに 37 文字を許可します。
allow-multidot
ファイル名に複数のドットを許可します。
applicationid
イメージのアプリケーション ID。
archimedes
RISC OS メタデータをエンコードするために‘ ARCHIMEDES’拡張を使用します。
chrp-boot
古い CHRP ハードウェアがブートできるように、 MBR パーティションテーブルをイメージに書き込みます。
boot-load-segment
ブートイメージのためのロードセグメントを設定します。
bootimage
形式“sysid;filename”のブートイメージのファイル名、ここで、“sysid”は、‘ i386’, ‘ mac68k’, ‘ macppc’または‘ powerpc’の 1 つです。
generic-bootimage
一般的なブートイメージを cd9660 イメージの最初の 32K にロードします。
hard-disk-boot
ブートイメージは、ハードディスクイメージです。
keep-bad-images
書き込みが、エラーのため中止されたイメージを投げ捨てません。デバッグ目的のためです。
label
イメージのラベル名。
no-boot
ブーツトメージは、ブート可能ではありません。
no-emul-boot
ブートイメージは、“エミュレーションがない” ElTorito イメージです。
no-trailing-padding
イメージに詰め物を行いません (明らかに、Linux は、詰め物を必要とします)。
preparer
イメージの作成者 (preparer) ID。
publisher
イメージの発行者 (publisher) ID。
rockridge
(より長いファイル名などのための) RockRidge 拡張を使用します。
volumeid
イメージのボリューム設定識別子。

関連項目

mtree(5), mtree(8), newfs(8)

歴史

makefs ユーティリティは、 NetBSD 1.6 で登場しました。

作者

Luke Mewburn <lukem@NetBSD.org> (オリジナルプログラム) Daniel Watt, Walter Deignan, Ryan Gabrys, Alan Perez-Rathke, Ram Vedam (cd9660 サポート)
August 16, 2013 FreeBSD