いくつかのUNIXに共通する基本的な設定方法をまとめたものです。
UNIXには実に様々な種類があり、流派もたくさんあります。以下の記述はい くつかのUNIXに共通するTipsですが、すべてのUNIXに当てはまるとは限りま せん。適用範囲が限定できるものについては、項目名の後ろに注釈を入れて あります。
hostnameコマンドでホスト名を変更する。以下の例はホスト名をmyhostに 設定する。
# hostname myhost
mountコマンドで一覧を表示する。
% mount
また、各ファイルシステムの容量や利用率はdfコマンドで表示する。
% df -k
ファイルシステムのマウントにはmountコマンドを用いる。以下の例はデバ イス/dev/hda1をマウントポイント/mntにマウントする。
# mount /dev/hda1 /mnt
デバイスファイル名はシステムによって異なる。また、システムに登録さ れている(例えば/etc/fstabに記述されている)ファイルシステムについて は、デバイスファイル名は省略できる。
関連: ファイルシステム情報を登録する - /etc/fstab /etc/vfstab
ファイルシステムのアンマウントにはumountコマンドを用いる。以下の例 は/mntをアンマウントする。
# umount /mnt
/etc/fstabにファイルシステムを登録することで、起動時に自動的にマウ ントさせるなどの指示を与えることができる。以下に例を示す。
# Device Mountpoint FStype Options Dump Pass# /dev/wd0s1a / ufs rw 1 1 /dev/wd0s1b none swap sw 0 0 /dev/wd0s1e /var ufs rw 1 2 /dev/wd0s1f /home ufs rw 1 2
1行に1つのファイルシステムを記述する。各行は空白区切りで6つのフィー ルドを持つ: 先頭から順に、デバイスファイル名、マウントポイント、ファ イルシステムタイプ、マウントオプション、dump頻度、fsckの順序を表す。
値の詳細はOSによって異なる場合があるので、詳しくはそれぞれのOSに関 するTipsを参照されたい。
/etc/vfstabにファイルシステムを登録することで、起動時に自動的にマウ ントさせるなどの指示を与えることができる。以下に例を示す。
#device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # /dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0 / ufs 1 yes - /dev/dsk/c0t0d0s1 - - swap - no - /dev/dsk/c0t0d0s6 /dev/rdsk/c0t0d0s6 /usr ufs 1 yes - /dev/dsk/c0t0d0s5 /dev/rdsk/c0t0d0s5 /opt ufs 2 yes - /proc - /proc proc - yes - swap - /tmp tmpfs - yes -
1行に1つのファイルシステムを記述する。各行は空白区切りで7つのフィー ルドを持つ: 先頭から順に、mountに使用するデバイスファイル名、fsckに 使用するデバイスファイル名、マウントポイント、ファイルシステムタイ プ、fsckの順序、起動時にマウントするか否か、マウントオプションを表 す。
値の詳細はOSによって異なるので、詳しくはそれぞれのOSに関するTipsを 参照されたい。
システムクラッシュなどでファイルシステムが正常にアンマウントされな かった場合は、fsckコマンドでファイルシステムを修復する。以下の例は /dev/hda1のファイルシステムを修復する。-yオプションは、修復作業過程 でのすべての質問にyesで答えることを指示する。
# fsck -y /dev/hda1
対象となるファイルシステムはアンマウントしておくこと(read-onlyなら マウントしたままでもよい)。なお、登録済のファイルシステムなら、デバ イスファイル名ではなくマウントポイント名で指定してもよい。
ネットワークインタフェースに対する操作や設定表示にはifconfigコマン ドを用いる。
% ifconfig -a
ifconfigコマンドでネットワークインタフェースに対する設定を行う。以 下の例では、eth0というネットワークインタフェースに対し、IPアドレス 192.168.1.1、ブロードキャストアドレス192.168.1.255、ネットマスク 255.255.255.0を設定する。
# ifconfig eth0 192.168.1.1 broadcast 192.168.1.255 netmask 255.255.255.0
netstat -rコマンドでルーティングテーブルを表示する。-nオプションは、 IPアドレスをホスト名に変換しないことを指示する。
% netstat -rn
routeコマンドで経路情報を追加する。
# route add default 192.168.1.254
Linuxでは少々構文が異なる: 以下のようにすること。
# route add default gw 192.168.1.254
routeコマンドで経路情報を追加する。以下の例では、宛先が 192.168.2.0/24 であるパケットの経路を 192.168.1.254 に設定する。
# route add 192.168.2.0/24 192.168.1.254
Linuxでは少々構文が異なる: 以下のようにすること。
# route add 192.168.2.0/24 gw 192.168.1.254
routeコマンドで経路情報を削除する。以下の例では、宛先が 192.168.2.0/24、経路が 192.168.1.254 であるエントリを削除する。
# route delete 192.168.2.0/24 192.168.1.254
Linuxでは少々構文が異なる: 以下のようにすること。
# route del 192.168.2.0/24 gw 192.168.1.254
pingやtracerouteコマンドで、"遠くのノード"までの経路を確 認する。ホスト名を解決できない場合はIPアドレスで指定すること。
% ping www.google.com % traceroute www.google.com
うまくいかない場合は、tracerouteの結果から障害箇所を特定する。隣接 ノードまで到達できないなら、ifconfig -a、arp -an、netstat -rn など で設定を確認する。
/etc/nsswitch.confのhostsエントリでホスト名の解決順序を設定する。以 下はまずローカルファイル、次にDNSを使用する設定である。
hosts: files dns
/etc/hostsにIPアドレスとホスト名の対応を列挙する。
127.0.0.1 localhost 192.168.1.1 myhost.mydomain
DNSなどの環境が整備されているなら、/etc/hostsに多くを記述するべきで はない: おそらくlocalhost以外は不要である。
DNSによるホスト名解決方法は、/etc/resolv.confに設定する。以下の例は、 ドメイン名をnet.local、プライマリDNSサーバを192.168.1.1、セカンダリ DNSサーバを192.168.1.2に設定する。
search net.local nameserver 192.168.1.1 nameserver 192.168.1.2
通常のエディタで/etc/groupを編集し、グループを追加する。1行に1グルー プ、各行はコロン区切りの4フィールドで構成されている。以下に各行の形 式を示す。
<group_name>:<password>:<gid>:<user_list>
| <group_name>: | グループ名 |
| <password>: | パスワード (使用されない: * や x にする) |
| <gid>: | グループID |
| <user_list>: | 所属ユーザリスト (不要なら空でよい) |
vipwコマンドでエントリを追加する。1行に1ユーザ、各行はコロン区切り の7フィールドで構成されている。以下に各行の形式を示す。
<account>:<password>:<uid>:<gid>:<gecos>:<directory>:<shell>
| <account>: | ユーザ名 |
| <password>: | 暗号化されたパスワード |
| <uid>: | ユーザID |
| <gid>: | グループID |
| <gecos>: | 付加情報。ユーザのフルネームなど |
| <directory>: | ホームディレクトリ |
| <shell>: | ログインシェル |
シャドウパスワードを用いるシステムでは、<password>フィールド には意味のある情報は格納しない。* や x を指定する。
続いてホームディレクトリの作成と各種設定ファイルの作成を行う。また、 環境に応じてメールやWWWサービスのための設定なども行わなければならな い。
一連の作業が終わったら、最後に パスワードを設定してアカウントを使用 可能にする。
passwdコマンドでパスワードを設定する、または変更する。
# passwd <account>
vipwコマンドで当該ユーザの情報を変更できる。
多くのシステムではユーザ情報変更のためのコマンドを用意している: 可 能な限りそちらを用いた方がよい。
vipwコマンドで当該ユーザの情報を削除する。この他に、ホームディレク トリの削除、/tmp内のファイルの削除、稼働中のプロセスの停止、cronエ ントリの消去、そのユーザに与えていた付加サービスの停止などが必要で ある。
通常のエディタで/etc/groupを編集し、グループを削除する。この他に、 当該グループ所属のファイルの削除、稼働中のプロセスの停止などが必要 である。