この章ではシステムが起動完了し、実際に使用する時の基本的な手順について説明します。

また、Unix系OSになじみのない人、そして他のUnix系OSを使用経験がある人が参照すると役に立つ情報源をそれぞれ紹介します。

初めてのログイン

rootでログイン

河豚板の起動が完了すると、OpenBSDオペレーティングシステムのログイン画面が表示されます。
最初はスーパーユーザのアカウントのみがログインできる状態ですので「login:」のプロンプトに対し root、「Password:」のプロンプトに対し起動時に設定したパスワードを入力します。

OpenBSD/amd64 (fugu-demo.localnet) (tty00)

login: root
Password:
OpenBSD 7.2-stable (RDROOT.MP) #28: Fri Feb  3 11:29:19 JST 2023

Welcome to FuguIta, the OpenBSD-based live system.

FuguIta aims to help popularize OpenBSD operating system by making it easier
to get started with.

For information on FuguIta's specific features and how to use them, please
refer to the documentation on https://fuguita.org/.

If you have any questions or suggestions for FuguIta, please send an email to
me or post a message to fuguita.org's message board.
Please feel free to contact me.

Yoshihiro Kawamata
kaw@on.rim.or.jp , https://fuguita.org/

You have new mail.
fugu-demo# 

ログインに成功するとシェルのプロンプト「fugu-demo#」が表示され、コマンドが実行可能な状態になります。
例としてpsというコマンドを実行してみます。

fugu-demo# ps -aux
USER       PID %CPU %MEM   VSZ   RSS TT  STAT   STARTED       TIME COMMAND
root     68528  3.6  0.1   868   884 00  Sp      6:51AM    0:01.89 -ksh (ksh)
root         1  0.0  0.1   884   532 ??  I       6:40AM    0:01.68 /sbin/init
root     14453  0.0  0.1   792   644 ??  Ip      6:43AM    0:00.47 /sbin/slaacd
_slaacd  53995  0.0  0.1   812   784 ??  Ip      6:43AM    0:00.81 slaacd: engi
_slaacd  33982  0.0  0.1   800   732 ??  Ip      6:43AM    0:00.81 slaacd: fron
root     55401  0.0  0.1   712   548 ??  IU      6:44AM    0:00.17 dhclient: em
_dhcp    78950  0.0  0.1   840   700 ??  Ip      6:44AM    0:00.10 dhclient: em
root     86344  0.0  0.2   520  2184 ??  IpU     6:46AM    0:00.64 syslogd: [pr
_syslogd 45328  0.0  0.1  1128  1488 ??  Sp      6:46AM    0:01.04 /usr/sbin/sy
root     73380  0.0  0.1   836   584 ??  IU      6:46AM    0:00.27 pflogd: [pri
_pflogd  53476  0.0  0.1   876   540 ??  Sp      6:46AM    0:02.97 pflogd: [run
_ntp     63935  0.0  0.3  1016  2868 ??  S<p     6:47AM    0:02.87 ntpd: ntp en
_ntp     18769  0.0  0.2   820  2508 ??  Ip      6:47AM    0:01.86 ntpd: dns en
root     34145  0.0  0.2   788  1568 ??  S<pU    6:47AM    0:00.81 /usr/sbin/nt
root     63360  0.0  0.1  1324  1280 ??  I       6:47AM    0:00.37 sshd: /usr/s
root     61566  0.0  0.2  1680  2052 ??  Ip      6:48AM    0:00.82 /usr/sbin/sm
_smtpd   19845  0.0  0.4  1448  3940 ??  Ip      6:48AM    0:01.83 smtpd: klond
_smtpd   66321  0.0  0.4  1716  4240 ??  Ip      6:48AM    0:02.23 smtpd: contr
_smtpd   91561  0.0  0.4  1552  4164 ??  Ip      6:48AM    0:01.95 smtpd: looku
_smtpd   90688  0.0  0.4  1844  4396 ??  Ip      6:48AM    0:02.69 smtpd: pony
_smtpq   16446  0.0  0.4  1640  4252 ??  Ip      6:48AM    0:02.47 smtpd: queue
_smtpd   82450  0.0  0.4  1440  3988 ??  Ip      6:48AM    0:02.17 smtpd: sched
_sndio   66682  0.0  0.1   516   744 ??  I<p     6:48AM    0:00.17 /usr/bin/snd
_sndiop  92235  0.0  0.1   504   920 ??  IpU     6:48AM    0:00.08 sndiod: help
root      1376  0.0  0.1   672  1268 ??  Sp      6:51AM    0:00.84 /usr/sbin/cr
root      6575  0.0  0.0   484   360 00  R+pU/0  7:32AM    0:00.35 ps -aux
root     13541  0.0  0.1   288  1296 C0  I+pU    6:51AM    0:00.58 /usr/libexec
root     70324  0.0  0.1   292  1308 C1  I+pU    6:51AM    0:00.54 /usr/libexec
root     10475  0.0  0.1   296  1312 C2  I+pU    6:51AM    0:00.44 /usr/libexec
root     81779  0.0  0.1   292  1304 C3  I+pU    6:51AM    0:00.58 /usr/libexec
root     45364  0.0  0.1   284  1280 C5  I+pU    6:51AM    0:00.47 /usr/libexec
fugu-demo# 

psは、現在どのようなプログラム(プロセス)が動いているかを表示するコマンドです。
システムが起動直後、しかも画面表示上動きのない様子であっても内部ではすでに沢山のプロセスが起動されていることがわかります。

ログアウトするにはシェルのプロンプト「fugu-demo#」が出ているときに <Control>-D を押すか、「exit」と入力します。

【メモ】
<Control>-Dは「<Control>キーを押したままの状態でアルファベットの「D」キーも押す」という意味です。<Control>-Dはまた、「^D」と表記されることもあります。

# exit

OpenBSD/amd64 (fugu-demo.localnet) (tty00)

login: 

ログアウトすると「login:」が表示され、再度ログインできる状態になります。

一般ユーザの登録

起動直後の河豚板は、スーパユーザ(システム管理者)用のアカウントrootでのみログインできます。

Unix系のOSでは、通常は一般ユーザとしてログインし、日常の利用を行います。
システム管理の時には一般ユーザから一時的にスーパユーザになるか、あるいは一般ユーザからログアウトした後、スーパユーザとしてログインし直して管理作業を行います。

【ご注意】
!!スーパユーザでログイン中はシステムを動作不能にしてしまうような操作を容易に実行できてしまいます。勿論、故意にではない誤操作の場合も例外ではありません。このようなリスクを防ぐため、一般ユーザのアカウントを作成し、通常はそのアカウントで使用することを強くお勧めします。

以下、一般ユーザとしてyoshiというアカウントを作成してみます。
ユーザアカウントの作成もシステム管理ですので、rootで行います。

ユーザアカウントを追加するにはadduserというコマンドを使用します。
まず、ユーザアカウント追加時のデフォルト値を訊かれます。これはadduserの初回の実行時にだけ訊かれます。通常は全て<Enter>キーのみの入力で問題ありません。

# adduser
Couldn't find /etc/adduser.conf: creating a new adduser configuration file
Reading /etc/shells
Enter your default shell: bash csh ksh nologin nsh sh [ksh]:    ←<Enter>を入力
Your default shell is: ksh -> /bin/ksh
Default login class: authpf bgpd daemon default pbuild staff unbound
[default]:                                                      ←<Enter>を入力
Enter your default HOME partition: [/home]:                     ←<Enter>を入力
Copy dotfiles from: /etc/skel no [/etc/skel]:                   ←<Enter>を入力
Send welcome message?: /path/file default no [no]:              ←<Enter>を入力
Do not send message(s)
Prompt for passwords by default (y/n) [y]:                      ←<Enter>を入力
Default encryption method for passwords: auto blowfish [auto]:  ←<Enter>を入力
Use option ``-silent'' if you don't want to see all warnings and questions.

Reading /etc/shells
Check /etc/master.passwd
Check /etc/group

以降は、一般ユーザのアカウント「yoshi」を作成してみます。
最初に表示されているように、入力内容は最後に訂正でき(入力しなおせ)ます。

Ok, let's go.
Don't worry about mistakes. There will be a chance later to correct any input.
Enter username []: yoshi                        ←アカウント名(半角アルファベット半角数字)
Enter full name []: Yoshihiro Kawamata          ←ユーザの本名
Enter shell bash csh ksh nologin nsh sh [ksh]:  ←<Enter>を入力 (ログインシェル)
Uid [1000]:                                     ←<Enter>を入力 (ユーザID)
Login group yoshi [yoshi]:                      ←<Enter>を入力 (ログイングループ)
Login group is ``yoshi''. Invite yoshi into other groups: guest no
[no]: wheel                                     ←(ログイングループ以外に加入するグループ)
Login class authpf bgpd daemon default pbuild staff unbound
[default]:                                      ←<Enter>を入力 (ログインクラス)
Enter password []:                              ←パスワードを入力 (表示されません)
Enter password again []:                        ←確認のためのパスワード再入力

Name:        yoshi
Password:    ****
Fullname:    Yoshihiro Kawamata
Uid:         1000
Gid:         1000 (yoshi)
Groups:      yoshi wheel
Login Class: default
HOME:        /home/yoshi
Shell:       /bin/ksh
OK? (y/n) [y]: y                                ←入力内容の確認
Added user ``yoshi''
Copy files from /etc/skel to /home/yoshi
Add another user? (y/n) [y]: n                  ←他にもユーザアカウント作成するなら「y」
Goodbye!
# 

【メモ】
この例ではアカウントyoshiをwheelというグループにも加入させています。
wheelに加入しているユーザは、システム管理作業を行うために、一時的にrootになることができます。

以上で、yoshiという一般ユーザアカウントが作成されましたので、実際にログインできるか確認してみます。

fugu-demo# exit

OpenBSD/amd64 (fugu-demo.localnet) (tty00)

login: yoshi
Password:
OpenBSD 6.7-stable (RDROOT.MP) #1: Fri Jun  5 09:41:45 JST 2020

Welcome to FuguIta, the OpenBSD-based live system.

FuguIta aims to help popularize OpenBSD operating system by making it easier
to get started with.

For information on FuguIta's specific features and how to use them, please
refer to the documentation on https://fuguita.org/.

If you have any questions or suggestions for FuguIta, please send an email to
me or post a message to fuguita.org's message board.
Please feel free to contact me.

Yoshihiro Kawamata
kaw@on.rim.or.jp , https://fuguita.org/

fugu-demo$ pwd
/ram/home/yoshi
fugu-demo$ ls
fugu-demo$ ls -a
.          .Xdefaults .cvsrc     .mailrc    .ssh
..         .cshrc     .login     .profile
fugu-demo$ ^D

OpenBSD/amd64 (fugu-demo.localnet) (tty00)

login: 

【メモ】
rootでログインしたときのシェルのプロンプトは「fugu-demo#」になりますが、一般ユーザの場合は「fugu-demo$」となります。
以降の例示箇所でもこの表記に従います。
OpenBSDではrootアカウントでのSSHによるログインは許可されていません。SSHによるリモートログインを行ないたい場合も一般ユーザのアカウントを作成しておく必要があります。

X Window Systemを起動してみる。

OpenBSDはX Window Systemというグラフィクス環境を含んだ形で出荷されており、河豚板もこのX Window Systemを使用することができます。

【メモ】
X Window Systemは「X」や「X11」などと略して呼んでもよいことになっています。以下、X Window SystemをXと表記することにします。

Xを使用するには、準備編でのログイン方法の選択 で説明したように、ログイン方法としてX Window Systemを選択します。

Do you login with Console or X Window System?
[default: Console] -> x

Xが起動すると、以下のようなログイン画面が表示されますので、ユーザ名とパスワードを入力します。

xenodm-login.png

ログインに成功すると以下のような画面になります。

startx.png

画面左上の白いウィンドウは「端末エミュレータ」というもので、X上でシェルとのセッションなど、文字端末での作業を行うためのプログラムです。
右上には時計が表示されています。
左下にあるものは「xconsole」といい、システムのログ情報を表示するプログラムです。起動直後はこのプログラムはアイコン化されています。
右下の表のようなものは、「仮想デスクトップ」といい、複数のデスクトップ画面を切り替えて使用できるようにするものです。標準の設定では3列×3行=9面のデスクトップ画面を切り替えられます。

壁紙部分(Xでは、「ルートウィンドウ」と呼びます)でマウスの左ボタンを押すとメニューが表われます。このメニューからXのアプリを選択して実行できます。メニューにないものは端末エミュレータからコマンドを投入して実行することもできます。

以下の画面は、実際にアプリを実行してみた例です。

various-xclt.png

ルートウィンドウではマウスの中ボタンや右ボタンを押すことで、別のメニューが表示されます。

【メモ】
Xの操作は3ボタンマウスによる操作を想定して設計されています。 中ボタンのないマウスの場合は、左右のボタンを両方同時に押すか、あるいはホイールを押します。

Xを終了するには、マウスの左ボタンのメニュー中、「Exit」を選択し、さらに本当に終了するかを確認するウィンドウに対し「Exit」を選択します。

quit-verify-win.png

【メモ】
OpenBSDには、X Windowを使うためのソフトウェア(デスクトップ環境)が何種類か用意されており、また、日本語の表示や入力用のソフトウェアを追加することもできます。これについては応用編の 日本語デスクトップ環境を導入する で説明致します。

河豚板を終了する

河豚板の運用を終了するにはrootでログインし、shutdownコマンドを実行します。

fugu-demo# shutdown -h -p now
Shutdown NOW!
shutdown: [pid 4771]
fugu-demo#
*** FINAL System shutdown message from root@fugu-demo.localnet ***
System going down IMMEDIATELY



System shutdown time has arrived

fugu-demo# syncing disks... done

上の例では、shutdownコマンドへの指定として -h オプションを指定しているので、システムは停止(halt)します。 また、-p オプションを指定しているので停止直後に電源が自動的にOFF (power off)になります(PCによっては -p オプションによる電源OFFに対応していない機種もあります。この場合は手動で本体の電源をOFFにします)。

-h オプションや -p オプションの替わりに -r オプションを指定すると、システムは再起動(reboot)します。

システムの停止や再起動を行うと、今回の起動後に行った設定や作成したユーザアカウント、また、ファイルやディレクトリの作成や編集、削除などの一切の結果は消えてなくなります。

【メモ】
これら各種の設定やデータを保存・復帰させることもできます。この方法は 起動時に保存した設定やファイルを読み込む で説明します。

河豚板上で行った操作がシステムを停止すると消えてしまうということは、見方を変えると内蔵ハードディスクにインストールされている既存のシステムなどに影響を及ぼしにくいということでもあります。
つまり、rootでファイルの消去やプロセスの停止などを行ってもその影響は限定的なので、システム管理の練習などを安心して行うことができます。

設定やファイルを保存する - usbfadm syncコマンド

河豚板ではユーザが作成したファイル、設定の変更、追加されたパッケージ、システムのログなど一切のファイルをLiveUSB版の河豚板に作成されているデータ保存用パーティションに保存し、以降の起動時に呼び出すことができます。

データの保存にはrootでログインし、usbfadmコマンドを実行します。

【メモ】
usbfadmは(USB Flash drive ADMinistration tool)の略です。

# usbfadm
Welcome to usbfadm.
USB flash drive administration tool for FuguIta

  Version/Arch: 6.0/amd64  (FuguIta-6.0-amd64-201612291)
     Boot mode: manual
Data stored in: not set
 Data Saved as: not set

Type ? for help.

まず、targetコマンドを使用して保存先のパーティションを指定します。
保存用のデバイスが装着されていることを確認した後、ENTERを押下するとデバイスのスキャンが行われます。
デバイス名の前に+記号がついているものが、保存に使用することができるデバイスです。

? : ? --> target

Searching USB flash drives
Please make sure the device inserted.
Then press ENTER ->
cd0a sd0a +sd0d

targe device--> sd0d

次に、saveasコマンドを使用して保存するデータに名前を付けます。
名前を省略した場合、ホスト名が保存名として使用されます。

sd0d : ? --> saveas
Name of saved data --> fugu-demo

Your data will be saved as ``fugu-demo''.

当初「?:?」だったプロンプトの文字列が変化していることにご注目下さい。 今ほどのtargetコマンドとsaveasで設定した値がプロンプト内に表示され、確認ができるようになっています。

最後にsyncコマンドを実行し、データを実際に保存します。

 /dev/sd0d : fugu-demo -> sync

Sync current mfs as fugu-demo, OK? -> y

building file list ... done
created directory /mnt/livecd-config/fugu-demo
./
etc/
etc/bgpd.conf
etc/boot.conf
   :
   :
var/yp/Makefile.yp
var/yp/Makefile.yp.dist
var/yp/README

sent 16455591 bytes  received 232568 bytes  180412.53 bytes/sec
total size is 15492096  speedup is 0.93

infoコマンドで保存されたデータの情報を表示してみます。

/dev/sd0d : fugu-demo -> info

Filesystem     Size    Used   Avail Capacity  Mounted on
 /dev/sd0d     218M   18.9M    179M   9.6%    /mnt

scanning...

18.9M   6.0/amd64/fugu-demo

データは問題なく保存されているようなのでusbfadmを終了します。

/dev/sd0d : fugu-demo -> bye

#

【メモ】
usbfadmによる保存は、シェルのコマンドラインからも行うことができます。

# usbfadm -r

========================================
= Sync current mfs as fugu-demo into /dev/sd0d
=
sending incremental file list
deleting etc/X11/xenodm/authdir/authfiles/A:0-G4H73h
   :
var/spool/smtpd/purge/
var/spool/smtpd/temporary/
#

オプション -r は、usbfadmにファイル保存の再実行を指示します。

また、cronを使用してバックグラウンドで定期的に実行することもできます。

(crontabファイル)
# crontab file
#minute hour    mday    month   wday    command
  ~ 略 ~
#save session periodically
#0       */4     *       *       *       PATH=$PATH:/usr/local/bin /usr/fuguita/sbin/usbfadm -rq

これにより、usbfadmによる保存がバックグラウンドで4時間ごとに行われます。-q は進捗状況などを表示しない「quiet」オプションです。

【メモ】
usbfadmコマンドで作成したパーティションでなくとも、OpenBSDのFFS形式でフォーマットされていて、/livecd-configというディレクトリが作成されているパーティションであれば使用できます。

起動時に保存した設定やファイルを読み込む - 起動モード3

設定やファイルを保存する で説明した方法で保存されたデータは以降の起動時に読み込ませ、環境を復帰させることができます。
データを復帰させるには、起動モード3を選択します。

Boot modes:
  0: fresh boot - standard mode as a live system
  1: fresh boot - less memory, faster boot (/usr is non-writable, can't pkg_add)
  2: fresh boot - works using only RAM (about 1GB or more of RAM required)
  3: boot with retrieving saved files from storage device
     or enter passphrase for an encrypted volume
  4: boot with retrieving saved files from floppy disk
  5: interactive shell for debugging
->3
scanning partitions: sd0a sd0d sd0i cd0a
Device(s) found:
  loadable from: sd0d
Which is FuguIta's storage device? [default: sd0d] -> sd0d
/dev/sd0d : available data;

fugu-demo

config name -> fugu-demo
Copying files from flash to ram ... 

保存したデータ名を指定すると退避させていたデータを復帰し、起動が再開されます。
各種設定値もすべて復帰するため、最初に説明した起動モード0と違いネットワークの設定などは訊かれません。

ログイン後、さらにデータを保存することもできます。手順は 設定やファイルを保存する で説明した方法と同じですが、 すでにLiveUSB上にファイルが保存されているため、変更したファイルやディレクトリのみが対象となります。
そして、保存デバイス名と保存名はすでに設定済みなので、いきなりsyncコマンドを実行してもOKです。

シャットダウン時、データの退避は自動的には行われないので、その都度手動でusbfadmコマンドを実行する必要があります。 これを自動化したい場合は 終了時にデータが自動で保存されるようにする をご参照下さい。

使用法の習得

Unix系OSの使い方を調べる

本ガイドの冒頭で説明したように、河豚板はUnix系OSの一種である OpenBSD をベースにして作成されています。

Unixは約半世紀前の1969年に開発され、以降さまざまなコンピュータ向けの実装が作成されてきました。今ではUnix系のOSはスーパーコンピュータからスマートフォンや家電製品、あるいは小さな組込み機器までさまざまな環境で使用されるに至っています。

Unix系OSはMicrosoft WindowsなどのOSとは操作方法が大きくことなっており、最初はどのように使ってよいか見当がつかない方もいるかも知れません。

Unix系OSの基本的な部分はコンシューマユーザ向けに作られてはいません。OpenBSDも例外ではなく、予備知識を持たないユーザを想定した親切なユーザインターフェースなどは初期状態ではほとんど用意されていません。言い替えると「なんとなくあちこちいじっているうちに使い方がわかった」ということにはなりません。

そんなUnix系OSを理解し、活用するにはどのようなアプローチを取ればよいのでしょうか。

書籍を用意しましょう

Unix系OSに関する基本を解説している書籍を用意しましょう。
様々な実装が存在するUnix系OSですが、それらには Unix哲学 とも呼ばれる共通した考え方があります。この考え方を理解し、実践できるようになることがUnix系OSを習得する上でのキーになります。
書籍の内容としては特定の実装だけを対象とせず、基本的な概念から応用の入口までを網羅的・体系的に解説しているものがよいでしょう。

「これ一冊読めばすべてOK」というような書籍はなかなかないのですが、定評のあるものをいくつか挙げておきます;

  • はじめてUNIXで仕事をする人が読む本 / 木本雅彦 他 著 / KADOKAWA アスキーメディアワークス
  • 新 The Unix Super Text [上] / 山口和紀・古瀬一隆 著 / 技術評論社

以下のものは副読本として読むと、より理解が進むかもしれません;

  • Unixという考え方-その設計思想と哲学 / Mike Gancarz著 芳尾桂訳 / オーム社
  • Linuxを「読む」 / こじまみつひろ著 / 毎日コミュニケーションズ

オンラインマニュアルを活用しましょう

やはり自分で手を動かすことが、効果的なスキル習得の基本になります。
その際、やみくもにやってみるのではなく、システムに内蔵されているオンラインマニュアル(manコマンド)を活用しましょう。オンラインマニュアルは記述が、違う実装に基いて説明している、というような弱点はありません。

【メモ】
Unixのオンラインマニュアルは幾つかの章に別れています。
同じ名前の項目が複数の章にある場合があります。例えば「sleep」は、1章(一般コマンド)と3章(ライブラリ)の両方にあり、それぞれsleep(1)、sleep(3)の様に記述します。ですので、sleepコマンドのコマンドラインを知りたい場合は、

$ man 1 sleep

C言語でプログラミングをしていて、sleep関数の使い方を知りたい場合は、

$ man 3 sleep

として第3章にあるsleep関数の説明を表示します。

ですので、これ以降「ls(1)」のような表記が出てきますが、これは「"man 1 ls"を実行してオンラインマニュアルの1章にある"ls"の項を参照して下さい」という意味になります。

【メモ】
オンラインマニュアルのことをマニュアルページと呼ぶこともあります。意味は同じです。

オンラインマニュアルとは別に、Unixのコマンドの多くは自分自身の使用説明を表示する機能を持っています;

$ man
usage: man [-acfhklw] [-C file] [-I os=name] [-K encoding] [-M path] [-m path]
           [-O option=value] [-S subsection] [-s section] [-T output] [-W level]
           [section] name ...
$ cp -?
cp: unknown option -- ?
usage: cp [-fip] [-R [-H | -L | -P]] source target
       cp [-fip] [-R [-H | -L | -P]] source ... directory

上の例ではmanコマンドとcpコマンドのヘルプメッセージを表示させています。
このようにコマンドのヘルプメッセージは非常に簡素な説明なので、忘れてしまったコマンドラインオプションを思い出すため、といったような備忘録的な役割で使用されます。

ネットは「参考情報」として活用しましょう

インターネットを活用するとUnix系OSに関連する情報も、簡単に得ることができます。
しかし、前項で説明したような弱点もあります。特に検索エンジンでの検索結果については目の前の実機にもあてはまるかどうかは自分で判断する必要があります。検索サイトの結果は「参考情報」として活用するのがよいでしょう。
さらに、現在では多くのUnix系OSが開発コミュニティなどによる「公式サイト」を持っています。公式サイトの情報は一次情報として活用できます。

まとめ

以上述べたことを例えば「ファイルの属性」というトピックにあてはめて考えると、次のようになるでしょう;

河豚板は以上で述べたようなUnix系OSの習得にも向いています。つまり、インストール作業不要というライブシステムの特徴を活かし、ユーザが気軽に色々と試せる環境、失敗しても容易にやりなおせる環境を提供しています。

OpenBSDの使い方を調べる

前節の Unix の使い方を調べる ではUnix系OSの使用経験のあまりない人がUnix系OSの使い方を習得するためのヒントについて説明しましたが、この節ではOpenBSDを使う場合の情報源やそれらを活用する上でのポイントについて説明します。

導入

rootでログインすると、OpenBSDプロジェクト開発リーダーTheo de Raadt氏からのメールが届いています。

# mail
Mail version 8.1.2 01/15/2001.  Type ? for help.
"/var/mail/root": 1 message 1 new
>N  1 deraadt@do-not-re  Sun Oct 18 07:58   86/4565  Welcome to OpenBSD 5.8!
& more 1
Message 1:
From deraadt@do-not-reply.openbsd.org Sun Oct 18 07:58:58 MST 2015
Date: Oct 18 07:58:58 MST 2015
From: deraadt@do-not-reply.openbsd.org (Theo de Raadt)
To: root
Subject: Welcome to OpenBSD 5.8!

This message attempts to describe the most basic initial questions that a
system administrator of an OpenBSD box might have.  You are urged to save
this message for later reference.
....(以下略)....

このメールでは、OpenBSDをインストールした人が最初に持つと思われる疑問について説明しています。メール本文に書いてある情報源をたどってゆくことで、OpenBSDを使用する上での様々なノウハウを得ることができます。

以下このメールの内容と重複する部分もありますが、システム上の各種情報源について触れていきます。

システム内のドキュメント

Unixの使い方を調べる で述べたようにオンラインマニュアルはUnix系OSの最も基本的な情報源ですが、OpenBSDにおいても例外ではありません。
そのことはインストール直後のroot宛てメールにおいても、以下のように強調されています;

Again, PLEASE READ THE MANUAL PAGES.  Our developers have spent countless
hours improving them so that they are clear and precise.

マニュアルページには、特に導入のためのエントリも幾つか用意されています。

help
Unix初心者向けのエントリです。コマンドラインでhelpコマンドを実行した場合もこのエントリが表示されます。
man
manコマンドの説明です。OpenBSDではmandocというプログラムによってマニュアルページのシステムが再実装されていますが、manコマンドの使い方は他のUnix系OSとほぼ同じです。
afterboot
インストール直後にチェックを行ったほうがよい項目について解説しています。この文書の 入門編 より詳しく網羅的な内容ですので、ご一読をお勧めします。
intro
マニュアルページはカテゴリごとに章に別れていますが、その各章に関する説明です。例えば、
man 1 intro
とすると、一般コマンドカテゴリについての説明が、
man 5 intro
では、ファイル形式のカテゴリ全般についての説明が表示されます。

OpenBSDでは、マニュアルページの章立ては以下のようになっています;

1一般コマンド
2システムコールとエラー番号
3ライブラリ
4デバイスドライバ
5ファイル形式
6ゲーム
7その他
8システム保守・運用のためのコマンド
9カーネル

各セクションのマニュアルの内容は現状のシステムに追従し続けており、常にアップデートと推敲が行われています。
また他のUnix系OSでは4章(デバイスドライバ)などの章で、ほとんど情報が提供されていない実装系もありますが、OpenBSDではこのような情報も完備されており、例えばWi-Fiの設定のように使用するハードウェアに依存した設定情報が必要な場合も十分な情報を得ることができます。

【メモ】
OpenBSDに内蔵されているオンラインマニュアルはmanコマンドで読めますが、ウェブブラウザで man.openbsd.org にアクセスして読むこともできます。
河豚板ガイド内でもコマンドの説明中 ls(1) のようにリンクを張ってある部分はウェブのオンラインマニュアルを参照できます。

emacsinfo.png

GNUプロジェクト由来のコマンドやEmacs上で動作するアプリケーションに関しては、Info形式のドキュメントが提供されている場合があります。
Infoドキュメントを閲覧するには、infoコマンドを実行します。

【メモ】
Emacsエディタを追加インストールしている環境では、InfoドキュメントはEmacsエディタから、<Meta>-x info<Enter>、あるいは<Escape> x info<Enter>と入力し、閲覧することができます。

マニュアルページやInfo以外にもアプリケーション固有のドキュメントがあります。 それらは主に次に挙げるディレクトリの下にあります;

システム上のファイル

サーバやアプリケーションソフトなどの設定ファイルはすべて/etc以下に集約されています。
パッケージ管理ツールports/packagesで追加されたソフトウェアは、/usr/local以下にインストールされますが、設定ファイルに関しては/etc以下に配置されます。X関連の設定ファイルについても同様です。

システムの動作ログは、/var/log以下にあります。唯一、cronのみが/var/cron/logというログファイルを作成します。

起動時の設定 で説明した起動時に表示されるカーネルメッセージは、/var/run/dmesg.boot というファイルに記録されています。システム起動完了後はこのファイルの内容を閲覧することで、システム起動時の様子を調査することができます。

インターネット上の情報

http://www.openbsd.org/
プロジェクトによって運営されている公式サイト。OpenBSD全般に関する詳細なガイドシステムの更新情報 など、ウェブ上のOpenBSD関連情報の起点です。
http://undeadly.org/ 「OpenBSD Journal」
OpenBSD関連のニュースサイト。その都度OpenBSDの旬の話題が取り上げられ、OpenBSD開発の最前線の様子なども知ることができます。以前、河豚板の紹介記事 も投稿されました。
メーリングリスト
公式に管理・運営されているメーリングリスト があります。また、これらのアーカイブサイトもあり、メーリングリストに加入しなくてもウェブ上での閲覧が可能です。

書籍

作者の知る限り、OpenBSDユーザ向けに書かれた日本語の書籍は2023年現在出版されておりません。
BSD系のUnix向けの書籍の中には、

など、部分的にOpenBSDについて言及されている書籍もあります。

英語の書籍に関しては 公式サイトの記述 をご参照下さい。
Absolute OpenBSD, 2nd EditionThe book of PF, 3rd Editionなど、OpenBSD向けの書籍がいくつか出版されているようです。



Front page   New Page list Search Recent changes   Help   RSS of recent changes