diff --git a/ja_JP.eucJP/man/man1/crunchgen.1 b/ja_JP.eucJP/man/man1/crunchgen.1 index 103044dbdb..662816dd66 100644 --- a/ja_JP.eucJP/man/man1/crunchgen.1 +++ b/ja_JP.eucJP/man/man1/crunchgen.1 @@ -22,7 +22,7 @@ .\" Author: James da Silva, Systems Design and Analysis Group .\" Computer Science Department .\" University of Maryland at College Park -.\" %FreeBSD: src/usr.sbin/crunch/crunchgen/crunchgen.1,v 1.11.2.3 2000/11/17 12:57:43 joe Exp % +.\" %FreeBSD: src/usr.sbin/crunch/crunchgen/crunchgen.1,v 1.11.2.6 2000/12/08 15:28:02 ru Exp % .\" .Dd November 16, 2000 .\" jpman %Id: crunchgen.1,v 1.3 1997/07/29 13:43:59 konuma Stab % @@ -32,13 +32,15 @@ .Nm crunchgen .Nd クランチバイナリ構築環境を作成する .Sh 書式 -.Nm crunchgen +.Bk -words +.Nm .Op Fl foql .Op Fl h Ar makefile-header-name .Op Fl m Ar makefile-name .Op Fl c Ar c-file-name .Op Fl e Ar exec-file-name .Op Ar conf-file +.Ek .Sh 解説 クランチバイナリ (crunched binary) は、 たくさんの別々のプログラムをひとつにまとめて @@ -123,13 +125,13 @@ 出力する C のファイル名を .Ar c-file-name とします。デフォルトの名前は -.Dq .c +.Pa .c です。 .It Fl e Ar exec-file-name クランチバイナリの実行形式ファイルの名前を .Ar exec-file-name とします。デフォルトの名前は -.Dq +.Pa です。 .It Fl f キャッシュを消去し、キャッシュされていたパラメータを強制的に再計算します。 @@ -152,12 +154,22 @@ make の名前を .Ar makefile-name とします。デフォルトの名前は -.Dq .mk +.Pa .mk です。 .It Fl o 各プログラムの make ターゲットに対し、 .Dq Li make obj ルールを追加します。 +.It Fl p Ar obj-prefix +.Ic objdir +を計算するときに、 +.Ic srcdir +の前に付けるパス名を設定します。 +このオプションが存在しない場合、使用するプレフィックスは +.Ev MAKEOBJDIRPREFIX +環境変数の内容か、または +.Pa /usr/obj +です。 .It Fl q 静粛処理モード。状況報告メッセージを抑制します。 .El @@ -185,7 +197,7 @@ make これらのディレクトリは .Bx の -.Dq // +.Dq Pa // 方式を用いて検索されます。 .Ic srcdirs 行は複数あってもよく、ディレクトリは記述された順に検索されます。 @@ -242,13 +254,21 @@ make プログラム .Ar progname の -.Dq obj -ディレクトリを指定します。 -通常はディレクトリ -.Ic srcdir -内の .Pa obj -という名前のディレクトリを探し、もし見つからなければ、ディレクトリ +ディレクトリを指定します。 +通常、 +.Pa obj +ディレクトリは、 +ソースディレクトリ名の前に次のいずれかのコンポーネントを付けたものとして +計算され、コンポーネントには次の順番で優先度があります: +コマンドラインにおける +.Fl p +の引数、環境変数 +.Ev MAKEOBJDIRPREFIX +の値、または +.Pa /usr/obj +です。 +もしディレクトリが見つからなければ、ディレクトリ .Ic srcdir 自身が .Ic objdir @@ -363,7 +383,9 @@ libs -lutil -lcrypt .Pp このコンフィギュレーションファイルでは、 いくつかの基本的なシステムユーティリティと -自家製のインストールプログラム ``myinstall'' から成る +自家製のインストールプログラム +.Dq Pq myinstall +から成る 小さなクランチバイナリを記述しています。 ソースディレクトリは全く指定されていませんが、 オブジェクトファイルは @@ -371,7 +393,7 @@ libs -lutil -lcrypt 行で直接指定されています。 .Pp さらに、 -.Dq anotherprog +.Dq Pa anotherprog 構築時には、引数 .Pp .Dl -DNO_FOO WITHOUT_BAR=YES @@ -379,7 +401,7 @@ libs -lutil -lcrypt がすべてのビルドターゲットに対して追加されます。 .Pp クランチバイナリ -.Dq kcopy +.Dq Pa kcopy は以下のようにして作成できます: .Pp .Bd -literal -offset indent @@ -391,7 +413,7 @@ $ # .Ed .Pp ここまでくれば、バイナリ -.Dq kcopy +.Dq Pa kcopy をインストールフロッピにコピーし、 各コンポーネントプログラムの名前でハードリンクを設けることができます。 .Sh 関連項目 diff --git a/ja_JP.eucJP/man/man1/file.1 b/ja_JP.eucJP/man/man1/file.1 index 1ccb76351d..870aa4cf4c 100644 --- a/ja_JP.eucJP/man/man1/file.1 +++ b/ja_JP.eucJP/man/man1/file.1 @@ -1,20 +1,20 @@ -.\" %FreeBSD: src/usr.bin/file/file.1,v 1.16 2000/03/01 12:19:39 sheldonh Exp % -.Dd July 30, 1997 +.\" %FreeBSD: src/usr.bin/file/file.1,v 1.16.2.3 2000/12/12 14:52:49 ru Exp % +.Dd December 8, 2000 .Dt FILE 1 "Copyright but distributable" .Os .Sh 名称 .Nm file .Nd ファイルの種類を判定する .Sh 書式 -.Nm file -.Op Fl vczL +.Nm +.Op Fl bciknsvzL .Op Fl f Ar namefile .Op Fl m Ar magicfiles .Ar .Sh 解説 このマニュアルは .Nm -コマンドのバージョン 3.22 について記載しています。 +コマンドのバージョン 3.33 について記載しています。 .Nm は、引数で指定されたファイルの種類を判定するプログラムです。判定の ために、ファイルシステムテスト、マジックナンバテスト、言語テストの @@ -24,9 +24,7 @@ .Pp ファイルの種類として表示されるのは、 .Em text -( -.Tn ASCII -キャラクタだけのファイルで、 +(印字可能文字と少数の制御文字だけのファイルで、 .Tn ASCII 端末に表示した場合、 問題が起こらないもの)、 @@ -36,7 +34,9 @@ カーネル等に理解可能な形にコンパイルされたプログラムを 含むファイル)、その他のものを意味する .Em data -(data は、通常 `バイナリ' か表示不能なもの) のうちの 1 つです。 +(data は、通常 +.Sq バイナリ +か表示不能なもの) のうちの 1 つです。 例外は、内部フォーマットがよく知られた、 バイナリデータを含むファイル (コアファイルや tar アーカイブ) です。 ファイル @@ -44,11 +44,23 @@ やプログラムそのものを変更するときは、 .Em "これらのキーワードを残して下さい" 。 -.Pp ディレクトリ内のすべての可読なファイルは、 -単語 ``text'' を表示することが期待されています。 -Berkeley で行われたように、``shell commands text'' を -``shell script'' と変更するようなことはしないで下さい。 +単語 +.Dq text +を表示することが期待されています。 +Berkeley で行われたように、 +.Dq shell commands text +を +.Dq shell script +と変更するようなことはしないで下さい。 +ファイル +.Pa /usr/share/misc/magic +は、 +.Nm +のソース配布中の +.Pa Magdir +サブディレクトリ中の大量の小さなファイルから機械的に構築されることに +注意してください。 .Pp ファイルシステムテストは、 .Xr stat 2 @@ -58,7 +70,7 @@ Berkeley 使っているシステムに合った既知のファイルの種類 (システムに実装されたソケット、シンボリックリンク、 名前付きパイプ (FIFO)) は、システムヘッダファイル -.Pa sys/stat.h +.Aq Pa sys/stat.h で定義されていれば表示されます。 .Pp マジックナンバテストは、ファイルが固定フォーマットのデータであるか @@ -71,51 +83,83 @@ Berkeley .Pa exec.h で定義されています。 実行ファイルは、 -ファイルの先頭近くの特定の場所に、`マジックナンバ' を持ちます。 +ファイルの先頭近くの特定の場所に、 +.Sq マジックナンバ +を持ちます。 これは .Ux オペレーティングシステムに対し、 ファイルがバイナリ実行形式であり、 どのタイプの実行可能ファイルであるかを知らせます。 -`マジックナンバ' の概念は拡張され、データファイルにも適用されています。 +.Sq マジックナンバ +の概念は拡張され、データファイルにも適用されています。 ファイルの先頭に近い固定位置に固定識別子があるファイルは、 このように記述できます。 -これらのファイルの情報は、マジックファイル +これらのファイル識別情報は、マジックファイル .Pa /usr/share/misc/magic から読み込まれます。 .Pp -もしファイルが -.Tn ASCII -ファイルのようであるなら、 +ファイルがマジックファイルのどのエントリにもマッチしない場合、 +text ファイルに見えるかどうか検査されます。 +.Tn ASCII , +.Tn ISO-8859-x , +非 ISO 8-bit 拡張 ASCII 文字集合 +(Macintosh および IBM PC システムで使用), +.Tn UTF-8-encoded Unicode , +.Tn UTF-16-encoded Unicode , +.Tn EBCDIC +の文字集合が区別可能であり、 +これには各文字集合における印字可能 text を構成する +バイトの範囲およびシーケンスを使用します。 +ファイルがこれらのテストのいずれかを通過した場合、文字集合が報告されます。 +.Tn ASCII , +.Tn ISO-8859-x , +.Tn UTF-8 , +extended-ASCII ファイルは +.Dq text +として識別されます。 +なぜなら、ほとんどどのような端末においても読めるからです。 +.Tn UTF-16 +および +.Tn EBCDIC +は +.Dq character data +でしかありません。 +これらは text を含みますが、読む前に変換が必要だからです。 +さらに、 .Nm -は、その言語を推定しようとします。 +は text タイプファイルの他の特性も判定しようとします。 +ファイルの行の終端が、UNIX 標準の LF ではなく、 +CR, CRLF, NEL のいずれかである場合、そのことが報告されます。 +組み込みのエスケープシーケンスや重ね打ちを含むファイルについても、 +識別されます。 +.Pp +text タイプファイルで使用されている文字集合を判定した後、 +その言語を推定しようとします。 言語テストは、ファイルの始めの数ブロックに 特定の文字列 ( .Pa Inames.h を参照) があるかどうかを探します。たとえばキーワード -.Em .br +.Em \&.br があればそれはおそらく .Xr troff 1 の入力ファイルであり、 -.Em struct +struct というキーワードは、C 言語のプログラムであることを示しています。 こうした推定方法は、前述の 2 つのテストより信頼性が低いため、 最後に行われます。言語テストルーチンは ( .Xr tar 1 -アーカイブのような) その他のファイルもチェックし、未知のファイルを -`ASCII text' とすべきか、`data' とすべきかを決定します。 +アーカイブのような) その他のファイルもチェックします。 +.Pp +上記の文字集合のいずれで記述されているとも識別できなかったファイルは、 +単に +.Dq data +と呼ばれます。 .Sh オプション .Bl -tag -width indent -.It Fl v -プログラムのバージョンを表示して、終了します。 -.It Fl m Ar list -マジックナンバを含む別のファイルの -.Ar list -を指定します。 -これは、1 つのファイルか、コロン (:) で分けられたファイルのリストです。 -.It Fl z -compress で圧縮されたファイルの中身を見ようとします。 +.It Fl b +出力行の前にファイル名を付けません (短縮モード)。 .It Fl c マジックファイルを解析した形式を、調査できるように表示します。 通常、 @@ -129,7 +173,66 @@ compress .Ar name_file もしくは引数の filename は少なくとも 1 つは指定しなければなりません。 標準入力のファイルの種類を判定させる場合は、 -ファイル名として、``-'' を指定します。 +ファイル名として、 +.Dq Ar - +を指定します。 +.It Fl i +.Nm +に、伝統的な人間が読める形式の代りに、 +mime タイプ文字列を出力させます。 +よって、 +.Dq ASCII text +の代りに +.Dq text/plain; charset=us-ascii +となります。 +本オプションが動作するようにするために、 +.Nm +はファイル認識方法 +(例えば、多くの text ファイルタイプやディレクトリ等) を変え、 +別の +.Dq Pa マジック +ファイルを使用します +(後述の +.Sx FILES +節を参照してください)。 +.It Fl k +最初にマッチしても停止せずに、処理を継続します。 +.It Fl m Ar list +マジックナンバを含む別のファイルの +.Ar list +を指定します。 +これは、1 つのファイルか、コロン (:) で分けられたファイルのリストです。 +.It Fl n +各ファイルのチェック後に、標準出力をフラッシュします。 +ファイルの一覧をチェックしているときのみ、有用です。 +ファイルタイプをパイプから出力するプログラムにおいて使用することを意図します。 +.It Fl s +通常、 +.Nm +が引数のファイルの読み込みとタイプの判定を行うのは、 +.Xr stat 2 +が通常ファイルであると報告した場合のみです。 +これにより問題を回避しています。 +なぜなら、特殊ファイルの読み込みは、 +特定の結果を発生させる場合があるからです。 +.Fl s +オプションを指定すると、 +.Nm +は、ブロックおよびキャラクタの特殊ファイルも読み込みます。 +これは、raw ディスクパーティション中のデータに存在する +ファイルシステムタイプの判定に有用です。 +なぜなら、raw ディスクパーティションはブロック型特殊ファイルであるからです。 +本オプションはまた、 +.Nm +が +.Xr stat 2 +が報告するファイルの大きさを無視するようにさせます。 +なぜなら、システムによっては、 +raw ディスクパーティションの大きさは 0 であると報告するものがあるからです。 +.It Fl v +プログラムのバージョンを表示して、終了します。 +.It Fl z +compress で圧縮されたファイルの中身を見ようとします。 .It Fl L オプションは(システムがシンボリックリンクを提供していれば)、 .Xr ls 1 @@ -139,17 +242,17 @@ compress 身の種類を判定します。 .El .Sh 関連ファイル -.Bl -tag -width /usr/share/misc/magic -compact +.Bl -tag -width /usr/share/misc/magic.mime -compact .It Pa /usr/share/misc/magic -デフォルトのマジックナンバのリスト ( -.Fx 3.0 -以前では -.Pa /etc/magic -でした) +デフォルトのマジックナンバのリスト +.It Pa /usr/share/misc/magic.mime +.Fl i +が指定されて mime タイプを出力する場合に使用する、 +デフォルトのマジックナンバのリスト .El .Sh 環境変数 環境変数 -.Em MAGIC +.Ev MAGIC は、デフォルトのマジックナンバファイルを指定するために 使うことができます。 .Sh 関連項目 @@ -168,24 +271,25 @@ FILE(CMD) このバージョンは全ての空白を区切り文字として扱うため パターン内の空白はエスケープしなければならないということです。 たとえば、 -.br ->10 string language impress\ (imPRESS data) -.br +.Bd -literal -compact +>10 string language impress (imPRESS data) +.Ed とマジックファイルに書かれていた場合は、次のように 変更せねばなりません。 -.br ->10 string language\e impress (imPRESS data) -.br +.Bd -literal -compact +>10 string language\e impress (imPRESS data) +.Ed +.Pp またこのバージョンでは、バックスラッシュを含んでいる パターンもエスケープしなくてはいけません。たとえば、 -.br +.Bd -literal -compact 0 string \ebegindata Andrew Toolkit document -.br +.Ed とマジックファイルに書かれていた場合は、次のように 変更せねばなりません。 -.br +.Bd -literal -compact 0 string \e\ebegindata Andrew Toolkit document -.br +.Ed .Pp Sun Microsystems の SunOS リリース 3.2 もしくはそれ以降には、 System V 由来の @@ -194,8 +298,9 @@ System V 由 このバージョンは SUN のものとは、細かい点でしか異なりません。 このバージョンには `&' 演算子の拡張が含まれています。 使い方は、次のようなものです。 -.br +.Bd -literal -compact >16 long&0x7fffffff >0 not stripped +.Ed .Sh マジックディレクトリ マジックファイルのエントリは様々なソース (主に USENET) から集められたり、様々な作者から提供されました。 @@ -215,6 +320,32 @@ System V 由 (たとえば、 .Pa /usr/share/misc/magic.orig という名前に変更します) 。 +.Sh 使用例 +.Bd -literal +$ file file.c file /dev/hda +file.c: C program text +file: ELF 32-bit LSB executable, Intel 80386, version 1, + dynamically linked, not stripped +/dev/hda: block special + +$ file -s /dev/hda{,1,2,3,4,5,6,7,8,9,10} +/dev/hda: x86 boot sector +/dev/hda1: Linux/i386 ext2 filesystem +/dev/hda2: x86 boot sector +/dev/hda3: x86 boot sector, extended partition table +/dev/hda4: Linux/i386 ext2 filesystem +/dev/hda5: Linux/i386 swap file +/dev/hda6: Linux/i386 swap file +/dev/hda7: Linux/i386 swap file +/dev/hda8: Linux/i386 swap file +/dev/hda9: empty +/dev/hda10: empty + +$ file -i file.c file /dev/hda +file.c: text/x-c +file: application/x-executable, dynamically linked (uses shared libs), not stripped +/dev/hda: application/x-not-regular-file +.Ed .Sh 歴史 .Nm コマンドは、少なくとも Research Version 6 @@ -228,95 +359,48 @@ System V 更にまた柔軟になりました。 .Pp このプログラムは、System V バージョンを基づいており、 -.An Ian Darwin +.An Ian Darwin Aq ian@darwinsys.com によって、他の誰かのソースコードを見ることなく 書かれました。 .Pp .An John Gilmore -はコードを拡張し、最初の版よりも -よいものにしました。 +は、コードを拡張し、最初の版よりもよいものにしました。 .An Geoff Collyer -は 不適当なところが数箇所あるのを -発見し、いくつかマジックファイルエントリを -提供しました。 -プログラムは、ずっと発展し続けています。 -.SH 作者 -.An Ian F. Darwin Aq ian@sq.com , -UUCP アドレス {utzoo | ihnp4}!darwin!ian, -住所 P.O. Box 603, Station F, Toronto, Ontario, CANADA M4Y 2L8. -により書かれました。 -.Pp +は、不適当なところが数箇所あるのを発見し、 +いくつかマジックファイルエントリを提供しました。 .An Rob McMahon Aq cudcv@warwick.ac.uk -が 1989 年に、`&' 演算子を単純な -`x&y != 0' から `x&y op z' に拡張するため変更しました。 +は、1989 年に、 +.Sq \&& +演算子を寄贈しました。 .Pp -.An Guy Harris Aq guy@auspex.com -が 1993 年に、 -.Bl -item -offset indent -.It -``旧型'' の `&' 演算子を元のように戻しました。理由は、 -.Bl -enum -offset indent -.It -Rob McMahon の変更によりこれまでの使用法ができなくなった。 -.It -このバージョンの -.Nm -がサポートする SunOS の ``新型'' の `&' 演算子で、`x&y op z' も扱える。 -.It -Rob の変更はドキュメントに書かれていなかった。 -.El -.It -他段階の `>' 追加。 -.It -``beshort'', ``leshort'' などのキーワードの追加。 -.Nm -が動いているプロセスのバイトオーダではなく、 -ファイル特有のバイトオーダで数字を見るようにするキーワードです。 -.El +.An Guy Harris Aq guy@netapp.com +は、1993 年から現在に至り、多くの変更を行っています。 .Pp -.An Ian Darwin -や -.An Christos Zoulas Aq christos@deshaw.com -を含む -多くの作者による 1990-1992 年の変更。 +基本開発と 1990 年から現在に至るメンテナンスを、 +.An Christos Zoulas Aq christos@astron.com +が行っています。 +.Pp +2000 年に +.An Chris Lowth Aq chris@lowth.com +が修正を行い、 +.Fl i +オプションが mime タイプ文字列を出力し、 +別のマジックファイルと内部ロジックを使用するようになりました。 +.Pp +2000 年 7 月に +.An Eric Fischer Aq enf@pobox.com +が修正を行い、 +文字コードを識別し、非 ASCII ファイルの原語を識別しようとするようになりました。 +.Pp +.Pa Magdir +ディレクトリ ( +.Pa /usr/share/misc/magic +ファイルのソース) に対する寄贈者は、ここに含めるには長過ぎます。 +ご了承ください。 .Sh 法律上の注意 -Copyright (c) Ian F. Darwin, Toronto, Canada, -1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993. -.Pp -This software is not subject to and may not be made subject to any -license of the American Telephone and Telegraph Company, Sun -Microsystems Inc., Digital Equipment Inc., Lotus Development Inc., the -Regents of the University of California, The X Consortium or MIT, or -The Free Software Foundation. -.Pp -This software is not subject to any export provision of the United States -Department of Commerce, and may be exported to any country or planet. -.Pp -Permission is granted to anyone to use this software for any purpose on -any computer system, and to alter it and redistribute it freely, subject -to the following restrictions: -.Pp -.Bl -enum -offset indent -.It -The author is not responsible for the consequences of use of this -software, no matter how awful, even if they arise from flaws in it; -.It -The origin of this software must not be misrepresented, either by -explicit claim or by omission. Since few users ever read sources, -credits must appear in the documentation; -.It -Altered versions must be plainly marked as such, and must not be -misrepresented as being the original software. Since few users -ever read sources, credits must appear in the documentation; -.It -This notice may not be removed or altered. -.El -.Pp -A few support files ( -.Fn getopt , -.Fn strtok ) -distributed with this package -are in the public domain; they are so marked. +Copyright (c) Ian F. Darwin, Toronto, Canada, 1986-1999. +Covered by the standard Berkeley Software Distribution +copyright; see the file LEGAL.NOTICE in the source distribution. .Pp The files .Pa tar.h @@ -328,8 +412,10 @@ from his public-domain .Nm tar program, and are not covered by the above restrictions. .Sh バグ -マジックディレクトリから -マジックファイルを自動的に作成するよりよい方法があるはずです。 +.Pa Pagicdir +から +.Pa Magic +ファイルを自動的に作成するよりよい方法があるはずです。 それは何なのでしょうか。より起動を速くするため マジックファイルをバイナリにコンパイルするとよいでしょう。 (たとえば @@ -343,20 +429,21 @@ System V .Nm には、正確さよりも 速度を重視したアルゴリズムが いくつかあるので -.Tn ASCII +text ファイルの内容については 間違うことがあります。 .Pp -.Tn ASCII -ファイルのサポート ( 元々はプログラミング言語のため ) は +text +ファイルのサポート (元々はプログラミング言語のため) は 単純で、不十分であり、更新には再コンパイルが必要です。 .Pp 複数の行に渡るものをサポートするため -``else'' 項があるべきです。 +.Dq else +項があるべきです。 .Pp マジックファイルと キーワードの正規表現を サポートするべきです。 -.Tn ASCII TAB +ASCII TAB をフィールドの識別子にすることは醜く、 ファイルの編集を難しくしていますが、残されています。 .Pp @@ -365,14 +452,16 @@ System V コマンドと man page マクロの区別です。 正規表現のサポートで、このことは簡単になるでしょう。 .Pp -\s-2FORTRAN\s0 に対してプログラムが働きません。 +FORTRAN に対してプログラムが働きません。 行の先頭にインデントされているキーワードを見ることにより -\s-2FORTRAN\s0 だと判別すべきです。 +FORTRAN だと判別すべきです。 正規表現のサポートによりこれは簡単になるでしょう。 .Pp .Em ascmagic に入っている -キーワードのリストは、おそらくマジックファイルに +キーワードのリストは、おそらく +.Pa Magic +ファイルに 入れるべきものです。 これはオフセットの値として `*' のようなキーワードを 使うことで可能でしょう。 @@ -385,9 +474,15 @@ System V マジックファイル上の位置ではなく、 ファイルオフセット順にすることはできないだろうか。 .Pp -プログラムは、推定が「どれぐらいよい」のかを知る方法を -提供すべきです。ファイルの最初の 5 文字が ``From '' -であるときに推測をしても、``Newsgroups:'' や "Return-Path:" +プログラムは、推定が +.Dq どれぐらいよい +のかを知る方法を +提供すべきです。ファイルの最初の 5 文字が +.Dq From\ \& +であるときに推測をしても、 +.Dq Newsgroups: +や +.Dq Return-Path: といった文字による推測ほどよくはないので、推測結果を 捨てることになります。しかし、もしそういった文字が 現れなければ最初の推定を使わなければなりません。 @@ -395,11 +490,12 @@ System V このプログラムは、いくつかの商用の .Nm コマンドより遅いです。 +複数の文字コードのサポートにより、より遅くなっています。 .Pp このマニュアルページ、特にこの節が長過ぎます。 .Sh 入手性 オリジナル作者の最新のバージョンを anonymous FTP で、 -.Em ftp.deshaw.com +.Pa ftp.deshaw.com の .Pa /pub/file/file-X.YY.tar.gz から手に入れることができます。 diff --git a/ja_JP.eucJP/man/man8/disklabel.8 b/ja_JP.eucJP/man/man8/disklabel.8 index 95958c623e..ee44f70dca 100644 --- a/ja_JP.eucJP/man/man8/disklabel.8 +++ b/ja_JP.eucJP/man/man8/disklabel.8 @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)disklabel.8 8.2 (Berkeley) 4/19/94 -.\" %FreeBSD: src/sbin/disklabel/disklabel.8,v 1.15.2.3 2000/10/31 01:32:23 jkh Exp % +.\" %FreeBSD: src/sbin/disklabel/disklabel.8,v 1.15.2.7 2000/12/28 16:45:04 hoek Exp % .\" .\" jpman %Id: disklabel.8,v 1.2 1997/03/31 14:09:16 horikawa Stab % .\" @@ -44,51 +44,44 @@ .Nm disklabel .Nd ディスクラベルの読み書きを行う .Sh 書式 -.Nm disklabel +.Nm .Op Fl r .Ar disk -.br -.Nm disklabel +.Nm .Fl w .Op Fl r .Ar disk Ar disktype .Oo Ar packid Oc -.br -.Nm disklabel +.Nm .Fl e .Op Fl r .Ar disk -.br -.Nm disklabel +.Nm .Fl R .Op Fl r .Ar disk Ar protofile -.br -.Nm disklabel +.Nm .Op Fl NW .Ar disk -.sp -.br -.Nm disklabel +.Pp +.Nm .Fl B .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc .Ar disk -.Oo Ar disktype Oc -.br -.Nm disklabel +.Oo Ar disktype/auto Oc +.Nm .Fl w .Fl B .Oo .Fl b Ar boot1 .Fl s Ar boot2 .Oc -.Ar disk Ar disktype +.Ar disk Ar disktype/auto .Oo Ar packid Oc -.br -.Nm disklabel +.Nm .Fl R .Fl B .Oo @@ -96,9 +89,7 @@ .Fl s Ar boot2 .Oc .Ar disk Ar protofile -.Oo Ar disktype Oc -.\" 注: 上記 .br は改行動作のために挿入 -.\" By horikawa@jp.freebsd.org (30 Mar 1997) +.Oo Ar disktype/auto Oc .Sh 解説 .Nm はディスクドライブやディスクパックにラベルを書き込んだり、 @@ -122,7 +113,7 @@ .Nm による操作のほとんどは メモリ内にあるラベルのコピーに対してアクセスします。 -(ディスク上に存在する)ラベルにアクセスするためには +(ディスク上に存在する) ラベルにアクセスするためには .Fl r オプションを使用します。 このオプションにより、 @@ -137,23 +128,30 @@ .Ss ディスクデバイス名 .Pp 全ての -.Nm disklabel -の書式で、ディスクのデバイス名が必要です。 -ディスクのデバイス名は必ずローデバイスで -.if t 「全体」を表すパーティション (すなわち ``c'') -.if n 「全体」を表すパーティション (すなわち "c") -でなければなりません。 -.if t 「全体」を表すパーティション (すなわち ``c'') -.if n 「全体」を表すパーティション (すなわち "c") -とは、例えば -.Pa /dev/da0c -です。 .Nm -は +の書式で、ディスクのデバイス名が必要です。 +ディスクのデバイス名は、 +ディスクまたはスライスを示すローデバイス名でなければなりません。 +例えば .Pa da0 -といった省略形を内部で -.Pa /dev/da0c -に変換するため、省略形も使用できます。 +は DOS パーティションに無関係でディスク全体を表し、 +.Pa da0s1 +はスライスを表します。 +デバイスによっては、特に +.Ar ccd +では、 +.Dq ディスク全体を示す +(または +.Dq c ) +パーティションを必要とします。 +例えば +.Pa ccd0c +です。 +デバイス指定時には、 +.Pa /dev/ +のパスプレフィックスを付ける必要はありません。 +.Nm +は自動的にこれを前に付けます。 .Ss ディスクラベルの読み込み .Pp ラベルをディスクドライブに保存したり確認するためには @@ -161,7 +159,7 @@ .Nm を使用します。 .Pp -.Nm disklabel +.Nm .Op Fl r .Ar disk .Pp @@ -182,17 +180,25 @@ .Fl r フラグが与えられると、 ディスク上の実際のラベルが表示されます。 +通常は、どちらでも同じ結果となりますが、 +ラベルが未初期化の場合とまたは壊れている場合には、違う結果となります。 .Ss 標準的なラベルの書き込み .Pp 標準的なラベルを書き込むには、 以下の書式を使います。 .Pp -.Nm disklabel +.Nm .Fl w .Op Fl r -.Ar disk Ar disktype +.Ar disk Ar disktype/auto .Oo Ar packid Oc .Pp +.Nm +.Fl w +.Op Fl r +.Ar disk +auto +.Pp コマンドには引数として、ラベルを書き込むドライブ名および .Pa disktab(5) に書かれているドライブタイプが必要です。 @@ -233,12 +239,34 @@ disktab ディスクに対するラベルの書き込みは唯一サポートされた操作であり、 .Ar disk 自身は標準の名前 (フルパス名であってはなりません) で提供される必要があります。 +.Pp +PC ベースのシステムでは、 +BIOS に正しく +.Fx +ディスクラベルを認識させるために、特別な要件があります。 +古いシステムでは、 +.Dq 危険な方法で専用化された +ディスクラベルが必要かもしれません。 +これは、偽の DOS パーティションを作成することにより、 +最近のディスクのジオメトリに対して古い BIOS が引き起す問題を +回避するというものです。 +新しいシステムでは、通常の DOS スライスを +.Ar fdisk +で作成して、このスライス中に +.Fx +ディスクラベルを作成すれば良いでしょう。 +本件についてはこのマニュアルで後述します。 +.Pp +新規ディスクラベルをインストールするだけでは、 +このラベルでシステムをブートさせることは出来ません。 +ブートブロックもまたインストールする必要があります。 +本件についてはこのマニュアルで後述します。 .Ss 既存のディスクラベルの編集 .Pp 既存のディスクラベルを編集するには、 以下の書式を使います。 .Pp -.Nm disklabel +.Nm .Fl e .Op Fl r .Ar disk @@ -264,7 +292,7 @@ disktab ファイルからディスクラベルを復元するには、 以下の書式を使います。 .Pp -.Nm disklabel +.Nm .Fl R .Op Fl r .Ar disk Ar protofile @@ -285,21 +313,21 @@ disktab 後述のブートオプションを参照してください。 .Ss ディスクラベル領域への書き込みの有効化および無効化 .Pp -デフォルトでは +デフォルトでは、 ディスクの先頭領域にあるディスクラベル領域への書き込みは不可能です。 ディスクドライバはいかなる操作も無視します。 -もし(例えばラベルを消去するなど) +もし (例えばラベルを消去するなど) この領域への書き込みを行う必要があるならば、 以下の書式を使います。 .Pp -.Nm disklabel +.Nm .Op Fl W .Ar disk .Pp ラベルの書き込みを可能にした後に不可能にするには 以下のコマンドを使います。 .Pp -.Nm disklabel +.Nm .Op Fl N .Ar disk .Ss ブートストラップのインストール @@ -308,7 +336,7 @@ disktab の最後の 3 つの書式は、ブートストラップコードを インストールするために使われます: .Pp -.Nm disklabel +.Nm .Fl B .Oo .Fl b Ar boot1 @@ -320,7 +348,7 @@ disktab この書式ではブートストラップのみインストールします。 ディスクラベルは変更しません。 .Pp -.Nm disklabel +.Nm .Fl w .Fl B .Oo @@ -330,12 +358,17 @@ disktab .Ar disk Ar disktype .Oo Ar packid Oc .Pp -.if t この書式は前述の ``ラベルの書き込み'' コマンドと一致します。 -.if n この書式は前述の "ラベルの書き込み" コマンドと一致します +この書式は前述の +.Dq ラベルの書き込み +コマンドと一致します。 新しいボリュームラベルを書き込むとともに ブートストラップのインストールもおこないます。 +ベースディスクに対して本コマンドを実行すると、 +.Dq 危険な方法で専用化された +ラベルを作成します。 +本コマンドは、通常、ベースディスクではなくスライスに対して実行します。 .Pp -.Nm disklabel +.Nm .Fl R .Fl B .Oo @@ -345,8 +378,9 @@ disktab .Ar disk Ar protofile .Oo Ar disktype Oc .Pp -.if t この書式は前述の ``ラベルの復元'' コマンドと一致します. -.if n この書式は前述の "ラベルの復元" コマンドと一致します. +この書式は前述の +.Dq ラベルの復元 +コマンドと一致します. ボリュームラベルを復元するとともに ブートストラップのインストールもおこないます。 .Pp @@ -382,8 +416,9 @@ disktab このディスクに対する .Xr disktab 5 エントリの -.if t ``b0'' および ``b1'' -.if n "b0" および "b1" +.Dq b0 +および +.Dq b1 パラメータより得られます。 .It そうでない場合、デフォルトのブートイメージ名は @@ -394,6 +429,62 @@ disktab になります (詳細はアーキテクチャによって異なり、 Alpha においては単一ステージのブートが使用されます)。 .El +.Ss スクラッチからの、ブート可能ディスクの初期化/フォーマット +.Pp +ディスクをスクラッチから初期化するには、次の手順をお勧めします。 +この手順は、FreeBSD 以外のスライスを含む、 +ディスク上のすべてを削除してしまうことに注意してください。 +.Bl -enum +.It +.Ar fdisk +を使用して、DOS パーティションテーブルを作成します。 +これにより、 +.Fx +ディスクラベルを保持するディスク全体のスライスを作成し、 +マスタブートレコードをインストールします。 +.It +.Ar disklabel +を使用して、最初の +.Fx +ディスクラベルを初期化し、 +.Fx +ブートブロックをインストールします。 +.It +.Ar disklabel +を使用して、新規に作成したラベルを編集し、適切なパーティションを追加します。 +.It +最後に、ラベル中に作成したファイルシステムパーティションを newfs します。 +典型的なディスクラベルのパーティショニング方式では、 +.Dq a +パーティションは約 128MB でルートファイルシステムを、 +.Dq b +パーティションはスワップを、 +.Dq d +パーティションは /var を (通常 128MB)、 +.Dq e +パーティションは /var/tmp を (通常 128MB)、 +.Dq f +パーティションは /usr を (通常 2G くらい)、 +.Dq g +パーティションは /home を (通常、残り)、 +それぞれ割り当てます。 +これは、システムによって異なります。 +.El +.Pp +.Nm fdisk Fl BI Ar da0 +.Pp +.Nm +.Fl w +.Fl r +.Fl B +.Ar da0s1 +auto +.Pp +.Pp +.Nm +.Fl e +.Ar da0s1 +.Pp .Sh 関連ファイル .Bl -tag -width Pa -compact .It Pa /etc/disktab @@ -403,7 +494,7 @@ Alpha .Nm は ディスクラベルを確認、編集、または復元する際に -アスキー形式のラベルを使用します。 +ASCII 形式のラベルを使用します。 フォーマットは以下のとおりです。 .Bd -literal -offset 4n # /dev/da1c: @@ -452,7 +543,9 @@ flags が指定可能です。 .Ar removable はリムーバブルメディアドライブに対して設定されますが、 -現在の FreeBSD のドライバはこのフラグを +現在の +.Fx +のドライバはこのフラグを 評価しません。 .Ar ecc はサポートされていません。 @@ -504,22 +597,31 @@ UFS LFS ファイルシステムに対しては、 セグメントシフト値を意味します。 .El +.Pp 行の残りの部分はコメントで、 ドライブの -一般的には使われていない(しかし多分正確な)ジオメトリ情報に +一般的には使われていない (しかし多分正確な) ジオメトリ情報に 基づいたシリンダの割り当て情報を示しています。 アスタリスク (*) はパーティションがシリンダ境界で 厳密にはじまっていない、もしくは終っていないことを意味します。 .Sh 使用例 -.Dl disklabel da0 +.Dl disklabel da0s1 .Pp -da0 のラベルとしてカーネル内のコピーを -.Pa /dev/da0c +.Pa da0s1 +のラベルとしてカーネル内のコピーを +.Pa /dev/da0s1 から得られたものとして表示します。 +ラベルを読み込み時には、ラベルがスライス上に存在する場合でも、 +FreeBSD はベースディスク名を指定することを許しています。 +しかしながら、厳密には、 +ベースディスク名を指定するのは +.Dq 危険な方法で専用化された +ラベルを使用する場合に限定してください。 +通常は、スライスを指定してください。 .Pp -.Dl disklabel da0 > savedlabel +.Dl disklabel da0s1 > savedlabel .Pp -.Pa da0 +.Pa da0s1 に対する カーネル内のコピーをファイルに .Pa savedlabel @@ -528,39 +630,43 @@ da0 .Fl R フラグを用いてラベルを復元する際に使用できます。 .Pp -.Dl disklabel -w -r /dev/da0c da2212 foo +.Dl disklabel -w -r /dev/da0s1 da2212 foo .Pp .Pa /etc/disktab に書かれている -.if t ``da2212'' -.if n "da2212" +.Dq da2212 の情報を -da0 のラベルとして書き込みます。 +.Pa da0s1 +のラベルとして書き込みます。 存在したブートストラップコードは使えなくなります。 .Pp -.Dl disklabel -e -r da0 +.Dl disklabel -e -r da0s1 .Pp -da0 のディスク上のラベルを読み込み、編集し、再び書き込みます。 +.Pa da0s1 +のディスク上のラベルを読み込み、編集し、再び書き込みます。 ディスク上のラベルとともにカーネル内コピーも書き換えられます。 存在したブートストラップコードは影響を受けません。 .Pp -.Dl disklabel -r -w da0 auto +.Dl disklabel -r -w da0s1 auto .Pp -da0 から必要な情報を自動検出し、新しいラベルをディスクに書こうとします。 +.Pa da0s1 +から必要な情報を自動検出し、新しいラベルをディスクに書こうとします。 パーティションおよびファイルシステム情報を編集するために、 この後で disklabel -e コマンドを使って下さい。 .Pp -.Dl disklabel -R da0 savedlabel +.Dl disklabel -R da0s1 savedlabel .Pp .Pa savedlabel に書かれている情報を -da0 のラベルとして書き込みます。 +.Pa da0s1 +のラベルとして書き込みます。 ディスク上のラベルとともにカーネル内コピーも書き換えられます。 存在したブートストラップコードは影響を受けません。 .Pp -.Dl disklabel -B da0 +.Dl disklabel -B da0s1 .Pp -da0 に新たにブートストラップコードを書き込みます. +.Pa da0s1 +に新たにブートストラップコードを書き込みます. ブートストラップコードは .Pa /boot/boot1 、およびもし必要ならば @@ -568,17 +674,34 @@ da0 です。 ディスク上のラベルおよびカーネル内コピーは影響を受けません。 .Pp -.Dl disklabel -w -B /dev/da0c -b newboot1 -s newboot da2212 +.Dl disklabel -w -B /dev/da0s1 -b newboot1 -s newboot da2212 .Pp 新たなラベルとブートストラップコードを書き込みます。 -.if t ラベルは disktab の ``da2212'' の情報を使用し、 -.if n ラベルは disktab の "da2212" の情報を使用し、 +ラベルは disktab の +.Dq da2212 +の情報を使用し、 ディスク上のラベルとともにカーネル内コピーも書き換えられます。 ブートストラップコードは .Pa /boot/newboot1 と .Pa /boot/newboot2 です。 +.Pp +.Dl dd if=/dev/zero of=/dev/da0 bs=512 count=32 +.Dl fdisk -BI da0 +.Dl dd if=/dev/zero of=/dev/da0s1 bs=512 count=32 +.Dl disklabel -w -r -B da0s1 auto +.Dl disklabel -e da0s1 +.Pp +ディスク上の既存の情報を完全に削除し、 +単一の +.Dq ディスク全体 +スライスを含む DOS パーティションテーブル付きの、 +ブート可能ディスクを新規に作成します。 +次にスライスを初期化し、編集します。 +.Pa dd +はオプションですが、 +BIOS によっては正しくディスクを認識するために必要です。 .Sh 関連項目 .Xr disklabel 5 , .Xr disktab 5 , @@ -593,23 +716,23 @@ da0 ラベルを作成するものがあります。 そのため、 オープンされているディスクのラベルは -.if t ``a'' -.if n "a" +.Dq a パーティションに書く必要があります。 このような理由で、 次の 2 ステップにより、 所望のラベルを作成する必要がある場合があります。 第 1 ステップは少なくとももう 1 つのパーティションを作成することであり、 第 2 ステップは -.if t ``a'' -.if n "a" +.Dq a パーティションを小さくしながら 新たなパーティションのラベルを設定することです。 .Pp ファイルシステムによっては、 用意された領域にブートストラップコードが収まり切らないような マシンがあるかも知れません -その結果として、``ブート可能な'' ディスクのパーティションに +その結果として、 +.Dq ブート可能な +ディスクのパーティションに ファイルシステムを作成できない場合があります。 ブートストラップコードを書き込む時に、 .Nm @@ -626,8 +749,9 @@ FS_BOOT はそのパーティションに重なるようなブートストラップコードを書き込みません。 .Sh バグ ディスク名がフルパスで指定されない場合には、 -.if t デバイス名は ``c'' パーティションになります。 -.if n デバイス名は "c" パーティションになります。 +デバイス名は +.Dq c +パーティションになります。 .Pp i386 アーキテクチャでは、プライマリブートストラップセクタに、 組み込みの