#author("2023-02-06T20:23:21+09:00","default:kaw","kaw") #navi(河豚板ガイド) この章ではシステムが起動完了し、実際に使用する時の基本的な手順について説明します。 また、Unix系OSになじみのない人、そして他のUnix系OSを使用経験がある人が参照すると役に立つ情報源をそれぞれ紹介します。 #contents #aname(firstlogin) *初めてのログイン [#cb54daf8] **rootでログイン [#j9dcb23b] 河豚板の起動が完了すると、OpenBSDオペレーティングシステムのログイン画面が表示されます。~ 最初はスーパーユーザのアカウントのみがログインできる状態ですので「login:」のプロンプトに対し ''root''、「Password:」のプロンプトに対し起動時に設定したパスワードを入力します。 OpenBSD/amd64 (fugu-demo.localnet) (tty00) login: root Password: OpenBSD 6.7-stable (RDROOT.MP) #1: Fri Jun 5 09:41:45 JST 2020 Welcome to OpenBSD: The proactively secure Unix-like operating system. Please use the sendbug(1) utility to report bugs in the system. Before reporting a bug, please try to reproduce it with the latest version of the code. With bug reports, please try to ensure that enough information to reproduce the problem is enclosed, and if a known fix for it exists, include that as well. You have new mail. 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は、現在どのようなプログラム(プロセス)が動いているかを表示するコマンドです。~ システムが起動直後、しかも画面表示上動きのない様子であっても内部ではすでに沢山のプロセスが起動されていることがわかります。 ログアウトするにはシェルのプロンプト「#」が出ているときに <Control>-D を押すか、「exit」と入力します。 >''【メモ】''~ ''⇒''<Control>-Dは「<Control>キーを押したままの状態でアルファベットの「D」キーも押す」という意味です。<Control>-Dはまた、「^D」と表記されることもあります。 # exit OpenBSD/amd64 (fugu-demo.localnet) (tty00) login: ログアウトすると「login:」が表示され、再度ログインできる状態になります。 ***一般ユーザの登録 [#g69bab25] 起動直後の河豚板は、スーパユーザ(システム管理者)用のアカウントrootでのみログインできます。 Unix系のOSでは、通常は一般ユーザとしてログインし、日常の利用を行います。~ システム管理の時には一般ユーザから一時的にスーパユーザになるか、あるいは一般ユーザからログアウトした後、スーパユーザとしてログインし直して管理作業を行います。 >&color(red){''【ご注意】''};~ &color(red){''!!''スーパユーザでログイン中はシステムを動作不能にしてしまうような操作を容易に実行できてしまいます。勿論、故意にではない誤操作の場合も例外ではありません。このようなリスクを防ぐため、一般ユーザのアカウントを作成し、通常はそのアカウントで使用することを''強くお勧め''します。}; 以下、一般ユーザとして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 OpenBSD: The proactively secure Unix-like operating system. Please use the sendbug(1) utility to report bugs in the system. Before reporting a bug, please try to reproduce it with the latest version of the code. With bug reports, please try to ensure that enough information to reproduce the problem is enclosed, and if a known fix for it exists, include that as well. 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でログインしたときのシェルのプロンプトは「#」になりますが、一般ユーザの場合は「$」となります。~ 以降の例示箇所でもこの表記に従います。~ ''⇒''OpenBSDではrootアカウントでのSSHによるログインは許可されていません。SSHによるリモートログインを行ないたい場合も一般ユーザのアカウントを作成しておく必要があります。 **X Window Systemを起動してみる。 [#x82da9c0] OpenBSDはX Window Systemというグラフィック環境を含んだ形で出荷されており、河豚板もこのX Window Systemを使用することができます。 >''【メモ】''~ ''⇒''X Window Systemは「X」や「X11」などと略して呼んでもよいことになっています。以下、X Window SystemをXと表記することにします。 Xを使用するには、[[ログイン方法の選択>#a5fdbf53]] で説明したように、ログイン方法としてX Window Systemを選択します。 Do you login with Console or X Window System? [default: Console] -> x Xが起動すると、以下のようなログイン画面が表示されますので、ユーザ名とパスワードを入力します。 #ref(河豚板ガイド/xenodm-login.png,,50%) ログインに成功すると以下のような画面になります。 #ref(河豚板ガイド/startx.png) 画面左上の白いウィンドウは「端末エミュレータ」というもので、X上でシェルとのセッションなど、文字端末での作業を行うためのプログラムです。~ 右上には時計が表示されています。~ 左下にあるものは「xconsole」といい、システムのログ情報を表示するプログラムです。起動直後はこのプログラムはアイコン化されています。~ 右下の表のようなものは、「仮想デスクトップ」といい、複数のデスクトップ画面を切り替えて使用できるようにするものです。標準の設定では3列×3行=9面のデスクトップ画面を切り替えられます。 壁紙部分(Xでは、「ルートウィンドウ」と呼びます)でマウスの左ボタンを押すとメニューが表われます。このメニューからXのアプリを選択して実行できます。メニューにないものは端末エミュレータからコマンドを投入して実行することもできます。 以下の画面は、実際にアプリを実行してみた例です。 #ref(河豚板ガイド/various-xclt.png,wrap) ルートウィンドウではマウスの中ボタンや右ボタンを押すことで、別のメニューが表示されます。 >''【メモ】''~ ''⇒''Xの操作は3ボタンマウスによる操作を想定して設計されています。 中ボタンのないマウスの場合は、左右のボタンを両方同時に押すか、あるいはホイールを押します。 Xを終了するには、マウスの左ボタンのメニュー中、「Exit」を選択し、さらに本当に終了するかを確認するウィンドウに対し「Exit」を選択します。 #ref(河豚板ガイド/quit-verify-win.png,wrap) >''【メモ】''~ ''⇒''OpenBSDには、X Windowを使うためのソフトウェア(デスクトップ環境)が何種類か用意されており、また、日本語の表示や入力用のソフトウェアを追加することもできます。これについては応用編の [[X Window Systemに日本語デスクトップ環境を導入する>#r41dd079]] で説明致します。 **河豚板を終了する [#lcb9f9a0] 河豚板の運用を終了するには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)します。~ システムの停止や再起動を行うと、今回の起動後に行った設定や作成したユーザアカウント、また、ファイルやディレクトリの作成や編集、削除などの一切の結果は消えてなくなります。 >''【メモ】''~ ''⇒''これら各種の設定やデータを保存・復帰させることもできます。この方法は [[保存した設定やファイルを起動時に読み込む>#w4595c42]] で説明します。 河豚板上で行った操作がシステムを停止すると消えてしまうということは、見方を変えると内蔵ハードディスクにインストールされている既存のシステムなどに影響を及ぼしにくいということでもあります。~ つまり、rootでファイルの消去やプロセスの停止などを行ってもその影響は限定的なので、システム管理の練習などを安心して行うことができます。 #aname(usbfadm_sync) **設定やファイルを保存する - usbfadm syncコマンド [#x66d25f8] 河豚板ではユーザが作成したファイル、設定の変更、追加されたパッケージ、システムのログなど一切のファイルを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というディレクトリが作成されているパーティションであれば使用できます。 #aname(boot_mode3) **保存した設定やファイルを起動時に読み込む - 起動モード3 [#p11aec5c] [[設定やファイルを保存する>#k57e4ba1]] で説明した方法で保存されたデータは以降の起動時に読み込ませ、環境を復帰させることができます。~ データを復帰させるには、ブートモード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と違いネットワークの設定などは訊かれません。 ログイン後、さらにデータを保存することもできます。手順は [[設定やファイルを保存する>#k57e4ba1]] で説明した方法と同じですが、 すでにLiveUSB上にファイルが保存されているため、変更したファイルやディレクトリのみが対象となります。~ そして、保存デバイス名と保存名はすでに設定済みなので、いきなりsyncコマンドを実行してもOKです。 シャットダウン時、データの退避は自動的には行われないので、その都度手動でusbfadmコマンドを実行する必要があります。 これを自動化したい場合は [[終了時にデータが自動で保存されるようにする>#m8ee7943]] をご参照下さい。 *使用法の習得 [#r70ef50e] #aname(useunix) ** Unix系OSの使い方を調べる [#h19a6ead] 本ガイドの冒頭で説明したように、河豚板はUnix系OSの一種である OpenBSD をベースにして作成されています。 Unixは約半世紀前の1969年に開発され、以降さまざまなコンピュータ向けの実装が作成されてきました。今ではUnix系のOSはスーパーコンピュータからスマートフォンや家電製品、あるいは小さな組込み機器までさまざまな環境で使用されるに至っています。 Unix系OSはMicrosoft WindowsなどのOSとは操作方法が大きくことなっており、最初はどのように使ってよいか見当がつかない方もいるかも知れません。 Unix系OSの基本的な部分はコンシューマユーザ向けに作られてはいません。OpenBSDも例外ではなく、予備知識を持たないユーザを想定した親切なユーザインターフェースなどは初期状態ではほとんど用意されていません。言い替えると''「なんとなくあちこちいじっているうちに使い方がわかった」ということにはなりません。'' そんなUnix系OSを理解し、活用するにはどのようなアプローチを取ればよいのでしょうか。 ***書籍を用意しましょう [#u17669c8] >Unix系OSに関する基本を解説している書籍を用意しましょう。~ 様々な実装が存在するUnix系OSですが、それらには[[Unix哲学>https://ja.wikipedia.org/wiki/UNIX%E5%93%B2%E5%AD%A6]]とも呼ばれる共通した考え方があります。この考え方を理解し、実践できるようになることがUnix系OSを習得する上でのキーになります。~ 書籍の内容としては特定の実装だけを対象とせず、基本的な概念から応用の入口までを網羅的・体系的に解説しているものがよいでしょう。~ >「これ一冊読めばすべてOK」というような書籍はなかなかないのですが、定評のあるものをいくつか挙げておきます; -はじめてUNIXで仕事をする人が読む本 / 木本雅彦 他 著 / KADOKAWA アスキーメディアワークス -新 The Unix Super Text [上] / 山口和紀・古瀬一隆 著 / 技術評論社 >以下のものは副読本として読むと、より理解が進むかもしれません; -Unixという考え方-その設計思想と哲学 / Mike Gancarz著 芳尾桂訳 / オーム社 -Linuxを「読む」 / こじまみつひろ著 / 毎日コミュニケーションズ ***とにかく自分でやってみましょう&br;オンライン・マニュアルを活用しましょう [#w1893733] >やはり自分で手を動かすことが、効果的なスキル習得の基本になります。~ その際、やみくもにやってみるのではなく、オンラインマニュアル(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が開発コミュニティなどによる「公式サイト」を持っています。公式サイトの情報は一次情報として活用できます。~ ***まとめ [#m2783069] 以上述べたことを例えば「ファイルの属性」というトピックにあてはめて考えると、次のようになるでしょう; -書籍で基礎事項を押さえる ~ →ファイルのオーナ・グループ・パーミッションとは何か、どのようなコマンドで操作するかを調べる。 -オンラインマニュアル等で確認しながら実際に操作 ~ →実際にchown, chgrp, chmodコマンドなどを実行し、結果を確認してみる。どのようなコマンドラインオプションがあるかなどをmanコマンドで調べる。 -ネットで関連情報・参考情報をゲット~ →ネットの検索などで注意点、はまりやすい点、色々な応用法などを調べてみる。~ →公式サイトで関連情報を調べる ... 仕様の変更やセキュリティホール情報がないか、など。 河豚板は以上で述べたようなUnix系OSの習得にも向いています。つまり、インストール作業不要というライブシステムの特徴を活かし、ユーザが気軽に色々と試せる環境、失敗しても容易にやりなおせる環境を提供しています。 #aname(useopenbsd) **OpenBSDの使い方を調べる [#g576b58f] 前節の [[Unix の使い方を調べる>#qd261f24]] では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を使用する上での様々なノウハウを得ることができます。 以下このメールの内容と重複する部分もありますが、システム上の各種情報源について触れていきます。 ***オンラインドキュメント [#v2da204b] [[Unixの使い方を調べる>#qd261f24]]で述べたようにマニュアルページは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|インストール直後にチェックを行ったほうがよい項目について解説しています。この文書の [[河豚板を使う【一般編】>#v7ad37bc]] より詳しく網羅的な内容ですので、ご一読をお勧めします。 :intro|マニュアルページはカテゴリごとに章に別れていますが、その各章に関する説明です。例えば、 man 1 intro とすると、一般コマンドカテゴリについての説明が、 man 5 intro では、ファイル形式のカテゴリ全般についての説明が表示されます。 OpenBSDでは、マニュアルページの章立ては以下のようになっています; |1 |一般コマンド | |2 |システムコールとエラー番号 | |3 |ライブラリ | |4 |デバイスドライバ | |5 |ファイル形式 | |6 |ゲーム | |7 |その他 | |8 |システム保守・運用のためのコマンド | |9 |カーネル | 各セクションのマニュアルの内容は現状のシステムに追従し続けており、常にアップデートと推敲が行われています。~ また他のUnix系OSでは4章(デバイスドライバ)などの章で、ほとんど情報が提供されていない実装系もありますが、OpenBSDではこのような情報も完備されており、例えばWi-Fiの設定のように使用するハードウェアに依存した設定情報が必要な場合も十分な情報を得ることができます。 ///|TO BE REVISED| #ref(河豚板ガイド/emacsinfo.png,around,right) GNUプロジェクト由来のコマンドやEmacs上で動作するアプリケーションに関しては、Info形式のドキュメントが提供されている場合があります。~ Infoドキュメントを閲覧するには、infoコマンドを実行します。 >''【メモ】''~ ''⇒''Emacsエディタを追加インストールしている環境では、InfoドキュメントはEmacsエディタから、''<Meta>-x info<Enter>''、あるいは''<Escape> x info<Enter>''と入力し、閲覧することができます。 #clear マニュアルページやInfo以外にもアプリケーション固有のドキュメントがあります。 それらは主に次に挙げるディレクトリの下にあります; -/usr/share/doc -/usr/X11R6/share/doc -/usr/local/share/doc -/usr/local/share/gtk-doc ***システム上のファイル [#sd8aa942] サーバやアプリケーションソフトなどの設定ファイルはすべて/etc以下に集約されています。~ パッケージ管理ツールports/packagesで追加されたソフトウェアは、/usr/local以下にインストールされますが、設定ファイルに関しては/etc以下に配置されます。X関連の設定ファイルについても同様です。 システムの動作ログは、/var/log以下にあります。唯一、cronのみが/var/cron/logというログファイルを作成します。 [[河豚板を起動する>#i322b9ad]] で説明した起動時に表示されるカーネルメッセージは、/var/run/dmesg.boot というファイルに記録されています。システム起動完了後はこのファイルの内容を閲覧することで、システム起動時の様子を調査することができます。 ***インターネット上の情報 :http://www.openbsd.org/|プロジェクトによって運営されている公式サイト。[[OpenBSD全般に関する詳細なガイド>http://www.openbsd.org/faq/index.html]]や[[システムの更新情報>http://www.openbsd.org/errata59.html]]など、ウェブ上のOpenBSD関連情報の起点です。 :http://undeadly.org/ 「OpenBSD Journal」|OpenBSD関連のニュースサイト。その都度OpenBSDの旬の話題が取り上げられ、OpenBSD開発の最前線の様子なども知ることができます。以前、[[河豚板の紹介記事>http://undeadly.org/cgi?action=article&sid=20131210093950]]も投稿されました。 :メーリングリスト|[[公式に管理・運営されているメーリングリスト>http://www.openbsd.org/mail.html]]があります。また、これらのアーカイブサイトもあり、メーリングリストに加入しなくてもウェブ上での閲覧が可能です。 ***書籍 [#y291b608] 作者の知る限り、OpenBSDユーザ向けに書かれた日本語の書籍は2015年現在出版されておりません。~ BSD系のUnix向けの書籍の中には、 -BSD HACKS ~ プロが使うテクニック&ツール100選 / Dru Lavigne著,桃井康成監修,林秀幸訳 / オライリー・ジャパン など、部分的にOpenBSDについて言及されている書籍もあります。 英語の書籍に関しては[[公式サイトの記述>http://www.openbsd.org/books.html]]をご参照下さい。~ '''Absolute OpenBSD, 2nd Edition''' や '''The book of PF, 3rd Edition'''など、OpenBSD向けの書籍がいくつか出版されているようです。 #navi(河豚板ガイド)