aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/books/handbook/basics/chapter.sgml
blob: 9c91e270c055a87d663679458c01ce1c67f2c0a6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
<!--
     The FreeBSD Documentation Project
     The FreeBSD Japanese Documentation Project

     Original revision: 1.20
     $FreeBSD: doc/ja_JP.eucJP/books/handbook/basics/chapter.sgml,v 1.8 2000/03/07 23:57:14 kuriyama Exp $
-->

<chapter id="basics">
  <title>Unix の基礎知識</title>

  <para><emphasis>訳: &a.jp.nakai;, 19961012 日.</emphasis></para>

  <sect1>
    <title>概要</title>
    
    <para><emphasis>改訂: Chris Shumway
        <email>cshumway@cdrom.com</email>, 2000310 日.</emphasis></para>
    
    <para>この章では FreeBSD
      オペレーティングシステムの基本的なコマンドと機能について記述しています.
      あなたが FreeBSD の初心者なら,
      何か質問する前にこの章を読んでおいた方がきっといいはずです.</para>
  </sect1>

  <sect1 id="permissions">
    <title>許可属性(permissions; パーミッション)</title>

    <para>FreeBSD は BSD UNIX を起源とする歴史を持ち,
      いくつかの鍵となる UNIX 思想にもとづいた基本設計がされています.
      まず最も際だった特徴として最初に言えるのは, FreeBSD
      がマルチユーザのオペレーティングシステムだということです.
      FreeBSD は同時に働いている複数のユーザすべてを,
      完全に分離したタスク上で処理する能力を持っています.
      また FreeBSD は, ハードウェアデバイス, 周辺装置, メモリ,
      CPU 時間等への要求を, 各ユーザが平等に利用できるように適切に共有し,
      管理する役割を担っています.</para>

    <para>システムがマルチユーザをサポートしているため,
      システムが管理する資源はすべて,
      誰がその資源を読み・書き・実行できるかを支配する,
      一組の許可属性を持っています.
      これらの許可属性は 3 つの部分からなる 8 進数の形で格納されています.
      それはそのファイルの所有者(owner)に対するもの,
      そのファイルが所属するグループ(group)に対するもの,
      その他(others)に対するものの 3 つです.
      これを数字を使って表現すると, 次のようになります.</para>

    <informaltable frame="none">
      <tgroup cols="3">
	<thead>
	  <row>
	    <entry></entry>
	    <entry>許可属性</entry>
	    <entry>ディレクトリの表示</entry>
	  </row>
	</thead>

	<tbody>
	  <row>
	    <entry>0</entry>
	    <entry>読み込み不可, 書き込み不可, 実行不可</entry>
	    <entry><literal>---</literal></entry>
	  </row>

	  <row>
	    <entry>1</entry>
	    <entry>読み込み不可, 書き込み不可, 実行可能</entry>
	    <entry><literal>--x</literal></entry>
	  </row>

	  <row>
	    <entry>2</entry>
	    <entry>読み込み不可, 書き込み可能, 実行不可</entry>
	    <entry><literal>-w-</literal></entry>
	  </row>

	  <row>
	    <entry>3</entry>
	    <entry>読み込み不可, 書き込み可能, 実行可能</entry>
	    <entry><literal>-wx</literal></entry>
	  </row>

	  <row>
	    <entry>4</entry>
	    <entry>読み込み可能, 書き込み不可, 実行不可</entry>
	    <entry><literal>r--</literal></entry>
	  </row>

	  <row>
	    <entry>5</entry>
	    <entry>読み込み可能, 書き込み不可, 実行可能</entry>
	    <entry><literal>r-x</literal></entry>
	  </row>

	  <row>
	    <entry>6</entry>
	    <entry>読み込み可能, 書き込み可能, 実行不可</entry>
	    <entry><literal>rw-</literal></entry>
	  </row>

	  <row>
	    <entry>7</entry>
	    <entry>読み込み可能, 書き込み可能, 実行可能</entry>
	    <entry><literal>rwx</literal></entry>
	  </row>
	</tbody>
      </tgroup>
    </informaltable>

    <para><command>ls -l</command> で表示される詳細なディレクトリリストでは,
      ファイルの所有者, グループ, その他への許可属性を示す欄があるのがわかります.
      次に示すのは, その部分だけ抜き出したものです.</para>

    <screen>-rw-r--r--</screen>

    <para>左から右へ見たときに最初にあたる文字は, それが
      普通のファイルなのか, ディレクトリなのか,
      キャラクタ型のデバイス特殊ファイルなのか,
      ブロック型のデバイス特殊ファイルなのか,
      ソケットなのか,
      その他の特殊な疑似ファイルデバイスなのかといった種類を示す特別な文字です.
      その次の <literal>rw-</literal> と書かれた 3 文字は,
      そのファイルの所有者に許可を与えるものです.
      その次の <literal>r--</literal>3 文字は,
      そのファイルが所属しているグループに許可を与えます.
      最後の <literal>r--</literal>3 文字は,
      システムに存在するその他のユーザに許可を与えます.
      <quote>-</quote> は許可が与えられていないことを示します.
      このファイルの例では, ファイルの所有者はこのファイルを読み書きでき,
      ファイルの所属しているグループに属するユーザはファイルを読むことだけでき,
      そのどちらでもないユーザは,
      このファイルを読むだけできるように許可属性が与えられています.
      上の表によれば, このファイルに与えられた許可属性は
      <literal>644</literal> となります.
      ここで各数字は, このファイルの許可属性の 3 つの部分を表しています.</para>

    <para>ファイルについてはここまでの説明で十分です.  しかし,
      デバイスの場合の許可属性はどのようにコントロールされているのでしょうか?
      FreeBSD は, 大部分のハードウェアをファイルとして取り扱います.
      そのため, プログラムからは普通のファイルとまったく同じようにオープンし,
      データの読み書きができるようになっています.      
      これらのデバイス特殊ファイルは
      <filename>/dev</filename> ディレクトリに収められています.</para>

    <para>ディレクトリもまた, ファイルと同様に扱われます.
      それは読み込み/書き込み/実行の許可属性を持ちます.
      ディレクトリの実行ビットはファイルのそれとは少し違った意味を持ちます.
      ディレクトリが実行可能になっているとき,
      それはその中が探索できること, たとえば,
      そのディレクトリ中のファイルリストが参照できることを意味します.
    </para>

    <para>この他にも許可属性はありますが, いずれも
      setuid バイナリや sticky ディレクトリなどといった特殊な状況で使われます.
      ファイルの許可属性そのものについて,
      また, それらの設定のしかたに関する詳しい情報は,
        &man.chmod.1; マニュアルページを参照してください.</para>
  </sect1>

  <sect1 id="dirstructure">
    <title>ディレクトリ構造</title>

    <para>FreeBSD の用いているファイルシステムは多くの基本的なシステム動作を決定するもので,
      その階層構造は極めて重要です.
      ディレクトリ構造に関する完全な記述が &man.hier.7;
      のマニュアルページにありますので, ここでは繰り返しません.
      詳しい情報は, &man.hier.7; をご覧ください.
    </para>
    
    <para>最も重要なディレクトリは, すべてのディレクトリの根(root)にあたる
      / ディレクトリです.  このディレクトリは起動時に一番最初にマウントされ,
      起動時に必要な基本システムが含まれています.
      また, ルートディレクトリには,
      追加したい他のファイルシステムをマウントするためのマウントポイントも含まれます.
    </para>

    <para>マウントポイントとはルートファイルシステムに存在する,
      追加のファイルシステムと接続するためのディレクトリのことです.
      標準的なマウントポイントには
      <filename>/usr</filename>, <filename>/var</filename>,
      <filename>/mnt</filename>, <filename>/cdrom</filename>
      があります.  
      通常これらのディレクトリについては,
      <filename>/etc/fstab</filename> というファイル中のエントリが参照されます.
      <filename>/etc/fstab</filename>
      さまざまなファイルシステムとマウントポイントの表であり,
      システムが参照します.
      <filename>/etc/fstab</filename> に書かれたファイルシステムは
      <option>noauto</option> オプションが指定されていなければ,
      起動時に &man.rc.8; スクリプトによって自動的にマウントされます.
      <filename>/etc/fstab</filename>
      ファイルの書式やオプションに関しての詳細は
      &man.fstab.5; をご覧ください.</para>
  </sect1>

  <sect1 id="shells">
    <title>シェル</title>

    <para>FreeBSD では日々の作業のほとんどは,
      「シェル」と呼ばれるコマンドラインインタフェイスを通して行われます.
      シェルの主な仕事はコマンドを入力チャンネルから受け取り,
      そしてそれらを実行することです.
      大部分のシェルはさらに組み込みの機能を持っていて, 日々の作業,
      ファイル管理やファイル名の展開, コマンドライン編集,
      コマンドマクロ, 環境変数などに便利です.
      FreeBSD には sh(Bourne Shell) や csh(C-shell) が含まれています.
      また,
      これ以外にもたくさんのシェルが FreeBSD Ports コレクションから利用可能です.
      tcsh や bash などの高機能なものは, これに含まれています.</para>

    <para>「あなたは, どのシェルを使いますか?」という質問は,
      まったく趣味の問題です.
      あなたが C のプログラマだったとすれば,
      tcsh のような C 風のシェルの方が落ち着くかもしれません.
      Linux から来た人や UNIX のコマンドラインインタフェイスになじみがなければ,
      bash を試すのも良いでしょう.
      ポイントは, それぞれのシェルは,
      あなたの好みの作業環境で利用できる(もしくはできない)独自の機能を持っているということ,
      そして, どのシェルを使うことにするかを決めるのはあなた自身だということです.</para>

    <para>シェルの一般的な機能の一つに, ファイル名の補完があります.
      コマンドやファイル名の最初の数文字を与えて TAB キーを押すことで,
      シェルにコマンドやファイル名の残りの部分を自動的に補完させることができます.
      例をあげましょう.  二つのファイル
      <filename>foobar</filename>, <filename>foo.bar</filename> が
      あったとします.  <filename>foo.bar</filename> の方を削除しようとするとき
      <command>rm fo[TAB].[TAB]</command> と入力します.</para>

    <para>するとシェルは <command>rm
      foo[BEEP].bar</command> と出力するでしょう.</para>

    <para>[BEEP] のところはコンソールのベル(訳注: 通常はビープ音が鳴ります)です.
      これは複数のファイルがマッチしたため,
      ファイル名の補完を完全に行なえなかったことを伝えています.
      <filename>foobar</filename><filename>foo.bar</filename> は
      両方とも <literal>fo</literal> ではじまりますが, 
      <literal>foo</literal> までなら補完できます.
      ここで <literal>.</literal> を入力して TAB を押せば,
      シェルはファイル名の残りの部分を補完できます.</para>

    <para>もう一つあげられるシェルの機能として, 環境変数があります.
      環境変数とは, シェルの環境変数空間におけるキーと値とのペアです.
      この変数空間は, そのシェルから起動されたプログラムから参照でき,
      それを利用してプログラムの設定を保存するのに利用されます.
     下の表は, 一般的な環境変数とその意味を示したものです.</para>

    <informaltable frame="none">
      <tgroup cols="2">
	<thead>
	  <row>
	    <entry>変数名</entry>
	    <entry>意味</entry>
	  </row>
	</thead>

	<tbody>
	  <row>
	    <entry><envar>USER</envar></entry>
	    <entry>現在のログインユーザのユーザ名.</entry>
	  </row>

	  <row>
	    <entry><envar>PATH</envar></entry>
	    <entry>コロンで区切られた実行ファイル探索のための
	      ディレクトリのリスト.</entry>
	  </row>

	  <row>
	    <entry><envar>DISPLAY</envar></entry>
	    <entry>接続する X11 ディスプレイのネットワーク名(存在する場合のみ).</entry>
	  </row>

	  <row>
	    <entry><envar>SHELL</envar></entry>
	    <entry>現在のシェル.</entry>
	  </row>

	  <row>
	    <entry><envar>TERM</envar></entry>
	    <entry>ユーザの端末名.
              端末のケーパビリティを決定するのに使われる.</entry>
	  </row>

	  <row>
	    <entry><envar>TERMCAP</envar></entry>
	    <entry>種々の端末の機能を実現する端末のエスケープコードの
	      データベースのエントリ.</entry>
	  </row>

	  <row>
	    <entry><envar>OSTYPE</envar></entry>
	    <entry>オペレーティングシステムの種別.
              たとえば FreeBSD.</entry>
	  </row>

	  <row>
	    <entry><envar>MACHTYPE</envar></entry>
	    <entry>システムが動作している CPU のアーキテクチャ.</entry>
	  </row>

	  <row>
	    <entry><envar>EDITOR</envar></entry>
	    <entry>ユーザの選んだテキストエディタ.</entry>
	  </row>

	  <row>
	    <entry><envar>PAGER</envar></entry>
	    <entry>ユーザの選んだテキストページャ.</entry>
	  </row>

	  <row>
	    <entry><envar>MANPATH</envar></entry>
	    <entry>コロンで区切られたマニュアルページ探索のための
	      ディレクトリのリスト.</entry>
	  </row>
	</tbody>
      </tgroup>
    </informaltable>

    <para>環境変数をセットしたりその値を見る方法は,
      それぞれのシェルごとに多少異なります.
      たとえば, csh や tcsh 等の C シェルでは
      <command>setenv</command> を使います.
      sh や bash 等の Bourne シェルでは
      <command>set</command><command>export</command>
      を使います.
      たとえば, <envar>EDITOR</envar> 環境変数の値を
      <filename>/usr/local/bin/emacs</filename> に
      セットするか変更するならば次のようにします.</para>

    <para><command>setenv EDITOR /usr/local/bin/emacs</command></para>

    <para>Bourne シェルでは次のようになります.</para>

    <para><command>export EDITOR="/usr/local/bin/emacs"</command></para>

    <para>ほとんどのシェルでは,
      コマンドライン中の変数名の前に <literal>$</literal> 文字を置くことで,
      環境変数を展開させることができます.
      たとえば,
      <command>echo $TERM</command><envar>$TERM</envar> が
      セットされている内容を表示します.
      それはシェルが <envar>$TERM</envar> を展開して
      echo に渡しているからです.</para>

    <para>シェルはさまざまな特殊文字を, 特別なデータを表すものとして扱います.
      その特殊文字はメタキャラクタと呼ばれます.
      もっとも一般的なものは <literal>*</literal> で,
      これはファイル名に含まれる, あらゆる文字を表します.
      これらの特殊なメタキャラクタはファイル名の展開に使われます.
      たとえば, <command>echo *</command> と入力すると
      <command>ls</command> と入力したのとほとんど同じ結果を得られます.
      これはシェルが <command>*</command> とマッチするすべてのファイルを
      受け取って echo のコマンドラインに渡し, 表示するからです.</para>

    <para>これらの特殊文字をシェルに解釈させないようにするため,
      特殊文字の前にバックスラッシュ文字 (<literal>\</literal>)
      を置くことができます.
      <command>echo $TERM</command> は,
      あなたの端末が何にセットされているかを表示します.
      <command>echo \$TERM</command><envar>$TERM</envar> と
      そのまま表示します.</para>

    <sect2 id="changing-shells">
      <title>シェルの変更</title>

      <para>シェルを変更する一番簡単な方法は <command>chsh</command>
	コマンドを使うことです.  <command>chsh</command> を実行すると
	環境変数 <envar>EDITOR</envar> で示されたエディタが立ち上がります.
	環境変数をセットしていなかった時は
        <command>vi</command> が立ち上がります.
	<quote>Shell:</quote> の行を適宜変更してください.</para>

      <para><command>chsh</command><option>-s</option> オプションをつけると,
        エディタを起動せずにシェルを変更することが可能です.
        たとえば, シェルを bash に変えたいなら, 次のようにしてください.
      </para>
	
      <screen>&prompt.user; <userinput>chsh -s /usr/local/bin/bash</userinput></screen>

      <para><command>chsh</command> をパラメータなしで実行し,
        エディタでシェルを変更しても同じことができます.</para>

      <note>
	<para>使おうと思っているシェルは<emphasis>必ず</emphasis>
	  <filename>/etc/shells</filename> 中に書かれているものでなければなりません.
	  シェルを <link linkend="ports">Ports コレクション</link>から
	  インストールしていたのであれば, すでにそれは行なわれていますが,
	  手動でインストールした場合は, それを忘れずに行ってください.</para>
     
        <para>たとえば, <command>bash</command>
          を手動で
          <filename>/usr/local/bin</filename>
          にインストールした場合
          以下のようにする必要があります.</para>

        <screen>&prompt.root; <userinput>echo &quot;/usr/local/bin/bash&quot; &gt;&gt; /etc/shells</userinput></screen>

        <para>そして <command>chsh</command> を実行してください.</para>
      </note>
    </sect2>
  </sect1>

  <sect1 id="editors">
    <title>テキストエディタ</title>

    <para>さまざまな FreeBSD の設定は, テキストファイルを編集することで行われます.
      そのため, テキストエディタの扱いに慣れると良いでしょう.
      FreeBSD には, 基本システムの一部として二, 三提供されるものと,
      Ports collection から利用できる, たくさんのテキストエディタが用意されています.
    </para>

    <para>最も学習が簡単なエディタは,
      easy editor の略で <application>ee</application> と呼ばれるものです.
      <application>ee</application> を立ち上げるには, コマンドラインから
      <command>ee filename</command> と入力します.
      ここで <literal>filename</literal> は,
      編集しようとしているファイルの名前です.
      たとえば, <filename>/etc/rc.conf</filename> を編集するには
      <command>ee /etc/rc.conf</command> と入力します.
      一旦 ee の中に入れば,
      エディタの機能を操作するコマンドはすべてディスプレイの上部に
      表示されています. キャレット <literal>^</literal> 文字は
      キーボードのコントロールキーを意味しますので, ^e はコントロールキーと
      <literal>e</literal> を一緒に押すという意味になります.
      <application>ee</application> を終了するにはエスケープキーを押し,
      そして leave editor を選びます.
      ファイルが更新されていたときは,
      エディタは変更をセーブするかどうかプロンプトを出します.</para>

    <para>FreeBSD には, 基本システムの一部として
      <application>vi</application>,
      Ports コレクションの一部として
      <application>emacs</application><application>vim</application>
      といった, より強力なテキストエディタが用意されています.
      これらのエディタはやや学習が複雑ですが, より強力で高い機能性を提供します.
      しかし, あなたが多量のテキストを編集することを考えているなら,
      <application>vim</application><application>emacs</application>
      といった強力なエディタを習得することは,
      より多くの時間を節約することでしょう.</para>
  </sect1>

  <sect1>
    <title>さらに詳しい情報を得るには...</title>

    <sect2 id="basics-man">
      <title>オンラインマニュアル</title>
      
      <para>FreeBSD についてのもっとも包括的な文書は,
        マニュアルページの形式になっているものです.
        FreeBSD システム上のほとんどすべてのプログラムには,
        基本的な操作方法とさまざまな引数を説明しているリファレンスマニュアルが添付されています.
        これらのマニュアルは man コマンドで見ることができます. man
        コマンドの使い方は簡単です.</para>
      
      <para><command>&prompt.user; man コマンド名</command></para>
      
      <para><literal>コマンド名</literal>
        のところには, 知りたいコマンドの名前を入れます.
        たとえば <command>ls</command> コマンドについて知りたい場合には,
        次のように入力します.</para>
      
      <para><command>&prompt.user; man ls</command></para>
      
      <para>オンラインマニュアルは,
        セクション番号で分類されています.</para>
      
      <orderedlist>
        <listitem>
          <para>ユーザコマンド</para>
        </listitem>
        
        <listitem>
          <para>システムコールとエラー番号</para>
        </listitem>
        
        <listitem>
          <para>C のライブラリ関数</para>
        </listitem>
        
        <listitem>
          <para>デバイスドライバ</para>
        </listitem>

        <listitem>
          <para>ファイル形式</para>
        </listitem>
        
        <listitem>
          <para>ゲームや娯楽</para>
        </listitem>
        
        <listitem>
          <para>さまざまな情報</para>
        </listitem>
        
        <listitem>
          <para>システムの管理と操作のためのコマンド</para>
        </listitem>
        
        <listitem>
          <para>カーネル開発者のための情報</para>
        </listitem>
      </orderedlist>
      
      <para>時折,
        同じトピックがオンラインマニュアルの複数のセクションに記載されている場合があります.
        たとえば, chmod ユーザコマンドと
        <literal>chmod()</literal>
        システムコールの場合がそれに該当します.
        この場合, man コマンドにセクション番号を与えることで,
        どちらを参照したいかを指定することができます.</para>
      
      <para><command>&prompt.user; man 1 chmod</command></para>
      
      <para>上のようにすれば,
        ユーザコマンド <command>chmod</command>
        のマニュアルページが表示されます.
        オンラインマニュアルの特定セクションへの参照は,
        慣習的に書かれている文書で括弧の中に示されます.
        すなわち, &man.chmod.1; は <command>chmod</command>
        ユーザコマンドを, &man.chmod.2;
        はシステムコールの方を示しています.</para>
      
      <para>コマンドの名前を知っていて,
        単純にその使い方を知りたい場合はここまでの説明で十分でしょう.
        しかし,
        もしコマンドの名前を思い出せない場合にはどうしたら良いのでしょうか?
        man に <option>-k</option> スイッチをつければ,
        コマンド解説(description)の文章から,
        指定したキーワードを検索することができます.</para>
      
      <para><command>&prompt.user; man -k mail</command></para>
      
      <para>このコマンドにより,
        <quote>mail</quote>
        というキーワードをコマンド解説に含むコマンドの一覧が表示されます.
        実際には, これは apropos コマンドを使う場合と同等の機能です.</para>
      
      <para>それでは, <filename>/usr/bin</filename>
        にあるさまざまなコマンドすべてを見ていて,
        それらが実際にどう働くのかが, まったく見当もつかないときには
        どうしたら良いでしょう?
        そのときは単純に,
        <command>&prompt.user; cd /usr/bin; man -f *</command>
        とするか, あるいは同じ働きをする
        <command>&prompt.user; cd /usr/bin; whatis *</command>
        としてください.</para>
    </sect2>
    
    <sect2 id="basics-info">
      <title>GNU の Info ファイル</title>
      
      <para>FreeBSD には Free Software Foundation (FSF)
        によるアプリケーションや
        ユーティリティがたくさん含まれています.
        これらのプログラムには, マニュアルページに加えて
        <literal>info</literal> ファイルと呼ばれる
        ハイパーテキスト形式の文書が付属しています.
        この文書は <command>info</command> コマンド, 
        あるいは <application>emacs</application> をインストールしているなら
        <application>emacs</application> の info
        モードで読むことができます.</para>
      
      <para>&man.info.1; コマンドを使うには, 単に次のように入力します.</para>
      
      <para><command>&prompt.user; info</command></para>
      
      <para>
        <literal>h</literal> と入力すると,
        簡単な手引きを読むことができます.
        クイックコマンドリファレンスは <literal>?</literal>
        を入力してください.</para>
    </sect2>
  </sect1>
</chapter>

<!--
     Local Variables:
     mode: sgml
     sgml-declaration: "../chapter.decl"
     sgml-indent-data: t
     sgml-omittag: nil
     sgml-always-quote-attributes: t
     sgml-parent-document: ("../book.sgml" "part" "chapter")
     End:
-->