named 自動起動

その他の確認

歓迎猫 歓迎猫

自動起動について named (bind) の 自動起動を行うためにまず設定の部分を見る。 起動関連は /etc/rc.d の所に plamo linux は 存在するようであるから 移動して 探してみる。

nyan:~# cd /etc/rc.d/
nyan:/etc/rc.d# cat rc.S | grep named
nyan:/etc/rc.d# cat rc.inet1 | grep named
nyan:/etc/rc.d# cat rc.inet2 | grep named
# if [ -f ${NET}/named ]; then
#   echo -n " named"
#   ${NET}/named

これらから rc.inet2 で 何か処理されているようだ

nyan:/etc/rc.d# cat -n rc.inet2 | grep named
    54  # if [ -f ${NET}/named ]; then
    55  #   echo -n " named"
    56  #   ${NET}/named
nyan:/etc/rc.d# wc -l rc.inet2
    131 rc.inet2
nyan:/etc/rc.d# bc 
bc 1.04
Copyright (C) 1991, 1992, 1993, 1994, 1997 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
131-54
77
nyan:/etc/rc.d# tail -78 rc.inet2 | head -5
# if [ -f ${NET}/named ]; then
#   echo -n " named"
#   ${NET}/named
# fi
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:/etc/rc.d# tail -80 rc.inet2 | head -7

# # Start the NAMED/BIND name server.
# if [ -f ${NET}/named ]; then
#   echo -n " named"
#   ${NET}/named
# fi

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:/etc/rc.d# cat -n rc.inet2 | grep NET=
    13  NET="/usr/sbin"
~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:/etc/rc.d# tail -121 rc.inet2 | head -5

# Constants.
NET="/usr/sbin"
IN_SERV="lpd"
LPSPOOL="/var/spool/lpd"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

これらから /usr/sbin に named が あるかもしれない、調査

nyan:/etc/rc.d# ls -l /usr/sbin/ | grep named

なんの返事も無いということは無いのであろう。

nyan:/etc/rc.d# find / -name named 
/var/run/named
/var/named
/usr/local/sbin/named
/usr/local/src/bind-9.2.3/bin/named
/usr/local/src/bind-9.2.3/bin/named/include/named
/usr/local/src/bind-9.2.3/bin/named/unix/include/named
/usr/local/src/bind-9.2.3/bin/named/win32/include/named
/usr/local/src/bind-9.2.3/bin/named/named
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

これらから named は /usr/local/sbin/named に 存在するが/usr/sbin/には無い したがって /usr/sbin/ に named を 作ってやれば良い ln -s で リンクを作成しよう

mm@nyan:~/a_inst$ man ln
(抜粋)
名前
       ln - ファイルへのリンクを作成する

書式
       ln [オプション] source [dest]
       ln [オプション] source... directory

       POSIX オプション: [-f]

       GNU  オプション (簡略形式): [-bdfinsvF] [-S backup-suffix]
       [-V {numbered,existing,simple}] [--help] [--version] [--]
       -s, --symbolic
              ハ ー ド リンクの代わりにシンボリックリンクを作成す
              る。シンボリックリンクをサポートしないシス テ ム で
              は、 このオプションを指定すると単にエラーメッセージ
              を出力する。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

てなわけであるので、

nyan:/etc/rc.d# ls -l /usr/local/ | grep named
nyan:/etc/rc.d# ln -s /usr/local/sbin/named /usr/sbin/named
nyan:/etc/rc.d# ls -l /usr/sbin/ | grep named
lrwxrwxrwx    1 root  root 21 Sep  2 07:59 named -> /usr/local/sbin/named*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

次は rc.inte2 を 変更 しよう、変更した後で

nyan:/etc/rc.d# cd /etc/rc.d/
nyan:/etc/rc.d# mv rc.inet2 001_rc.inet2_org
nyan:/etc/rc.d# diff -s rc.inet2 001_rc.inet2_org 
53,58c53,58
< # # Start the NAMED/BIND name server.2004年 9月 2日 (木) 08:08:57 JST
<  if [ -f ${NET}/named ]; then
<    echo -n " named"
<    ${NET}/named
<  fi
< # 本行含めて 上部 6行 変更 # マーク削除 named 自動起動
---
> # # Start the NAMED/BIND name server.
> # if [ -f ${NET}/named ]; then
> #   echo -n " named"
> #   ${NET}/named
> # fi
> 

変更内容は 上記のようにした。 再起動で named (bind) の 起動を 確認する。

nyan:/etc/rc.d# shutdown -r now
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:~# cat -n /var/log/messages | grep named
    26  Sep  2 08:18:04 nyan named[60]: starting BIND 9.2.3
    28  Sep  2 08:18:04 nyan named[60]: using 1 CPU
    39  Sep  2 08:18:05 nyan named[60]: loading configuration \
	from '/etc/named.conf'
    41  Sep  2 08:18:05 nyan named[60]: no IPv6 interfaces found
    43  Sep  2 08:18:05 nyan named[60]: listening on IPv4 \
	interface lo, 127.0.0.1#53
    45  Sep  2 08:18:05 nyan named[60]: listening on \
	IPv4 interface eth0, 192.168.0.5#53
    52  Sep  2 08:18:05 nyan named[60]: command channel \
	listening on 127.0.0.1#953
    56  Sep  2 08:18:06 nyan named[60]: \
	zone 0.0.127.in-addr.arpa/IN: loaded serial 20030121
    58  Sep  2 08:18:06 nyan named[60]: \
	zone 0.168.192.in-addr.arpa/IN: loaded serial 20030121
    66  Sep  2 08:18:06 nyan named[60]: \
	zone bcnet.ne.jp/IN: loaded serial 20030121
    68  Sep  2 08:18:06 nyan named[60]: \
	zone localhost/IN: loaded serial 20030121
    70  Sep  2 08:18:06 nyan named[60]: running
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:~# cat  /var/log/messages | grep named
Sep  2 08:18:04 nyan named[60]: starting BIND 9.2.3
Sep  2 08:18:04 nyan named[60]: using 1 CPU
Sep  2 08:18:05 nyan named[60]: loading configuration from '/etc/named.conf'
Sep  2 08:18:05 nyan named[60]: no IPv6 interfaces found
Sep  2 08:18:05 nyan named[60]: listening on IPv4 interface lo, 127.0.0.1#53
Sep  2 08:18:05 nyan named[60]: listening on \
IPv4 interface eth0, 192.168.0.5#53
Sep  2 08:18:05 nyan named[60]: command channel listening on 127.0.0.1#953
Sep  2 08:18:06 nyan named[60]: zone 0.0.127.in-addr.arpa/IN: \
loaded serial 20030121
Sep  2 08:18:06 nyan named[60]: zone 0.168.192.in-addr.arpa/IN: \
loaded serial 20030121
Sep  2 08:18:06 nyan named[60]: zone bcnet.ne.jp/IN: loaded serial 20030121
Sep  2 08:18:06 nyan named[60]: zone localhost/IN: loaded serial 20030121
Sep  2 08:18:06 nyan named[60]: running
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

無事起動しているようだ

nyan:~# ps ax | grep named
   60 ?        S      0:00 /usr/sbin/named
  277 pts/0    S      0:00 grep named
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:~# cd /var/
nyan:/var# chown -R named.named named/

せっかくだから オーナーと グループを 変更した

nyan:/var/named# cd /var/run/
nyan:/var/run# chown -R named.named named/

せっかくだから オーナーと グループを 変更 (トラブルの開始)再度起動確認

nyan:/var/run# shutdown -r now
nyan:~# cat /var/log/messages | grep named
Sep  2 08:30:15 nyan named[60]: starting BIND 9.2.3
Sep  2 08:30:15 nyan named[60]: using 1 CPU
Sep  2 08:30:16 nyan named[60]: loading configuration from '/etc/named.conf'
Sep  2 08:30:16 nyan named[60]: no IPv6 interfaces found
Sep  2 08:30:16 nyan named[60]: listening on IPv4 interface lo, 127.0.0.1#53
Sep  2 08:30:16 nyan named[60]: listening on \
IPv4 interface eth0, 192.168.0.5#53
Sep  2 08:30:16 nyan named[60]: command channel listening on 127.0.0.1#953
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

何か変??

nyan:~# cat /var/log/syslog 
Sep  2 08:30:17 nyan named[60]: couldn't open pid file \
'/var/run/named/named.pid': File exists
Sep  2 08:30:17 nyan named[60]: exiting (due to early fatal error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ファイルがある?!開けない、なぜだ?? どうも pid file を named にしたのが 祟ってるようだ元の root に戻そう

nyan:~# cd /var/run/
nyan:/var/run# chown root -R named/

再度起動確認

nyan:/var/run# shutdown -r now
nyan:~# cat  /var/log/messages | grep named
Sep  2 08:42:43 nyan named[60]: starting BIND 9.2.3
Sep  2 08:42:43 nyan named[60]: using 1 CPU
Sep  2 08:42:44 nyan named[60]: loading configuration from '/etc/named.conf'
Sep  2 08:42:44 nyan named[60]: no IPv6 interfaces found
Sep  2 08:42:44 nyan named[60]: listening on IPv4 interface lo, 127.0.0.1#53
Sep  2 08:42:44 nyan named[60]: listening on \
IPv4 interface eth0, 192.168.0.5#53
Sep  2 08:42:44 nyan named[60]: command channel listening on 127.0.0.1#953
Sep  2 08:42:45 nyan named[60]: zone 0.0.127.in-addr.arpa/IN: \
loaded serial 20030121
Sep  2 08:42:45 nyan named[60]: zone 0.168.192.in-addr.arpa/IN: \
loaded serial 20030121
Sep  2 08:42:45 nyan named[60]: zone bcnet.ne.jp/IN: loaded serial 20030121
Sep  2 08:42:45 nyan named[60]: zone localhost/IN: loaded serial 20030121
Sep  2 08:42:45 nyan named[60]: running
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ほっ!!! なんとなくすっきりしないよーーーー 元の /var/run/named 以下を named.named にして pid ファイルを 変更して

nyan:~# ls -l /var/run/ | grep named
drwxr-xr-x    2 named    named        4096 Sep  2 09:08 named/
nyan:~# ls -l /var/run/named/ | grep named
-rw-r--r--    1 named    named           3 Sep  2 08:42 tt_named.pid

再起動を かけると

nyan:~# cat /var/log/syslog 
Sep  2 09:12:38 nyan named[60]: couldn't open pid file\
 '/var/run/named/named.pid': Permission denied
Sep  2 09:12:39 nyan named[60]: exiting (due to early fatal error)

おなじみの ネットワークで 議論されている状態になる。これは /var/run が root 権限を持たないので不可能対策として /var/run を named.named にするなんぞいわれてるが /var/run 以下に named.pid 以外のファイルもあるのでこれはあまり納得できないむしろ /var/run/ の named 以下を root にする方が わかりやい セキュリテイは別として chroot で named (bind)を 動かすまでは root に 変更しておく最善とはいわないが、ここで touch 云々で pid ファイルを作成したが 今回の再起動で作成してない場合どうなるか?併せて見てみよう。

nyan:/var/run# pwd
/var/run
nyan:/var/run# ls -l | grep named/
drwxr-xr-x    2 named    named        4096 Sep  2 09:08 named/
nyan:/var/run# chown -R root named/
nyan:/var/run# rm named/tt_named.pid 
nyan:/var/run# ls -al named/
total 8
drwxr-xr-x    2 root     named        4096 Sep  2 09:28 ./
drwxr-xr-x    3 root     root         4096 Sep  2 09:12 ../
nyan:/var/run# ls -l | grep named/
drwxr-xr-x    2 root     named        4096 Sep  2 09:28 named/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:/var/run# shutdown -r now
nyan:~# cat /var/log/messages | grep named
Sep  2 09:33:52 nyan named[60]: starting BIND 9.2.3
Sep  2 09:33:52 nyan named[60]: using 1 CPU
Sep  2 09:33:53 nyan named[60]: loading configuration from '/etc/named.conf'
Sep  2 09:33:53 nyan named[60]: no IPv6 interfaces found
Sep  2 09:33:53 nyan named[60]: listening on IPv4 interface lo, 127.0.0.1#53
Sep  2 09:33:53 nyan named[60]: listening on IPv4 interface eth0, \
192.168.0.5#53
Sep  2 09:33:53 nyan named[60]: command channel listening on 127.0.0.1#953
Sep  2 09:33:54 nyan named[60]: zone 0.0.127.in-addr.arpa/IN: \
loaded serial 20030121
Sep  2 09:33:54 nyan named[60]: zone 0.168.192.in-addr.arpa/IN: \
loaded serial 20030121
Sep  2 09:33:54 nyan named[60]: zone bcnet.ne.jp/IN: loaded serial 20030121
Sep  2 09:33:54 nyan named[60]: zone localhost/IN: loaded serial 20030121
Sep  2 09:33:54 nyan named[60]: running
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nyan:~# cat /var/run/named/named.pid 
60
~~~~~~~~~~~~~~~~~~~~~~
nyan:~# ps ax | grep named
   60 ?        S      0:00 /usr/sbin/named
  222 pts/0    S      0:00 grep named
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

とりあえずこれでゆこう、後、 named.conf とかで 独立の 場所を指定する方法も 考えられるが、それをするなら chroot


前へ
前へ
次へ
次へ
戻
り猫
bind9.2.3
Copyright © 2004.-2007. nyantarou All Rights Reserved.