diff --git a/ja_JP.eucJP/books/handbook/eresources/chapter.sgml b/ja_JP.eucJP/books/handbook/eresources/chapter.sgml
index 9727a9d432..e1eff2e145 100644
--- a/ja_JP.eucJP/books/handbook/eresources/chapter.sgml
+++ b/ja_JP.eucJP/books/handbook/eresources/chapter.sgml
@@ -1,1294 +1,1328 @@
インターネット上のリソース
訳: &a.jp.yuki;、1996 年 8 月 28 日
FreeBSD の進歩は急速であり、
印刷したメディアは最新の開発をフォローするのに実用的ではありません。
それだけしかない、というわけではありませんが、
最新情報を入手する方法としては電子的なリソースがベストです。
FreeBSD はボランティアの努力によって、ユーザコミュニティ自体が、
- 一種のテクニカルサポート部門
としての役割も通常果たしており、
+ 一種の テクニカルサポート部門
としての役割も通常果たしており、
電子メールや Usenet
のニュースがこれらのコミュニティにたどり着く最も効果的な方法になっています。
以下に、FreeBSD
ユーザコミュニティに連絡を取る場合の最も重要な点についての
概略を示します。
もしここに書かれていない他のリソースに気がついた場合は、それらを
&a.doc; に送って頂ければ、
それらをここに含めるかもしれません。
メーリングリスト
- 多くのFreeBSDの開発メンバはUSENETを読むことができますが、
+ 多くの FreeBSD の開発メンバは USENET を読むことができますが、
もし、comp.unix.bsd.freebsd.*
のグループの一つに質問を投稿したとしても
タイムリにその質問を受け取るということは保証できません。
質問を適切なメーリングリストに投稿すれば、
- 私たちかFreeBSDの関係者から、よりよい
+ 私たちか FreeBSD の関係者から、よりよい
(そして少なくともより早い)
反応がいつでも得られることでしょう。
さまざまなメーリングリストの憲章を
このドキュメントの最後に記載します。私たちは、
メーリングリストの質、特に技術面に関する質を高く保つ
ために努力しているので、
メーリングリストに参加する前にその憲章を読んでください。
私たちのメーリングリストの参加者のほとんどは、
現在非常 にたくさんの FreeBSD
に関連したメッセージを毎日受け取っており、メーリン
グリストに対するふさわしい
用いられ方をするための憲章やルールを決めるこ とによって、
メーリングリストの S/N 比を高くする保つように励んでいます。
そうしないと、結果的に、メーリングリストがプロジェクトにとって
事実上のコミュニケーションの手段になってしまうでしょう。
メーリングリストはいずれもアーカイブされており、それらは
FreeBSD World Wide Web
server で検索することができます。
キーワード検索可能なアーカイブの提供は、
良くある質問に対する回答を見つけるすぐれた方法ですから、
質問を投稿する前に調べてみるべきでしょう。
メーリングリストの概説
一般的なメーリングリスト:
以下のものは誰でも自由に参加できる (そしておすすめの)
- 一般的なものです:
+ 一般的なものです。
リスト
目的
cvs-all
FreeBSD ソースツリーへ加えられた変更について
freebsd-advocacy
FreeBSD の福音伝道
freebsd-announce
重要なイベントやプロジェクトのマイルストン
freebsd-arch
アーキテクチャ、設計に関する議論
freebsd-bugs
バグレポート
freebsd-chat
FreeBSD
コミュニティに関連する技術的ではない話題
freebsd-config
FreeBSD のインストールと設定用のツールの開発に関する話題
freebsd-current
FreeBSD-current の使用に関連する議論
freebsd-isp
FreeBSD を用いている
インターネットサービスプロバイダの話題
freebsd-jobs
FreeBSD 関連の雇用機会に関する話題
freebsd-newbies
FreeBSD 初心者ユーザの活動と議論
freebsd-policy
FreeBSD Core team のポリシーに関する議論。
流量は少なく、投稿することはできません
freebsd-questions
ユーザからの質問と技術サポート
freebsd-stable
FreeBSD-stable の使用に関連する議論
freebsd-test
メッセージの送信試験を行なうために、
実際のメーリングリストの代わりに使うアドレス
技術的なメーリングリスト:
以下のメーリングリストは、技術的な 議論のためのものです。
それらの利用や内容のためにしっかりとしたガイドラ
インがあるので、これらのメーリングリストに入ったり、
どれか一つにメール を送ったりする前には、
それらのメーリングリストの憲章を注意深く読むべきです。
リスト
目的
freebsd-afs
FreeBSD へのAFSの移植
freebsd-alpha
FreeBSD の Alpha への移植
+
+ freebsd-arm
+ FreeBSD の ARM プロセッサへの移植
+
+
freebsd-atm
FreeBSD での ATM ネットワーク使用に関する話題
freebsd-audit
ソースコード監査プロジェクト
+
+ freebsd-binup
+ バイナリアップデートシステムの設計と開発
+
+
+
+ freebsd-cluster
+ FreeBSD のクラスタ環境での利用
+
+
freebsd-database
FreeBSD
上でのデータベースの利用や開発に関する議論
freebsd-doc
FreeBSD 関連ドキュメントの作成
freebsd-emulation
Linux/DOS/Windows
のような他のシステムのエミュレーション
freebsd-fs
ファイルシステム
freebsd-hackers
一般的な技術の議論
freebsd-hardware
FreeBSD の走るハードウェアの一般的な議論
freebsd-i18n
FreeBSD の国際化
freebsd-ia64
FreeBSD の Intel が開発中の IA64 システムへの移植
freebsd-ipfw
IP firewall コードの再設計に関する技術的議論
freebsd-isdn
ISDN 開発者
freebsd-java
Java 開発者や、FreeBSD へ JDK
を移植する人たち
freebsd-libh
第 2 世代のインストール、パッケージシステム
freebsd-mobile
モーバイルコンピューティングについての議論
freebsd-mozilla
mozilla の FreeBSD への移植に関する議論
freebsd-new-bus
バスアーキテクチャに関する技術的な議論
freebsd-net
ネットワークおよび TCP/IP
ソースコードに関する議論
freebsd-platforms
Intel 以外のアーキテクチャのプラットフォームへの移植
freebsd-ports
Ports コレクションに関する議論
freebsd-ppc
FreeBSD の PowerPC への移植
+
+ freebsd-qa
+ 品質保証 (通常はリリースの保留) についての議論
+
+
freebsd-realtime
FreeBSD 用のリアルタイム拡張の開発に関する話題
freebsd-scsi
SCSI サブシステム
freebsd-security
セキュリティに関する話題
freebsd-security-notifications
セキュリティに関する通知
freebsd-small
組み込みアプリケーションにおける FreeBSD の利用
freebsd-smp
対称 / 非対称の
マルチプロセッシングの設計に関する議論
freebsd-sparc
FreeBSD の Sparc への移植
freebsd-tokenring
FreeBSD でのトークンリングのサポート
制限されているメーリングリスト:
以下のメーリングリストはより特化された (そしてより厳しい)
メンバーのためのものであり、一般的な興味を惹くようなものでは
ありません。
このようなメーリングリストに参加する前に、技術的なメーリングリストで
自らの存在感をアピールするのは良い考えです。
そうすることにより、議論の際のエチケットを学ぶことができるでしょう。
メーリングリスト
目的
freebsd-core
FreeBSDコアチーム
freebsd-hubs
ミラーサイトを運営している人達
(基盤のサポート)
freebsd-install
インストール関係の開発
freebsd-user-groups
ユーザグループの調整
freebsd-www
www.freebsd.org
の管理者
メーリングリストのダイジェスト版:
上述のメーリングリストの多くでダイジェスト版が利用できます。
ダイジェスト版ではメーリングリストに新たに投稿された記事が集められ、
100KB を超えた時点で一つのメールとしてまとめて配送されます。
ダイジェスト版が利用できる
メーリングリストは以下のとおりです。
メーリングリスト
freebsd-afs-digest
freebsd-alpha-digest
freebsd-chat-digest
freebsd-current-digest
freebsd-cvs-all-digest
freebsd-database-digest
freebsd-hackers-digest
freebsd-ia64-digest
freebsd-isdn-digest
freebsd-java-digest
freebsd-questions-digest
freebsd-security-digest
freebsd-sparc-digest
freebsd-stable-digest
freebsd-test-digest
- CVSメーリングリスト:
+ CVS メーリングリスト:
以下のメーリングリストはソースツリーの
さまざまな場所の変更のログメッセージを見ることに
興味のある人向けです。
これらは読み専用のリストで、
これらにメールを送る事は出来ません。
メーリングリスト
ソースの範囲
(ソースの) 範囲の説明
cvs-all
/usr/src
ツリーのすべての変更 (スーパーセット)
参加方法
- どのメーリングリストもFreeBSD.ORGにあるので、
+ どのメーリングリストも
+ FreeBSD.ORG にあるので、
メーリングリストにメールを送るには、ただ
<listname@FreeBSD.org>
にメールを送るだけです。すると、
メーリングリストに登録されている世界中のメンバに
再配布されます。
メーリングリストに参加するには、
subscribe <listname> [<optional address>]
という内容をメッセージの本文に含むメールを &a.majordomo;
- に送ります。例えば、freebsd-announce
- に参加したい場合は次のようにします:
+ に送ります。たとえば、freebsd-announce
+ に参加したい場合は次のようにします。
&prompt.user; mail majordomo@FreeBSD.org
subscribe freebsd-announce
^D
もし、あなたが、自分自身を違う名前 (メールアドレス)
で登録したい場合、あるいは、ローカルなメーリングリスト
(もしあなたのサイトに、興味を持った仲間がいるなら、
これはより有効ですし、私たちにとっても非常に嬉しいことです。)
を登録する申し込みをおこないたいのであれば、次のようにします:
&prompt.user; mail majordomo@FreeBSD.org
subscribe freebsd-announce local-announce@somesite.com
^D
最後に、majordomo に対して
他のタイプのコントロールメッセージを送ることで
メーリングリストから脱退したり、
- メーリングリストの他のメンバのリストを 得たり、
+ メーリングリストの他のメンバのリストを得たり、
再びメーリングリストのリストを見たりすることも可能です。
利用できるコマンドの完全なリストを入手するには、
次のようにします:
&prompt.user; mail majordomo@FreeBSD.org
help
^D
再度言いますが、
私たちは技術的なメーリングリストでは技術的な議論を保つよう
要求します。もし、重要なアナウンスにのみ興味があるなら、
freebsd-announce への参加をお勧めします。
これには、あまりたくさんのメールは流れません。
メーリングリストの憲章
- 全て FreeBSD
+ すべて FreeBSD
メーリングリストは誰でもそれらを利用することに
固守しなければいけないという一定の簡単なルールがあります。
- これらのルー ルに従わないと、結果として FreeBSD の Postmaster
+ これらのルールに従わないと、結果として FreeBSD の Postmaster
postmaster@FreeBSD.orgから 2 回までは警
- 告を受けます。3回違反すると、
- 投稿者は全てのFreeBSDのメーリングリストから削除され、
+ 告を受けます。3 回違反すると、
+ 投稿者はすべての FreeBSD のメーリングリストから削除され、
そのメーリングリストへのさらなる投稿から締め出されるでしょう。
これらのルールや対策が必要なのは残念です。
しかし、今日のインターネッ
トはずいぶんいやらしい環境になっており、一般の人々は、
- その(対策の) メカニズムがいかにもろいかという事すら
+ その (対策の) メカニズムがいかにもろいかという事すら
認識する事が出来ていないと思われます。
道標
いかなる投稿記事もそのメーリングリストの
- 基本的な憲章を守るべきです。例えば、
+ 基本的な憲章を守るべきです。たとえば、
そのメーリングリストが技術的な問題に関するものであれば、
技術的な議論を含む投稿でなければなりません。現在継続中の
不適切な憲章やフレイムは、
- 所属している全ての人に対してメーリングリスト
+ 所属しているすべての人に対してメーリングリスト
の価値を下げてしまうだけですし、
許される行為ではないでしょう。
とくに話題のない自由形式の議論に対しては freebsd-chat
freebsd-chat@FreeBSD.orgメーリ
ングリストが自由に認可されているので、
かわりに使うべきでしょう。
一度に 3
つ以上のメーリングリストには決して投稿すべきでは
ありません。2
つのメーリングリストには双方に明確な必要性がある場合にのみ
投稿すべきです。どのリストに対しても、
(メーリングリストの)参加者は (複数のメーリングリ
- ストに)重複して参加しており、関連する部分が少ない (例えば、
+ ストに)重複して参加しており、関連する部分が少ない (たとえば、
"-stable と -scsi")メーリングリストを除いては、
一度に複数のメーリングリストに投稿する理由は全くありません。もし、
Cc に複数の メーリングリストがそのような形で現れて、
あなたに届いたのであれば、再びそのメールに返事を出す前に、
Cc の部分もまた編集するべきです。
元記事を書いたのが誰であっても、
あなた自身のクロスポストに
まだ責任があります。
ユーザであれ開発者であれ、(議論の中で)
- 個人を攻撃したり冒涜した りすることは許されません。
+ 個人を攻撃したり冒涜したりすることは許されません。
個人的なメールを引用したり再投稿したり
する許可をもらえなかったり、もらえそうにない時に、
それをおこなう ようなネチケット (訳注:
ネットワークにおけるエチケット) に対する
ひどい違反は好まれませんが、
してはならないと特別に定められている わけではありません。
しかしながら、そのような内容がメー
リングリストの憲章に沿う場合はほとんどありません。
このため、メー
リングリストの憲章に違反しているということだけで警告
(または禁止) に値するものと考えていいでしょう。
FreeBSD 以外の関連する製品やサービスの広告は、
絶対に禁止し、spam
による違反者が宣伝していることが明確であったら、
すぐに禁止します。
個々のメーリングリストの憲章:
FREEBSD-AFS
Andrew ファイルシステム
このリストは、CMU/Transarc の AFS
の移植や使用に関する議論のためです.
FREEBSD-ANNOUNCE
重要なイベント/マイルストン
これは、単にたまに発表される重要な freebsd
のイベントに関心がある人のた めのメーリングリストです。
これは、スナップショットやその他のリリースに
ついてのアナウンスを含みます。
そのアナウンスは新しい FreeBSD の機能のア
ナウンスを含んでいます。
ボランティア等の呼びかけがあるかもしれません。
これは流通量の少ないメーリングリストで、
完全なモデレートメーリングリストです。
FREEBSD-ARCH
アーキテクチャと設計の議論
これは、FreeBSD
のアーキテクチャに関する議論を行なうためのメーリングリストです。
当然、その内容は原則的に技術的なものに限定されます。
このメーリングリストにふさわしい話題は以下のようなものです。
複数のカスタマイズされたビルドを同時に行うには、
ビルドシステムをどういじり直せばよいか
VFS で Heidemann レイヤを動作させるには、
何を修正する必要があるか
同一のデバイスドライバを多数のバス、
アーキテクチャに共通で使えるようにするには、
デバイスドライバインタフェースをどう改変すれば良いか
ネットワークドライバの書き方
FREEBSD-AUDIT
ソースコード監査プロジェクト
これは、FreeBSD ソースコード監査プロジェクトのメーリングリストです。
本来はセキュリティ関連の変更を行なうためのものだったのですが、
現在の憲章では、ソースコードに対する監査全般のレビューを行なうためのもの、
というように拡張されました。
このメーリングリストは修正パッチを含んだ、
非常に大きなメッセージが流れます。おそらく、
普通の FreeBSD ユーザが興味を持つものではないでしょう。
セキュリティに関する議論のうち、
ソースコードの変更とは関係のないものについては
freebsd-security で扱われています。
逆に FreeBSD 開発者は修正パッチをこのメーリングリストに送り、
レビューを受けてください。
これは、その修正パッチにあるバグがシステムの完全性に悪い影響を与える
可能性があるような箇所を扱う場合は特に必要になります。
-
+
+
+
+
+
+ FREEBSD-BINUP
+
+
+ FreeBSD バイナリアップデートプロジェクト
+
+ このメーリングリストは、バイナリアップデートシステム
+ (または binup) に関する議論の場を提供します。設計上の問
+ 題、実装の詳細、パッチ、バグ報告、状況報告、機能の要望、
+ コミットログ、その他 binup に関連するもろもろが格好の話
+ 題となります。
FREEBSD-BUGS
バグレポート
これは、FreeBSD
のバグレポートのためのメーリングリストです。可能である
場合はいつでも、バグは &man.send-pr.1;
を使うか、WEB
interfaceを用い
て送られる必要があります。
FREEBSD-CHAT
FreeBSDのコミュニティに関する
技術的ではない話題
このメーリングリストは技術的ではなく、
社会的な情報について、
他のメーリングリストでは取り扱わない話題を含みます。
これは、Jordanがシロイタチに似ているかどうか、
大文字で打つかどうか、誰がたくさんコーヒーを飲むか、
どこのビールが一番うまいか、
誰が地下室でビールを作っているか、
などについての議論を含みます。時々重要なイベント
(将来開催されるパーティーや、結婚式、誕生日、
新しい仕事など) のお知らせが、
技術的なメーリングリストから でてきます。しかし、
フォローは直接
-chatメーリングリストにするべきです。
FREEBSD-CORE
FreeBSDコアチーム
これは、コアメンバが使う内部メーリングリストです。
- FreeBSDに関連する深 刻なやっかい事の裁定や
+ FreeBSDに関連する深刻なやっかい事の裁定や
ハイレベルな綿密な調査を要求するときに、このメー
リングリストにメッセージを送る事が出来ます。
FREEBSD-CURRENT
FreeBSD-currentの使用に関する議論
これは freebsd-current
のユーザのためのメーリングリストです。
メーリングリストでの話題は、-current
で登場した新しい機能について、
その新機能によってユーザに影響することについての注意、
および -current
のままでいるために必要な手順についての説明を含みます。
current
を走らせている人はこのメーリングリストに
登録しなくてはなりません。
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-CURRENT-DIGEST
FreeBSD-currentの使用に関する議論
freebsd-current
メーリングリストのダイジェスト版です。
このダイジェストは freebsd-current
に送られたすべてのメッセージをまとめたものを、
- 1つのメールにして送り出します。
- このメーリングリストは 読み専用です。
+ 1 つのメールにして送り出します。
+ このメーリングリストは読み専用です。
メールを送るような事はしないでください。
FREEBSD-DOC
ドキュメンテーションプロジェクト
このメーリングリストは FreeBSD
向けの文書の作成に関連する事柄やプロジェクトについて議論を行なうためのものです。
このメーリングリストに参加しているメンバは、
- FreeBSD
- ドキュメンテーションプロジェクト
に参加していることになります。
+ FreeBSD ドキュメンテーションプロジェクト
+ に参加していることになります。
このメーリングリストは公開されているので、
参加や投稿は自由に行なうことができます。
FREEBSD-FS
ファイルシステム
- FreeBSDのファイルシステムに関する議論
+ FreeBSD のファイルシステムに関する議論
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-IPFW
IP Firewall
これは FreeBSD の IP firewall コードの再設計に関する
技術的な議論のためのフォーラムです。
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-IA64
FreeBSD の IA64 への移植
これは FreeBSD の Intel の IA-64 プラットフォームへの
移植に参加している人達のための技術的なメーリングリストで、
問題を提起し解決策を議論するためのものです。
このような技術的な議論に興味を持つ個人は歓迎します。
FREEBSD-ISDN
ISDNコミュニケーション
このメーリングリストは、
FreeBSDに対するISDNサポートの開発の議論を
おこなう人のためのものです.
FREEBSD-JAVA
- Javaの開発
+ Java の開発
このメーリングリストは、FreeBSD
- 向けの重要なJavaアプリケーションの開発や、JDK
+ 向けの重要な Java アプリケーションの開発や、JDK
の移植やメンテナンスの
議論をする人のためのものです.
FREEBSD-HACKERS
技術的な議論
- これはFreeBSDに関する技術的な議論のための
+ これは FreeBSD に関する技術的な議論のための
フォーラムです。
これは最もテクニカルなメーリングリストです。
このメーリングリストは、FreeBSD
上でアクティブに活動をしている人のためのもので、
問題を持ち出したり、代わりの解決法を議論します。
技術的な議論をフォローするのに興味がある人も歓迎します。
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-HACKERS-DIGEST
技術的な議論
freebsd-hackersメーリングリストのダイジェスト版です。
- このダイジェスト はfreebsd-hackers
- に送られたすべてのメッセージをまとめたものを、1つのメー
+ このダイジェストは freebsd-hackers
+ に送られたすべてのメッセージをまとめたものを、1 つのメー
ルにして送り出します。
このメーリングリストは読み専用です。
メールを送るような事はしないでください。
FREEBSD-HARDWARE
FreeBSDのハードウェアの一般的な議論
FreeBSDが走っているハードウェアのタイプや、
何を買ったり避けたりするかに関する様々な問題や、
提案に関する議論。
FREEBSD-HUBS
ミラーサイト
FreeBSD ミラーサイトを運用している人達向けの、
アナウンスと議論を行なうメーリングリストです。
FREEBSD-INSTALL
インストールに関する議論
このメーリングリストは将来のリリースの
インストールに関する開発の議論のためのものです。
FREEBSD-ISP
インターネットサービスプロバイダのについての話題
このメーリングリストは、
FreeBSDを用いたインターネット サービスプロバイダ (ISP)
に関する話題の議論のためのものです。
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-NEWBIES
初心者の活動の議論
どのメーリングリストでも扱われていなかった
初心者の活動すべてをカバーします。独学や問題解決、
リソースの見つけ方や使い方、質問のしかた、
メーリングリストの使い方、
どのメーリングリストを読めばいいのか、普通の世間話、
間違いの犯し方、自慢話、アイディアの共有、物語、道徳的な
(技術的でない) お手伝い、FreeBSD
コミュニティでの貢献のしかたなどの話題をが含まれます。
これらの問題を取り扱い、freebsd-questions
へ質問できるようサポートします。また、
初心者の頃にはまった同じ事柄に悩んでいる
他の初心者との出会いの場としてfreebsd-newbies
を活用してください。
FREEBSD-PLATFORMS
- Intel以外のプラットフォームへの移植
+ Intel 以外のプラットフォームへの移植
- クロスプラットフォームのFreeBSDの問題。Intel
+ クロスプラットフォームの FreeBSD の問題。Intel
以外のプラットフォームへの FreeBSD
の移植についての一般的な議論や提案。
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-POLICY
コアチームのポリシーに関する議論
このメーリングリストは、FreeBSD コアチームのポリシーに
関する議論のためのものです。
流量は少なく、投稿することはできません。
FREEBSD-PORTS
ports
の議論
- FreeBSD Ports コレクション
+ FreeBSD Ports Collection
(/usr/ports)
に関連する話題や、
新たな ports の提案、Ports
- コレクションの基盤の変更および一般的な構成の整備活動に関する議論。
+ Collection の基盤の変更および一般的な構成の整備活動に関する議論。
これは技術的なメーリングリストなので、
厳密に技術的な内容のみが扱われます。
FREEBSD-QUESTIONS
ユーザからの質問
- FreeBSDに関する質問のためのメーリングリストです。
+ FreeBSD に関する質問のためのメーリングリストです。
その質問がかなり技術的だと思わないのであれば、
どのようにして
という質問を技術的なメーリングリストに
送るべきではありません。
FREEBSD-QUESTIONS-DIGEST
ユーザからの質問
freebsd-questions
メーリングリストのダイジェスト版です。このダイジェストは
freebsd-questions
に送られたすべてのメッセージをまとめたものを、
- 1つのメールにして送り出します。
+ 1 つのメールにして送り出します。
FREEBSD-SCSI
- SCSIサブシステム
- これは FreeBSD のための scsi
+ SCSI サブシステム
+ これは FreeBSD のための SCSI
サブシステムについて作業している人向けです。
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-SECURITY
セキュリティの関連の話題
FreeBSDコンピュータのセキュリティの話題 (DES,
- Kerberos、よく知られているセキュリティホールや、
+ Kerberos, よく知られているセキュリティホールや、
それらのふさぎ方など)
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-SECURITY-NOTIFICATIONS
セキュリティ関連の通知
FreeBSD のセキュリティ問題や、
修正に関する通知を行ないます。
このメーリングリストは議論を行なうための
メーリングリストではありません。
議論は FreeBSD-security で行ないます。
FREEBSD-SMALL
組み込み用に FreeBSD を使う
特殊な FreeBSD 小型システムおよび FreeBSD
の組み込み技術に関する議論。
これは技術的なメーリングリストなので、
完全に技術的な内容を要求します。
FREEBSD-STABLE
FreeBSD-stable の使用に関する議論
これは freebsd-stable のユーザ用のメーリングリスト
です。メーリングリストでの話題は、-stable
で登場した新しい機能について、
その新機能によってユーザに影響することについての注意、
および -stable
のままでいるために必要な手順についての説明を含みます。
stable
を走らせている人はこの
メーリングリストに登録すべきです。
これは技術的なメーリングリストなので、完全に技術的な
内容を要求します。
FREEBSD-USER-GROUPS
ユーザグループの調整のメーリングリスト
これは、ローカルなユーザグループがお互いに、または、
コアチームが指定した個人と問題を議論する、
それぞれのローカルエリアのユーザグループからの
調整人向けの メーリングリストです。
このメーリングリストはユーザグループ間の
ミーティングの概要やプロジェクトの調整に
制限されるべきです。
Usenet ニュースグループ
- 2つのFreeBSD用のニュースグループがあります。ここでは
- FreeBSDの議論をするたくさんの様々な人がおり、
- 他にもFreeBSD関連するユーザがいます。
+ 2 つの FreeBSD 用のニュースグループがあります。ここでは
+ FreeBSD の議論をするたくさんの様々な人がおり、
+ 他にも FreeBSD 関連するユーザがいます。
これらのいくつかのニュースグループは Warren Toomey
wkt@cs.adfa.edu.au によって
+ url="http://minnie.tuhs.org/BSD-info/bsdnews_search.html">
Keyword searchable archives で、
検索できるようになっています。
- BSD用のニュースグループ
+ BSD 用のニュースグループ
comp.unix.bsd.freebsd.announce
comp.unix.bsd.freebsd.misc
- 関連する他のUnixのニュースグループ
+ 関連する他の Unix のニュースグループ
comp.unix
comp.unix.questions
comp.unix.admin
comp.unix.programmer
comp.unix.shell
comp.unix.user-friendly
comp.security.unix
comp.sources.unix
comp.unix.advocacy
comp.unix.misc
comp.bugs.4bsd
comp.bugs.4bsd.ucb-fixes
comp.unix.bsd
X Window システム
comp.windows.x.i386unix
comp.windows.x
comp.windows.x.apps
comp.windows.x.announce
comp.windows.x.intrinsics
comp.windows.x.motif
comp.windows.x.pex
comp.emulators.ms-windows.wine
World Wide Web サイト
&chap.eresources.www.inc;
Email アドレス
以下のユーザーグループは、メンバーに FreeBSD に関係する
メールアドレスを提供しています。管理者はアドレスがどのような形であれ
悪用された場合に、
アドレスを無効にする権利を留保しています。
ドメイン
内容
ユーザーグループ
管理者
ukug.uk.FreeBSD.org
forward のみ
freebsd-users@uk.FreeBSD.org
Lee Johnston
lee@uk.FreeBSD.org
シェルアカウント
以下のユーザーグループは、FreeBSD Project を活発にサポートしてくれる
人たちにシェルアカウントを提供しています。
管理者はアカウントがどのような形であれ悪用された場合に、
アカウントを取り消す権利を留保しています。
ホスト
アクセス方法
提供内容
管理者
storm.uk.FreeBSD.org
SSH のみ
Read-only cvs, personal web space, email
&a.brian
dogma.freebsd-uk.eu.org
Telnet/FTP/SSH
- E-Mail, Web space, Anonymous FTP
+ Email, Web space, Anonymous FTP
Lee Johnston
lee@uk.FreeBSD.org
diff --git a/ja_JP.eucJP/books/handbook/kernelconfig/chapter.sgml b/ja_JP.eucJP/books/handbook/kernelconfig/chapter.sgml
index 5e5925bc96..968ce77f3e 100644
--- a/ja_JP.eucJP/books/handbook/kernelconfig/chapter.sgml
+++ b/ja_JP.eucJP/books/handbook/kernelconfig/chapter.sgml
@@ -1,1264 +1,1512 @@
+
+
+
+ Jim
+ Mock
+ 改訂および再構成
+
+
+
+
+
+ Jake
+ Hamby
+ 原作
+
+
+
+
+
FreeBSD カーネルのコンフィグレーション
この章では
- 更新/再構成: &a.jim;、2000 年 3 月
- 寄稿: &a.jehamby;、1995 年 10 月 6 日
+
カーネル
カスタムカーネルの構築
- この章では、自分のシステムに合わせた
- カーネルを構築する方法について扱います。
- カーネルの再構築によりどんなメリットがあるのか不思議に思っていたり、
- 自分用のカーネルを設定し、コンパイルし、インストールする方法を
- 知りたいと思っているのなら、この章が役に立つでしょう。
-
+ カーネルは FreeBSD オペレーティングシステムの中核をなすもの
+ です。カーネルは、メモリ管理、セキュリティ制御の強制、ネットワー
+ ク、ディスクアクセスなどを担っています。FreeBSD はどんどん動的に
+ 構成することができるようになっていますが、まだ、時にはカーネルコ
+ ンフィグレーションをやり直して、再構築する必要があります。
+
+ この章では、以下のことを扱っています。
+
+
+
+ なぜカスタムカーネルの構築が必要になることがあるのか。
+
+
+
+ コンフィグレーションファイルの書き方や、既存のコンフィグ
+ レーションファイルの置き換え。
+
+
+
+ カーネルコンフィグレーションファイルから新しいカーネルを構
+ 築する方法。
+
+
+
+ 新しいカーネルのインストール方法。
+
+
+
+ /dev 下に必要となる項目を作成する方法。
+
+
+
+ うまく行かないときの問題解決法。
+
+
なぜカスタムカーネルを作るか?
+ 伝統的に、FreeBSD のカーネルは モノリシック
+ (monolithic) カーネルと呼ばれるものでした。
+ これは、カーネルが単一の巨大なプログラムで、
+ 扱えるデバイスは固定されていて、
+ カーネルの振る舞いを変えたければ新しいカーネルを構築して、
+ コンピュータを再起動して新しいカーネルを動かさなれければならなかった
+ ということです。
+
+ 今日では FreeBSD は、カーネルの機能のかなりが必要に応じて動
+ 的にカーネルに組み込んだり外したりできるモジュールにおかれている
+ モデルへと、急速に移行しています。こうしてカーネルは (ノート PC
+ の PCMCIA カードのように) 突如使えるようになったハードウェアに対
+ 応したり、カーネルが作成された時点では必要なかった新たな機能を取
+ り入れられるようになります。くだけた表現では、これは KLD と呼ば
+ れます。
+
+ しかしながら、いまだにいくらかは静的にカーネルを構成する必要
+ があります。ある場合においては、機能がカーネルとあまりに密接に結
+ びついているため、動的に組み込むことができません。ほかには、単に
+ まだ誰もその機能に対する組み込み可能なカーネルモジュールを書く時
+ 間をとっていないだけということもあります。
+
システムに合わせたカーネルの構築はほとんどすべての
- UNIX ユーザが
+ Unix ユーザが
避けて通ることのできない最も重要な通過儀礼の1つです。
この作業は、多くの時間を必要としますが、あなたの FreeBSD
システムに多くの利益をもたらします。
広範囲のハードウェアをサポートしなければならない
GENERICカーネルとは異なり、
システムに合わせたカーネルは
あなたの PC
のハードウェアのみをサポートします。これは、
次にあげるような利益をもたらします。
素早く起動します。
カーネルはあなたのシステム上にあるハードウェアしか
検出を行わないので、
あなたのシステムの起動にかかる時間は劇的に短くなります。
メモリの消費量が減少します。
- システムに合わせたカーネルは、大抵 GENERIC
+ システムに合わせたカーネルは、大抵
+ GENERIC
カーネルより少ないメモリしか消費しません。
- カーネルは常にメモリ上に存在するプロセスなので、
- このことは重要になります。
+ カーネルは常に実メモリ上に存在しなければならないので、
+ これは重要なことです。
したがって、RAM が少ないシステムでは、
カーネルの再構築は大変重要です。
追加のハードウェアをサポートします。
システムに合わせたカーネルは、サウンドカードなど
- GENERIC カーネルに存在しない
- デバイスのサポートを追加することができます。
+ GENERIC
+ カーネルに存在しないデバイスのサポートを追加することができます。
カスタムカーネルの構築とインストール
カーネル
構築 / インストール
まず、
カーネル再構築に必要なディレクトリをざっと見てみましょう。
ここではディレクトリはすべて
/usr/src/sys 以下の相対位置で示します。
また、/sys からもアクセス可能です。
ここには、カーネルの各部分を構成するサブディレクトリが
いくつもあります。しかし、私たちの目的で最も重要なのは
arch/conf です。
ここで、あなたの
システムに合わせてカーネルコンフィグレーションを編集します。
それから compileディレクトリ、
ここはカーネルが作られる 場所です。
arch は、i386,
alpha, pc98(これは
日本で普及している PC のための開発ブランチです)のいずれかを表します。
各アーキテクチャのディレクトリ内部にあるファイルはすべて
そのアーキテクチャでのみ使用され、残りのコードは
FreeBSD が他のプラットフォームに移植される際に共有されます。
サポートされているデバイス、ファイルシステム、オプションが、
それぞれ各々のサブディレクトリに分かれている、
という論理的な構成に注意してください。
もし、あなたのシステムに/usr/src/sys
以下のディレクトリがなければ、
カーネルのソースが インストールされていません。
もっとも簡単な方法は (rootで)
/stand/sysinstall
- を用いて以下のようにします。設定(Configure)
- を選んでから 配布ファイル(Distribution)
- を選択し、src の中の sys
+ を用いて以下のようにすることです。
+ 設定 (Configure)
+ を選んでから
+ 配布ファイル (Distribution)
+ を選択し、src
+ の中の sys
をインストールしてください。
+ sysinstall
+ が嫌いで、公式
FreeBSD CDROM を利用できるなら、
+ コマンドラインからソースコードをインストールすることもできます。
+
+ &prompt.root; mount /cdrom
+&prompt.root; mkdir -p /usr/src/sys
+&prompt.root; ln -s /usr/src/sys /sys
+&prompt.root; cat /cdrom/src/ssys.[a-d]* | tar -xzvf -
つぎに、
arch/confに移動して、
GENERIC
コンフィグレーションファイルをカーネルに与えたい名前に
コピーしてください。たとえば次のようにします。
&prompt.root; cd /usr/src/sys/i386/conf
&prompt.root; cp GENERIC MYKERNEL
慣習として、この名前はすべて大文字でつづられます。もし、
いくつかの異なるハードウェアの FreeBSDマシンを扱うなら、
この名前にホスト名を含めるとよいでしょう。ここでは、例として
MYKERNEL と呼ぶことにします。
+
+ カーネルコンフィグレーションファイルを、直に
+ /usr/src の下に置くのはよい考えとはいえま
+ せん。なにか問題が起きたときに、
+ /usr/src を消してやり直したいと思うかもし
+ れません。その後で、あなたがカスタマイズしたカーネルコンフィグ
+ レーションファイルを消してしまったことに気づくのに時間はかから
+ ないでしょう。
+
+ カーネルコンフィグレーションファイルは他の場所において、
+ i386 ディレクトリにシンボリックリンクを張
+ る方がよいでしょう。
+
+ たとえば、次のようにします。
+
+ &prompt.root; cd /usr/src/sys/i386/conf
+&prompt.root; mkdir /root/kernels
+&prompt.root; cp GENERIC /root/kernels/MYKERNEL
+&prompt.root; ln -s /root/kernels/MYKERNEL
+
+
- この作業は root権限でおこなう必要があります。
- そうでなければ、permission
- deniedというエラーが出ます。
+ この作業は root
+ 権限でおこなう必要があります。そうでなければ、
+ permission denied
+ というエラーが出ます。
では、MYKERNEL
をあなたの好きなエディタで編集してください。もし、
システムをインストールしたばかりならば、利用できるエディタは
- viだけかもしれません。ここでは使い方
- の説明はしませんが、参考図書
+ vi
+ だけかもしれません。ここでは使い方の説明はしませんが、
+ 参考図書
にあるような多くの本で詳しく説明 されていますので、
そちらを参照してください。FreeBSD にはより簡単なエディタとして
- ee
があります。初心者の方であればこちらをエディタ
- に選ぶとよいでしょう。
+ ee
+ があります。初心者の方であればこちらをエディタに選ぶとよいでしょう。
まずファイルの最初の方のコメント行を編集し、あなたのコンフィグ
レーションに合せて変更した点などを記述して
GENERIC と区別がつく
ようにしておきましょう。
SunOS
もし SunOSや他の BSDオペレーティングシステムでカーネルの
再構築をしたことがあれば、このファイルはとても親しみ
やすいでしょう。しかし、DOSのようなその他の
オペレーティングシステムしか知らない人から見れば、
GENERIC
コンフィグレーションファイルはとても
なじみにくいものかもしれません。そのような場合は、
コンフィグレーションファイル
の節をゆっくりと注意深く読んでください。
- FreeBSD Project の最新のソースファイルと、あなたの
- ソースツリーを同期させている場合、
- アップデートを行う際には、必ず
- /usr/src/UPDATING ファイルをチェックするように
- してください。
- このファイルには、FreeBSD をアップデートする際のすべての重要な情報
- が書かれています。
+ FreeBSD Project の最新のソースファイルと、あなたのソースツリーを同期させている
+ 場合、アップデートを行う際には、必ず
+ /usr/src/UPDATING
+ ファイルをチェックしてください。
+ このファイルには、FreeBSD
+ をアップデートする際の重要な問題がすべて書かれています。
/usr/src/UPDATING は常にあなたの FreeBSD
ソースファイルのバージョンと同期していますので、
ハンドブックの情報よりも正確なものとなっています。
- FreeBSD 4.0 より前の FreeBSD を使っていて、
- FreeBSD 4.0 以降へはアップグレードしない、
- もしくはリリース版の FreeBSD を使っていて
- /usr/src/ ディレクトリには
- sys/ しか無い場合、
- 編集し終ったら次のコマンドによってコンパイル、インストール
- を行ってください。
+ ここで、カーネルのソースコードをコンパイルしなくてはなりませ
+ ん。手順は二つあり、どちらを使うかは、なぜカーネルを再構築するか
+ と、動かしている FreeBSD のバージョンによって決まります。
-
- 古いバージョンの FreeBSD からカーネルをアップグレードしようと
- している場合、新しいカーネルのソースファイルを取ってきた場所と
- 同じところから、新しいバージョンの &man.config.8; を取ってくる
- 必要があるでしょう。
- &man.config.8; は /usr/src/usr.sbin
- にあるので、これらのソースファイルもダウンロードする必要が
- あります。
- 次のコマンドを実行する前に、これを再構築してインストールして
- おいてください。
-
+
+
+ カーネルのソースコードだけインストー
+ ルしているなら、手順 1 にしたがってください。
+
+
+
+ 4.0 より前の FreeBSD を使っていて、
+ make world を行って FreeBSD 4.0
+ 以上にアップグレードしないなら、
+ 手順 1 にしたがってください。
+
+
+
+ (IPFIREWALL オプションを追加するなど
+ のように) ソースコードを更新せずに新しいカーネルを構築するな
+ らどちらの手順を用いても構いません。
+
+
+
+ make world
+ の一環としてカーネルの再構築を行っているなら、
+ 手順 2 にしたがってください。
+
+
+
+
+ 手順 1: 伝統的な
方法によるカーネル構築
+
+
+ カーネルソースコードを生成するため、&man.config.8; を実
+ 行します。
+
+ &prompt.root; /usr/sbin/config MYKERNEL
+
+
+
+ カーネルを構築するためのディレクトリに移動します。
+
+ &prompt.root; cd ../../compile/MYKERNEL
+
+
+
+ カーネルをコンパイルします。
+
+ &prompt.root; make depend
+&prompt.root; make
+
+
+
+ 新しいカーネルをインストールします。
+
+ &prompt.root; make install
+
+
+
+
+ 手順 2: 新しい
方法によるカーネル構築
+
+
+ /usr/src ディレクトリに移動します。
- &prompt.root; /usr/sbin/config MYKERNEL
-&prompt.root; cd ../../compile/MYKERNEL
-&prompt.root; make depend
-&prompt.root; make
-&prompt.root; make install
+ &prompt.root; cd /usr/src
+
- 4.X 以降の新しいバージョンにアップグレードした場合
- (例えば 3.X から 4-STABLE へ、もしくは 4-STABLE から
- 最新版の 4-STABLE へなど)、予め
- buildworld を行なって、
- 以下のコマンドを実行してください:
+
+ カーネルをコンパイルします。
- &prompt.root; cd /usr/src
-&prompt.root; make buildkernel KERNCONF=MYKERNEL
-&prompt.root; make installkernel KERNCONF=MYKERNEL
+ &prompt.root; make buildkernel KERNCONF=MYKERNEL
+
+
+
+ 新しいカーネルをインストールします。
+
+ &prompt.root; make installkernel KERNCONF=MYKERNEL
+
+
- FreeBSD-4.2 とそれ以前の場合は、
+ FreeBSD 4.2 とそれ以前の場合は、
KERNCONF=
ではなく
KERNEL=
としなければなりません。
2001 年 2 月 2 日以降の 4.2-STABLE は
- KERNCONF= を認識します。
+ KERNCONF= を認識します。
- CVSup
- anoncvs
+
+ cvsup
+
+ anonymous CVS
CTM
CVS
anonymous
何らかの方法であなたのソースツリーをアップグレードして
いない 場合
(CVSup, CTM,
anoncvs などを実行していない場合)、
- config, make depend,
- make, make install
+ config, make depend,
+ make, make install
の手順を実行してください。
-
- 最後にカーネルを構築した後で、ソースをアップグレードした場合、
- カーネルを構築するには make buildkernel
- を使わなければ なりません。
- そうしないと、カーネルを構築するのに古いユーティリティが
- 使われてしまい、失敗してしまうかもしれません。
- ソースを更新した場合には、カーネルを構築するのに
- config/make
- の手順は使わないでください!
-
- kernel.old
+
+ kernel.old
+
新しいカーネルはルートディレクトリに
/kernelという 名前でコピーされ、
今までのカーネルは /kernel.old
- という名前へ変更されます。では、システムをシャットダウン、リブー
- トして新しいカーネルを使ってください。うまく行かない場合は、
- この章の終りの
+ という名前へ変更されます。では、システムをシャットダウン、
+ リブートして新しいカーネルを使ってください。
+ うまく行かない場合は、この章の終りの
問題が起きた場合には
を参照してください。この章の新しい
カーネルが起動しない
場合のリカバリの方法を注意深く読んでおいてください。
- (サウンドカードのような)新しいデバイスを 追加した場合は、
- 使う前に /devディレクトリで
- デバイスノードを追加しなければならないかもしれません。
- 詳しくは、デバイスノード
- を読んでください。
+ FreeBSD 4.X 以前のバージョンを使っていて、
+ (サウンドカードなど) 新しいデバイスを追加した場合は、
+ 使う前に /dev
+ ディレクトリにデバイスノードを追加しなければならないかもしれません。
+ 詳しくは、この章で後ほど出てくる
+ デバイスノードの作成
+ をご覧ください。
コンフィグレーション ファイル
- カーネルLINT
+
+ カーネル
+ LINT
+
LINT
カーネル
コンフィグレーションファイル
コンフィグレーション ファイルの一般的なフォーマット
はとてもシンプルです。各行は1つのキーワードと1つ以上の
引数を含んでいます。見やすくするために、ほとんどのキーワードは
引数を1つしか書いてありません。
#に続くものはすべてコメントとして扱われ、
無視されます。ここでは、それぞれのキーワードについて だいたい
GENERIC に出てくる順番で説明します。しかし、
お互いに関係のあるキーワードは、実際には
GENERIC ファイル上に
バラバラに現れていても、(ネットワーキングのように)1つにまとめ
てあります。 おびただしい数の
オプションの一覧が
GENERICと同じディレクトリの
LINT コンフィグ
レーションファイルにあります。もし、ある行の目的や必要性に疑
問を持ったら最初に LINT
をチェックしてください。
数字と二重引用符
FreeBSD 3.x と、それまでの全てのバージョンの FreeBSD における
&man.config.8; は、コンフィグレーションファイル中の
テキストとして使われる数字を含む文字列が
全て二重引用符で括られていなければならないという制限があります。
この制限は (このハンドブックが対象としている)
4.X ブランチでは取り除かれました。
4.X 以前のシステムを使っている場合には、
サンプルとしてシステム上の
/usr/src/sys/i386/conf/LINT と
/usr/src/sys/i386/conf/GENERIC
を参照してください。
カーネル
- コンフィグレーション例
+ コンフィグレーションファイル例
以下は必要に応じてコメントを追加した
GENERIC カーネルの
コンフィグレーションファイルです。
この設定例は /usr/src/sys/i386/conf/GENERIC
に極めて近いものになっているはずです。
その他に指定可能なカーネルオプションについては、
/usr/src/sys/i386/conf/LINT
を参照してください。
#
# GENERIC -- Generic kernel configuration file for FreeBSD/i386
#
# このファイルについて更に情報が必要なら、ハンドブックのカーネル
# コンフィグレーションファイルのセクションを参照して下さい。
#
-# http://www.freebsd.org/handbook/kernelconfig-config.html
+# http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-config.html
#
# doc ディストリビューションをインストールした場合、ハンドブックは
# ローカルマシンの /usr/share/doc/handbook でも見ることができます。
# 最新版は FreeBSD の WWW サーバ (http://www.FreeBSD.ORG/) を参照して
# 下さい。
#
# ./LINT コンフィギュレーションファイルには、デバイス行に関する大量の
# オプションと詳細な説明があります。もしある行の目的又は必要性について
# 疑問がある場合はまず LINT をチェックして下さい。
#
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246 2000/03/09 16:32:55 jlemon Exp $
以下は すべての カーネルの構築に
必須のキーワードです:
カーネル オプション
machine
machine i386
マシンのアーキテクチャです。
これは i386, alpha,
pc98 のいずれかでなければなりません。
カーネル オプション
cpu
cpu I386_CPU
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
上記はあなたのシステムの CPU タイプを指定します。
複数の行を書いても構いません。
(例: I586_CPU とすべきか
I686_CPU とすべきかはっきり分からない場合。
しかしながら、カスタムカーネルを作る場合、あなたの持つ CPU
だけを指定するのがベストです。
- もしあなたがどのタイプの CPU を使っているか分からない場合、
- dmesg を使って起動メッセージを
+ もしあなたの CPU がどのタイプか分からない場合、
+ &man.dmesg.8; を使って起動メッセージを
調べるとよいでしょう。
カーネル オプション
cpu type
Alpha アーキテクチャの場合は、
- cpu_type に異なった値を用います。
+ cpu に異なった値を用います。
cpu EV4
cpu EV5
もしあなたが Alpha マシンを使っている場合、
上記の内のどれかを指定して下さい。
カーネル オプション
ident
ident GENERIC
ここはカーネルの識別名を書きます。
あなたがカーネルに付けたい名前に書き換えて下さい
- (MYKERNELのように)。
+ (前記の例の MYKERNEL のように)。
ident に書いた名前はカーネルを起動する時に
表示されるので、
- 普段使っているカーネルと区別したいときは違う名前を付けると
+ 普段使っているカーネルと区別したいときは、
+ 新しいカーネルに違う名前を付けると
良いでしょう(例: 実験的なカーネルを構築する場合)。
カーネル オプション
maxusers
- maxusers 32
+ maxusers n
maxusers オプションは重要なシステムテーブルの
サイズを決定します。
この数字はあなたのマシンを同時に使うと思われるユーザー数と
- おおよそ等しくするのが良いでしょう。
- しかしながら、通常は X ウインドウシステムを使ったり、
- ソフトウエアをコンパイルするでしょうから、その場合は
+ おおよそ等しくするのが良いでしょう。
+
+ FreeBSD 4.5 からは、これを明示的に 0
+ に設定すると、システムが設定を自動調整します
+ 自動調整アルゴリズムは、maxuser
+ を、最小値が 32、最大値が 384
+ の間で、システムのメモリ合計と等しく設定します。
+ 。それより前のバージョンの FreeBSD
+ を使っているか、自分で管理したい場合、特に
+ X ウインドウシステムを使ったり、ソフトウエアをコンパイルするなら、
maxusers は最低 4 にして下さい。
その理由は、maxusers によって計算される最も
重要なテーブルがプロセスの最大数で、それは
20 + 16 * maxusers となります。
もし、maxusers を 1 にすると、
同時に 36 プロセスしか利用できなくなりますが、
システムは起動時に 18 ほどのプロセスを立ち上げ、
X ウインドウシステムは 15 ほどのプロセスを立ち上げるので、
- man コマンドのような単純な仕事でさえフィルタ、展開、表示に 9
+ オンラインマニュアルを読むような単純なタスクでさえ
+ フィルタ、展開、表示に 9
個のプロセスを利用するために、プロセス数不足になります。
maxusers を 64 に設定すると、
1044 個のプロセスを同時に利用することができるので、
殆どのユーザには充分でしょう。
もしあなたが別のプログラムを立ち上げる時、
恐れられている proc table full エラーが
発生する場合や、ftp.FreeBSD.org
のように多数のユーザにより
同時に利用されるサーバを動かしている場合には、
この数字を増やしてカーネルを再構築することができます。
maxusers はあなたのマシンにログインする
ユーザ数を制限するものでは ありません。
それは単に、あなたのシステムを使うであろうユーザの最大数や
それぞれのユーザがどれくらいのプロセスを走らせるかに
合わせて各種テーブルの大きさを設定するだけです。
同時にリモートログインする最大ユーザ数を制限するキーワードは
pseudo-device pty 16 です。
+ # Floating point support - do not disable.
+device npx0 at nexus? port IO_NPX irq 13
+
+ npx0 はハードウェアコプロセッサか
+ ソフトウエアエミュレータのどちらかである浮動小数点演算ユニットへの
+ FreeBSD におけるインタフェースです。
+ これは任意選択ではありません。
+
+ # Pseudo devices - the number indicates how many units to allocate.
+pseudo-device loop # Network loopback
+
+ TCP/IP の汎用ループバックデバイスです。
+ localhost (すなわち
+ 127.0.0.1) に対して telnet や FTP
+ で接続すると、この疑似デバイスを通して戻ってきます。
+ これは必須です。
+
以下に続くすべては大体において追加設定項目です。
詳細は各項目の次に書かれている注意書きを参照して下さい。
#makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
options MATH_EMULATE #Support for x87 emulation
この行では、あなたのコンピュータが浮動小数点演算コプロセッサを
持たない場合(CPU が 386 又は 486SX)、
カーネルにシミュレートさせるよう設定します。
あなたが 486DX, 又は (387 や 487 チップを別途搭載した) 386, 486SX
- 又は更に上位 (Pentium, Pentium II 他) を持っている場合は
- コメントアウトして下さい。
+ 又は更に上位 (Pentium, Pentium II 他)
+ を持っている場合はコメントアウトして下さい。
FreeBSD の浮動小数点エミュレーションルーチンはあまり正確では
ありません。
もしあなたが浮動小数点コプロセッサを持っておらず、
かつベストな演算精度が必要であれば、GNU の浮動小数点サポートを
- 利用する GPL_MATH_EMULATION を使ってみて下さい。
+ 利用する GPL_MATH_EMULATE を使ってみて下さい。
このオプションはライセンス上の理由によりデフォルトでは
含まれていません。
options INET #InterNETworking
ネットワークのサポート。
ネットワークに接続する予定がなくてもこのオプションは残して下さい。
殆どのプログラムは少なくともループバックネットワーク
(あなたの PC の中でのネットワーク接続) を必要としますので、
基本的にこの行は必須です。
options INET6 #IPv6 communications protocols
このオプションは IPv6 通信プロトコルを利用可能にします。
options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep this!]
これは標準のハードドライブファイルシステムです。
ハードディスクから起動する場合は残して下さい。
+ options UFS_DIRHASH #Improve performance on big directories
+
+ このオプションは、メモリを多少余分に食うものの、
+ 大きなディレクトリに対するディスク操作を高速化するコードを有効にします。
+ 大規模なサーバや対話的なワークステーションではこのオプションを残しておいて、
+ ファイアウォールのように、メモリが貴重で
+ ディスクアクセス速度がそれほど重要でない
+ 小規模なシステムでは削除するとよいでしょう。
+
+ options SOFTUPDATES #Enable FFS Soft Updates support
+
+ このオプションは、カーネル内の Soft Updates 機能を有効にし、
+ ディスクへの高速な書き込みを支援します。
+ 4.X ブランチではデフォルトで有効にされましたが、
+ 有効になっていない可能性もあります。
+ &man.mount.8; の出力を見て、有効になっているかどうか確認してください。
+ soft-updates オプションが見当たらなければ、
+ &man.tunefs.8; か、新規のファイルシステムについては
+ &man.newfs.8; で有効にする必要があります。
+
options MFS #Memory Filesystem
options MD_ROOT #MD is a potential root device
これはメモリ上にマップされたファイルシステムです。
これは基本的に一時ファイルの高速格納用の RAM ディスクであり、
あなたが有効に利用したい大量のスワップスペースを持っている
場合には有用でしょう。
多くのプログラムが一時データをここに保存することから、
MFS パーティションをマウントする最適な場所は /tmp
ディレクトリです。
MFS RAM ディスクを /tmp にマウントするには
次の行を /etc/fstab に追加して下さい:
/dev/ad1s2b /tmp mfs rw 0 0
次に再起動するか、コマンド mount /tmp
を実行して下さい。
カーネル オプション
NFS
カーネル オプション
NFS_ROOT
options NFS #Network Filesystem
options NFS_ROOT #NFS usable as root device, NFS required
ネットワークファイルシステム。
- UNIX ファイルサーバから TCP/IP を介してパーティションを
+ Unix ファイルサーバから TCP/IP を介してパーティションを
マウントするのでない限り、これらの行をコメントアウトして下さい。
カーネル オプション
MSDOSFS
options MSDOSFS #MSDOS Filesystem
MS-DOS ファイルシステム。
起動時に DOS でフォーマットされたハードドライブを
マウントするのでない限り、この行は安全にコメントアウトできます。
この機能は最初に DOS パーティションをマウントする時に自動的に
ロードされます。
又、優秀な mtools
(Ports コレクションにあります) を使ってもマウント、
アンマウントすることなしに DOS フロッピーにアクセスすることができます。
(MSDOSFS は必要としません)
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root, CD9660 required
CD-ROM 用の ISO 9660 ファイルシステム。
もしあなたが CD-ROM ドライブを持っていないか、
時々データ CD をマウントするだけならこの行をコメントアウトしても
大丈夫です (データ CD を最初にマウントする時、自動的にロードされます)。
音楽 CD はこのファイルシステムを必要としません。
options PROCFS #Process filesystem
プロセスファイルシステム。
これは /proc にマウントされる、
ファイルシステムの ふりをする
もので、
&man.ps.1; のようなプログラムに、どんなプロセスが走っているか
に関するより多くの情報を提供させる事ができます。
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
4.3BSD との互換機能です。
有効なままにして下さい。
この行をコメントアウトするとおかしな動きをするプログラムがあります。
options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI
この行は、カーネルがそれぞれの SCSI 機器を検出する前に
15 秒間待つようにします。
あなたが IDE ドライブしか持たないなら無視して結構です。
そうでないなら、起動時間を短くするため、おそらく待つ時間を短く、
5 秒くらいにしたいでしょう。
勿論、そうした場合に FreeBSD が SCSI 機器を認識しなくなった場合は
時間を元に戻す必要があります。
options UCONSOLE #Allow users to grab the console
ユーザにコンソールを所有することを許可します。
X のユーザには役に立ちます。
- たとえば xterm -C とコマンドを打つことにより、
- コンソール xterm を起動することができます。
- ここにはカーネルからのあらゆるコンソールメッセージとともに、
- write, talk による
- あらゆるメッセージを表示します。
-
+ たとえば xterm -C
+ と入力すれば、コンソール xterm
+ を実行できます。ここにはあなたが受け取る
+ &man.write.1;, &man.talk.1; などのメッセージや、
+ カーネルからのコンソールメッセージが表示されます。
options USERCONFIG #boot -c editor
このオプションは起動メニューからコンフィグレーションエディタ
を起動することができるようにします。
options VISUAL_USERCONFIG #visual boot -c editor
このオプションは起動メニューからビジュアルコンフィグレーション
エディタを起動できるようにします。
+ FreeBSD バージョン 5.0 以降では、新しく &man.device.hints.5;
+ を利用する方法が採用され、userconfig は使われなくなりました。
+ &man.device.hints.5; に関する詳しい情報は
+ をご覧ください。
+
options KTRACE #ktrace(1) support
この行はデバッギングに役立つカーネルプロセスのトレースを
可能にします。
options SYSVSHM #SYSV-style shared memory
このオプションは System V 共有メモリを提供します。
この機能の最も一般的な使用方法は X における XSHM 拡張です。
多くのグラフィックス重視のプログラムではこの機能を自動的に
描画のスピードアップに利用します。
X を使っているなら、これを含めておいた方がいいでしょう。
options SYSVSEM #SYSV-style semaphores
System V セマフォのサポート。
あまり使われませんが、カーネルサイズは数百バイト大きくなるだけです。
options SYSVMSG #SYSV-style message queues
System V のメッセージのサポート。
これもカーネルサイズを数百バイト大きくするだけです。
&man.ipcs.1; コマンドを実行するとこれらの System V
機能を使っているプロセスのリストを表示します。
options P1003_1B #Posix P1003_1B real-time extensions
options _KPOSIX_PRIORITY_SCHEDULING
リアルタイム拡張が 1993 POSIX に追加されました。
Ports コレクションの内のいくつかのアプリケーション
- (例えば Star Office) はこれを使っています。
+ (たとえば Star Office)
+ はこれを使っています。
カーネル オプション
ICMP_BANDLIM
+
+ サービス妨害 (DoS)
+
options ICMP_BANDLIM #Rate limit bad replies
このオプションは ICMP エラー応答のバンド幅制限を可能にします。
サービス不能パケットによる攻撃からマシンを保護するために必要です。
カーネル オプション
SMP
# To make an SMP kernel, the next two are needed
#options SMP # Symmetric MultiProcessor Kernel
#options APIC_IO # Symmetric (APIC) I/O
上の行は両方とも SMP サポートのために必要です。
device isa
FreeBSD がサポートするすべての PC はこれらの内のひとつを
持っています。
あなたが IBM PS/2 (マイクロチャネルアーキテクチャ)
- マシンを持っている場合、FreeBSD は現時点では動作しません
- (サポートには取組中です)。
+ マシンを持っている場合、FreeBSD
+ は、現時点では限定的な対応を提供しています。
+ MCA の対応状況に関する詳細は、
+ /usr/src/sys/i386/conf/LINT
+ をご覧ください。
device eisa
あなたが EISA マザーボードを持っている場合、
この行を含めて下さい。これは EISA バスに接続されているすべての
デバイスの自動検出と設定を可能にします。
device pci
あなたが PCI マザーボードを持っている場合、この行を含めて下さい。
これは PCI カードの自動検出と PCI から ISA バスへのゲートウエイを
可能にします。
# Floppy drives
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
これはフロッピーディスクコントローラです。
fd0 は A:
フロッピードライブ、fd1 は
B: ドライブです。
device ata
このドライバはすべての ATA と ATAPI デバイスをサポートします。
最近のマシンでは device ata 行を 1 行書くだけで
すべての PCI ATA/ATAPI デバイスを検出することができます。
device atadisk # ATA disk drives
- ATAPI ディスクドライブには device ata
+ ATA ディスクドライブには device ata
と共にこの行が必要です。
device atapicd # ATAPI CDROM drives
ATAPI CDROM ドライブには device ata
と共にこの行が必要です。
device atapifd # ATAPI floppy drives
ATAPI フロッピードライブには device ata
と共にこの行が必要です。
device atapist # ATAPI tape drives
ATAPI テープドライブには device ata
と共にこの行が必要です。
options ATA_STATIC_ID #Static device numbering
この行はコントローラ番号を (古いドライバのように) 静的に
割り当てます。そうでない場合、デバイス番号は動的に割り当てられます。
# ATA and ATAPI devices
device ata0 at isa? port IO_WD1 irq 14
device ata1 at isa? port IO_WD2 irq 15
上の行は古い、PCI ではないシステムの場合の形式です。
# SCSI Controllers
device ahb # EISA AHA1742 family
device ahc # AHA2940 and onboard AIC7xxx devices
device amd # AMD 53C974 (Teckram DC-390(T))
device dpt # DPT Smartcache - See LINT for options!
device isp # Qlogic family
device ncr # NCR/Symbios Logic
device sym # NCR/Symbios Logic (newer chipsets)
device adv0 at isa?
device adw
device bt0 at isa?
device aha0 at isa?
device aic0 at isa?
SCSI コントローラです。
あなたのシステムにないデバイスはコメントアウトして下さい。
もし IDE しかないシステムならこれらすべてを削除できます。
# SCSI peripherals
device scbus # SCSI bus (required)
device da # Direct Access (disks)
device sa # Sequential Access (tape etc)
device cd # CD
device pass # Passthrough device (direct SCSI
access)
SCSI 周辺機器です。
あなたが持っていないデバイスはコメントアウトして下さい。
もし IDE しか持っていないならこれらを完全に削除できます。
# RAID controllers
device ida # Compaq Smart RAID
device amr # AMI MegaRAID
device mlx # Mylex DAC960 family
サポートされる RAID コントローラです。
これらのどれも持っていない場合、すべてをコメントアウト又は
削除することができます。
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc0 at isa? port IO_KBD
キーボードコントローラ (atkbdc)
は AT キーボード及び PS/2 スタイルポインティングデバイスの
I/O サービスを提供します。
キーボードドライバ (atkbd) と PS/2
ポインティングデバイスドライバ (psm)
はこのコントローラを必要とします。
device atkbd0 at atkbdc? irq 1
atkbd ドライバ。
atkbdc コントローラと協調して動作し、
AT キーボードコントローラに接続された AT 84 キーボードや
AT 拡張キーボードへのアクセスを提供します。
device psm0 at atkbdc? irq 12
あなたのマウスが PS/2 マウスポートに接続するタイプなら
このデバイスを使って下さい。
device vga0 at isa?
ビデオカードドライバです。
# splash screen/screen saver
pseudo-device splash
起動時に画面がはじけます。
スクリーンセーバもこのデバイスを必要とします。
# syscons is the default console driver, resembling an SCO console
device sc0 at isa?
sc0 はSCOに類似したデフォルトの
コンソールドライバです。
殆どのフルスクリーンのプログラムは termcap
のようなターミナルデータベールライブラリにアクセスするので、
sc0 を使うか VT220
互換のコンソールドライバである vt0
を使うかは重要ではありません。
ログイン時、このコンソールでフルスクリーンプログラムが動かないときは
TERM 変数を scoansi に設定して下さい。
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device vt0 at isa?
#options XSERVER # support for X server on a vt console
#options FAT_CURSOR # start with block cursor
# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
#options PCVT_SCANSET=2 # IBM keyboards are non-std
これは VT220 互換のコンソールドライバで、
VT100/102 と後方互換性があります。
sc0 とハード的に互換性がないラップトップでも
問題なく動きます。
ここでもログイン時に TERM 変数を
vt100 又は vt220
と設定して下さい。
このドライバは、sc0 デバイス用の
termcap や terminfo
のエントリが無い、ネットワーク上の多くの異なったマシンに
接続する際にも有用です — vt100
は仮想的にすべてのプラットフォームで有効であるべきです。
- # Floating point support - do not disable.
-device npx0 at nexus? port IO_NPX irq 13
-
- npx0 は FreeBSD における
- 浮動小数点演算ユニットへのインタフェースで、それは実際には
- コプロセッサ又はソフトウエアエミュレータです。
- これはオプションではありません。
-
# Power management support (see LINT for more options)
device apm0 at nexus? disable flags 0x20 # Advanced Power Management
先進的な電源管理機能 (APM) のサポート。
ラップトップでは役に立つでしょう。
# PCCARD (PCMCIA) support
device card
device pcic0 at isa? irq 10 port 0x3e0 iomem 0xd0000
device pcic1 at isa? irq 11 port 0x3e2 iomem 0xd4000 disable
- PCMCIA サポート。ラップトップにインストールする時は必要です。
+ PCMCIA サポート。ラップトップを使っているなら必要でしょう。
# Serial (COM) ports
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 irq 3
device sio2 at isa? disable port IO_COM3 irq 5
device sio3 at isa? disable port IO_COM4 irq 9
これらは MS-DOS/Windows の世界では COM1からCOM4 と呼ばれている
4 つのシリアルポートです。
もしあなたが内蔵モデムを COM4 に、シリアルポートを COM2
に設定している場合、FreeBSD からアクセスするには、
(IRQ2=IRQ9 という、不明瞭な技術的理由により) モデムの IRQ を 2
に変更する必要があります。
もしマルチポートシリアルカードを持っていてこれらの設定の正しい
数値に関する情報がほしい場合はマニュアルページ &man.sio.4;
を参照して下さい。
ビデオカードのいくつかは (S3 チップベースのものは特に) IO
アドレスを 0x*2e8 と言う形式で表現する一方、
多くの安価なシリアルカードは 16 ビットの IO アドレスを完全に
デコードしないので、これらのカードを使った場合衝突が起こり、
事実上 COM4 ポートを使用不可能にします。
各々のシリアルポートは (共有割り込み番号をサポートする
マルチポートカードを使っていない限り) 固有の IRQ を必要とします。
従って COM3 と COM4 用のデフォルト IRQ は利用できません。
# Parallel port
device ppc0 at isa? irq 7
ISA バスパラレルポートインタフェースです。
device ppbus # Parallel port bus (required)
パラレルポートバスのサポートを提供します。
device lpt # Printer
パラレルポートプリンタのサポートです。
上の 3 つはすべてパラレルプリンタを利用可能にするために
必要です。
device plip # TCP/IP over parallel
パラレルネットワークインタフェース用のドライバです。
device ppi # Parallel port interface device
汎用I/O (geek port
) + IEEE1284 I/O です。
#device vpo # Requires scbus and da
zip ドライブ
Iomega の Zip ドライブ用です。scbus
と da サポートが必要です。
EPP 1.9モードを使うと最高の性能が得られます。
# PCI Ethernet NICs.
device de # DEC/Intel DC21x4x (Tulip
)
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device tx # SMC 9432TX (83c170 EPIC
)
device vx # 3Com 3c590, 3c595 (Vortex
)
device wx # Intel Gigabit Ethernet Card (Wiseman
)
PCI ネットワークカードのドライバです。あなたのシステムに
ないものはコメントアウトするか削除して下さい。
# PCI Ethernet NICs that use the common MII bus controller code.
device miibus # MII bus support
MII バスサポートはいくつかの PCI 10/100 イーサネット NIC、
すなわち MII に従うトランシーバや MII のようなトランシーバ制御
インタフェースを実装するもの、に必要となります。
カーネルコンフィギュレーションに device miibus
を追加することで、汎用 miibus API のサポートと、
特定のドライバを必要としない場合に利用される汎用のものを含む
すべての PHY ドライバが導入されます。
device dc # DEC/Intel 21143 and various workalikes
device rl # RealTek 8129/8139
device sf # Adaptec AIC-6915 (Starfire
)
device sis # Silicon Integrated Systems SiS 900/SiS 7016
device ste # Sundance ST201 (D-Link DFE-550TX)
device tl # Texas Instruments ThunderLAN
device vr # VIA Rhine, Rhine II
device wb # Winbond W89C840F
device xl # 3Com 3c90x (Boomerang
, Cyclone
)
MII バスコントローラコードを利用するドライバです。
# ISA Ethernet NICs.
device ed0 at isa? port 0x280 irq 10 iomem 0xd8000
device ex
device ep
# WaveLAN/IEEE 802.11 ワイヤレス NIC。
# 注: WaveLAN/IEEE は PCMCIA デバイスとしてしか実在しません。
# なので ISAア タッチメントは必要なく、リソースは常に PC カードコードに
# より動的に割り当てられます。
device wi
# Aironet 4500/4800 802.11 ワイヤレス NIC。
# 注: 下の宣言は ISA PnP モード (工場出荷時設定) のISAカード、PCMCIA
# 及び PCI カードにのみ働きます。もし、ISA カードの I/O アドレスと IRQ
# を手動で設定している場合は、ここでそれらのパラメータを指定しなく
# てはいけません。
device an
# これらの検出順序は現在 i386/isa/isa_compat.c により決められます。
device ie0 at isa? port 0x300 irq 10 iomem 0xd0000
device fe0 at isa? port 0x300
device le0 at isa? port 0x300 irq 5 iomem 0xd0000
device lnc0 at isa? port 0x280 irq 10 drq 0
device cs0 at isa? port 0x300
device sn0 at isa? port 0x300 irq 10
# requires PCCARD (PCMCIA) support to be activated
#device xe0 at isa?
ISA イーサネットドライバです。
どのカードがどのドライバによりサポートされているかは
/usr/src/sys/i386/conf/LINT を参照して下さい。
- # Pseudo devices - the number indicates how many units to allocated.
-pseudo-device loop # Network loopback
-
- TCP/IP の汎用ループバックデバイスです。
- localhost (すなわち
- 127.0.0.1) に対して telnet や FTP
- を使う場合、この疑似デバイスを通して戻ってきます。
- これは 必須 です。
-
pseudo-device ether # Ethernet support
ether はイーサネットカードを持っている場合に
のみ必要です。汎用イーサネットプロトコルコードを含みます。
pseudo-device sl 1 # Kernel SLIP
sl は SLIP サポートを行います。
SLIP は設定のより簡単な、モデム-モデム間の接続にはより適していて
より高機能な PPP に殆ど取って代わられています。
sl に続く 数字
には同時に持てる SLIP セッション数を指定します。
pseudo-device ppp 1 # Kernel PPP
これはダイアルアップ接続用のカーネル PPP サポートです。
他にも tun を利用し、デマンドダイアリングのような
柔軟性と機能を提供するユーザーランドのアプリケーションとして
実装された PPP が存在します。ppp に続く
数字 には同時に持てる PPP セッション数を
指定します。
pseudo-device tun # Packet tunnel.
これはユーザーランド PPP ソフトウエアにより利用されます。
tun に続く 数字
には同時に持てる PPP セッション数を指定します。
詳細はこの本の PPP セクションを
参照して下さい。
pseudo-device pty # Pseudo-ttys (telnet etc)
これは 疑似ターミナル
或いはシミュレートされた
ログインポートです。
これは入ってくる telnet と
- rlogin セッション、xterm
- やその他の emacs のような
- アプリケーションにより利用されます。
- 数字 は生成される pty
+ rlogin セッション、
+ xterm やその他の
+ Emacs
+ のようなアプリケーションにより利用されます。
+ pty の後の 数字 は、
+ 生成される pty
の数を示します。もし同時にデフォルトの 16 より多くの
xterm ウィンドウやリモートログインが
必要な場合、必要に応じてこの数字を増やして下さい。
最大は 256 です。
pseudo-device md # Memory disks
メモリディスク疑似デバイス。
+ pseudo-device gif
+
+ または
+
pseudo-device gif 4 # IPv6 and IPv4 tunneling
この行は IPv6 over IPv4 トンネル、IPv4 over IPv6 トンネル、
- IPv4 over IPv4 トンネル、IPv6 over IPv6 トンネルを提供します。
+ IPv4 over IPv4 トンネル、IPv6 over IPv6 トンネルを提供します。
+ FreeBSD 4.4 からは、gif デバイスは
+ auto-cloning (自動複製)
しますので、
+ (gif のあとに数値がこない)
+ はじめの例を使ってください。
+ それより前のバージョンの FreeBSD では、数値が必要です。
pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation)
この疑似デバイスは自分宛に送られたパケットを受け取り、
IPv4/IPv6 変換デーモンに渡します。
# The `bpf' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
pseudo-device bpf # Berkeley packet filter
これはバークレーパケットフィルタです。
この疑似デバイスはネットワークインタフェースを、イーサネットのような
ブロードキャストネットワーク上ですべてのパケットを拾うことのできる
promiscuous モードに設定できるようにします。
これらのパケットはディスクに取り込むこともできますし、
&man.tcpdump.1; を使ってチェックをすることもできます。
+
+ bpf 疑似デバイスは、&man.dhclient.8;
+ がデフォルトルータ (ゲートウェイ) の IP アドレスなどを取得する
+ ためにも使われています。DHCP を使っているなら、これはコメント
+ アウトしないでください。
+
+
# USB support
#device uhci # UHCI PCI->USB interface
#device ohci # OHCI PCI->USB interface
#device usb # USB Bus (required)
#device ugen # Generic
#device uhid # Human Interface Devices
#device ukbd # Keyboard
#device ulpt # Printer
#device umass # Disks/Mass storage - Requires scbus and da
#device ums # Mouse
# USB Ethernet, requires mii
#device aue # ADMtek USB ethernet
#device cue # CATC USB ethernet
#device kue # Kawasaki LSI USB ethernet
様々なUSBデバイスのサポートです。
より詳細な情報と、FreeBSD によりサポートされる他のデバイスに
ついては /usr/src/sys/i386/conf/LINT
を参照して下さい。
デバイスノードを作る
デバイス ノード
- MAKEDEV
+
+ MAKEDEV
+
+
+ FreeBSD 5.0 以降を動かしているなら、
+ この節を飛ばして構いません。そのバージョンでは &man.devfs.5;
+ を用いて、ユーザに意識させずにデバイスノードを割り当てています。
+
カーネル内のほとんどすべてのデバイスは対応する
node
エントリが /dev
ディレクトリにあります。これらのノードは普
通のファイルのように見えますが、実際にはプログラムがデバイスに
アクセスするのに用いるカーネル内への特別なエントリです。
シェルスクリプトである
/dev/MAKEDEVはオペレーティング
システムを最初にインストールする時に実行され、サポートされてい
る大部分のデバイスのノードを作ります。しかし、
すべての
ノードが作られるわけではありませんので
新しいデバイスのサポートを加える時は対応するエントリがこのディ
レクトリにあるかどうか確認してもしなければ、作ってください。
以下に例を示します。
IDE CD-ROMのサポートをカーネルに加えるとします。次の行
を加えます。
device acd0
これにしたがって、/devディレクトリに
acd0 で始まるエントリをさがしてください。
1文字が後ろにつくかもしれません。
後ろについた文字が c であるか、先頭に
r のつくエントリは raw
デバイスを示します。
それらのファイルがないことが明らかになったとします。そこで
/dev
ディレクトリに移動して次のようにタイプします。
- MAKEDEV
+
+ MAKEDEV
+
&prompt.root; sh MAKEDEV acd0
スクリプトの実行が終ったら /devに
acd0c と racd0c
エントリがあることを確認してください。これによ
り正しく実行されたことがわかります。
サウンドカードの場合、以下のコマンドで対応する
エントリが作成されます:
&prompt.root; sh MAKEDEV snd0
サウンドカードのようなデバイスのノードを作る場合で、もし他
の人がマシンにアクセスするようであれば、そのデバイスを
/etc/fbtab
ファイルに追加して外部からのアクセスから
保護するのが望ましいでしょう。このファイルの詳細については
&man.fbtab.5; を参照してください。
GENERIC
に含まれていないデバイスはエントリがありませんから、以上
の簡単な手順をおこなうことになります。
すべての SCSI コントローラは同じ /dev
の エントリを使用しますのでノードを作る必要はありません。
またネッ トワークカードと SLIP/PPP 疑似デバイスは
/dev にはエント
リがありませんのでこれらについても作る必要がありません。
問題が起きた場合には
カスタムカーネルを作る場合に起きるトラブルは、
- 次の 4 種類に分けられます。
+ 次の 5 種類に分けられます。
- config コマンドの失敗
+
+ config コマンドの失敗
+
カーネルコンフィグレーションファイルに設定を行なってから
- config コマンドが失敗したのであれば、
+ &man.config.8; コマンドが失敗したのであれば、
おそらくファイルのどこかに単純な間違いがあります。
- さいわい、
- config
+ さいわい、&man.config.8;
はトラブルの起きた行番号を出力しますので
- vi で素早く見つけることができます。
+ vi で素早く見つけることができます。
例えば、次のように出力された場合
config: line 17: syntax error
- vi のコマンドモードで
+ vi のコマンドモードで
17G とタイプすれば、
問題のところへ飛ぶことができます。
GENERIC カーネルのファイルや、
他のリファレンスと比較して注意深く修正してください。
make コマンドの失敗
make コマンドが失敗した場合には、
- カーネル設定で config
+ カーネル設定で &man.config.8;
がとらえられなかったような間違いをしていることが多いようです。
もう一度コンフィグレーションファイルを見直してください。
それでも問題を解決することができなければ、
&a.questions;
へあなたのカーネルコンフィグレーションファイルをつけてメールしてください。
誰かが素早く間違いを見つけてくれるでしょう。
- カーネルが起動しない
-
+
+ 新しいカーネルのインストールの失敗
+
+
+ カーネルが無事コンパイルできたのに、インストールに失敗
+ (make install または
+ make installkernel に失敗)
+ したら、最初に確認すべきことは、システムがセキュアレベル 1
+ 以上で動いていないかどうかです (&man.init.8; 参照)。
+ カーネルのインストール時には、カーネルから immutable
+ (変更不可) フラグを外して、
+ 新しい方に変更不可フラグを設定しようとします。セキュアレベル 1
+ 以上では、システム内のどのファイルからも変更不可フラグを外せないため、
+ カーネルのインストールはセキュアレベル 0
+ 以下で行わなければなりません。
+
+
+
+
+ カーネルが起動しない
新しいカーネルが起動しなかったり、
デバイスの認識をしない場合でもあわてないでください!
- さいわい、BSDは 利用できないカーネルから復帰する
- 洗練されたメカニズムがあります。
- それは、FreeBSD のブートローダで起動したいカーネルを選択する
- (例えば boot kernel.old)
- だけです。
+ さいわい、FreeBSD
+ には利用できないカーネルから復帰する洗練されたメカニズムがあります。
+ それは、FreeBSD
+ のブートローダで起動したいカーネルを選択するだけです。
+ システムが 10 からカウントダウンしている時に、この機能が使えます。
+ Enter キー以外の任意のキーを押して、
+ unload と入力してから、
+ boot kernel.old
+ か他の正常に起動するカーネルを入力してください。
カーネルの再設定をおこなう場合にはいつも、
確実に動くことが分かっているカーネルを用意しておくようにすると良いでしょう。
問題のないカーネルで起動した後に
あなたのコンフィグレー ションファイルを調べ、
再び構築を試みてください。
/var/log/messages
ファイルにはすべての成功した
起動時のカーネルメッセージやその他の記録があり、これ
は助けになる情報の一つでしょう。また、
&man.dmesg.8; コマンドは現在の起動時のカーネルメッ
セージを出力します。
カーネルの構築中にトラブルが起きた時に使うために
GENERICや他のカーネルを次の構築で消されない
ように異る名前で保存するようにしてください。kernel.old
は新しいカーネルをインストールする 時に、
その一つ前にインストールしたうまく動かないかもしれ
ないカーネルで上書きされてしまいますので当てにできませ
ん。またできる限り早く動作しているカーネルを本来の
kernelの位置に移動させてください。
そうしないと
&man.ps.1; のようなコマンドが正しく動きません。
make
でインストールされたカーネルのファイルを
(別のカーネルに戻すために)
アンロック
するための特別
のコマンドは
&prompt.root; chflags noschg /kernel
- です。また、
+ です。これができないのなら、&man.securelevel.8; を 0
+ より大きい値にしているのかもしれません。
+ /etc/rc.conf の
+ kern_securelevel を
+ -1 に変更して再起動してください。新し
+ いカーネルに満足したら、前の設定に戻してよいでしょう。
+
+ また、
新しい置き換えたカーネルあるいは重要ファイ
ルを動かしたり変更されないように
ロック
するには 次のようにします。
&prompt.root; chflags schg /kernel
- カーネルは動くが
- ps は動かない!
+
+ カーネルは動きますが &man.ps.1; は動きません!
システムユーティリティと異る
バージョンのカーネルをインストールした場合、例えば
4.x のカーネルを 3.x
システム上にインストールするような場合、
&man.ps.1; や &man.vmstat.8; のような多くの
システムステータスコマンドは動かなくなります。
libkvm を再コンパイルして、
これらのユーティリティを作りなおす必要があります。
これは、カーネルとそれ以外で異なるバージョンを組み合わせて
オペレーティングシステムを使用することが推奨されない理由の
一つとなっています。