こんにちは、けんずふぁみりーです。 FreeBSD 8.1-RELEASE apache22+proftpd+bind 一部の機種で再起動時にproftpdが起動できないので いろいろ切り分けをして見ましたら。 /etc/rc.d/named の冒頭に sleep 1 として起動のタイミングをずらすと問題が無くなりました いったいどんな理由からでしょうか? もっとスマートな解決策はありますか?
通常の設定でproftpdがこけるときのログ hostname# tail /var/log/messages Nov 15 09:31:34 hostname kernel: uhub4: 8 ports with 8 removable, self powered Nov 15 09:31:34 hostname kernel: Trying to mount root from ufs:/dev/ar0s1a Nov 15 09:31:35 hostname named[682]: starting BIND 9.6.2-P2 -t /var/named -u bind Nov 15 09:31:35 hostname named[682]: built with '--prefix=/usr' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--enable-threads' '--disable-ipv6' '--enable-getifaddrs' '--disable-linux-caps' '--with-openssl=/usr' '--with-randomdev=/dev/random' '--without-idn' '--without-libxml2' Nov 15 09:31:35 hostname named[682]: command channel listening on 127.0.0.1#953 Nov 15 09:31:35 hostname named[682]: command channel listening on ::1#953 Nov 15 09:31:35 hostname ntpd[874]: ntpd 4.2.4p5-a (1) Nov 15 09:31:36 hostname kernel: rl0: link state changed to UP Nov 15 09:31:36 hostname root: /etc/rc: WARNING: failed to start proftpd Nov 15 09:31:36 hostname kernel: re0: link state changed to UP /etc/rc.d/named + sleep 1 で回避した場合のログ hostname# tail /var/log/messages Nov 15 09:37:29 hostname kernel: uhub4: 8 ports with 8 removable, self powered Nov 15 09:37:29 hostname kernel: Trying to mount root from ufs:/dev/ar0s1a Nov 15 09:37:31 hostname kernel: rl0: link state changed to UP Nov 15 09:37:31 hostname kernel: re0: link state changed to UP Nov 15 09:37:31 hostname named[698]: starting BIND 9.6.2-P2 -t /var/named -u bind Nov 15 09:37:31 hostname named[698]: built with '--prefix=/usr' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--enable-threads' '--disable-ipv6' '--enable-getifaddrs' '--disable-linux-caps' '--with-openssl=/usr' '--with-randomdev=/dev/random' '--without-idn' '--without-libxml2' Nov 15 09:37:31 hostname named[698]: command channel listening on 127.0.0.1#953 Nov 15 09:37:31 hostname named[698]: command channel listening on ::1#953 Nov 15 09:37:31 hostname ntpd[890]: ntpd 4.2.4p5-a (1) Nov 15 09:37:32 hostname proftpd[948]: hostname.example.net - ProFTPD 1.3.3a (maint) (built Thu Jul 8 2010 14:00:33 UTC) standalone mode STARTUP またこの問題は沢山設定してあるsleveのゾーンの内特定のひとつだけを削除す ると回避出来ます。そのゾーンを設定したままでもmastaからゾーンをもらって いない状態のとき(初めてbindを立ち上げる時)は問題がおきません。 全く同じ設定を別のマシンでも再現しましたが問題はおきませんでした。 その別のマシンの正常なログ kenji# tail -f /var/log/messages Nov 15 09:24:23 kenji named[682]: starting BIND 9.6.2-P2 -t /var/named -u bind Nov 15 09:24:23 kenji named[682]: built with '--prefix=/usr' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--enable-threads' '--disable-ipv6' '--enable-getifaddrs' '--disable-linux-caps' '--with-openssl=/usr' '--with-randomdev=/dev/random' '--without-idn' '--without-libxml2' Nov 15 09:24:23 kenji named[682]: command channel listening on 127.0.0.1#953 Nov 15 09:24:23 kenji named[682]: command channel listening on ::1#953 Nov 15 09:24:24 kenji ntpd[874]: ntpd 4.2.4p5-a (1) Nov 15 09:24:24 kenji proftpd[933]: kenji.example.net - ProFTPD 1.3.3a (maint) (built Thu Jul 8 2010 14:00:33 UTC) standalone mode STARTUP Nov 15 09:24:24 kenji kernel: re0: link state changed to UP Nov 15 09:24:24 kenji kernel: re1: link state changed to UP 以下はどちらも共通の設定項目です # cat /etc/rc.conf defaultrouter="125.***.***.130" hostname="hostname.example.net" ifconfig_re0="inet 192.168.0.13* netmask 255.255.255.0" ifconfig_rl0="inet 125.***.***.13* netmask 255.255.255.192" static_routes="vpn" route_vpn="-net 192.168.2.0/24 192.168.0.1" keymap="jp.106" sshd_enable="YES" inetd_enable="YES" ntpd_enable="YES" ntpd_sync_on_start="YES" apache22_enable="YES" apache22_http_accept_enable="YES" snmpd_enable="YES" mysql_enable="YES" sendmail_enable="NONE" svscan_enable="YES" courier_authdaemond_enable="YES" courier_imap_imapd_enable="YES" courier_imap_imapd_ssl_enable="YES" proftpd_enable="YES" named_enable="YES" # cat /etc/resolv.conf domain example.net nameserver 210.196.3.183 nameserver 210.141.112.163 # cat /etc/namedb/named.conf acl localnet { 127.0.0.1; 192.168.0.0/16; }; acl groupnet { 125.***.***.128/26; 210.141.108.248; }; options { directory "/etc/namedb/working"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; statistics-file "/var/stats/named.stats"; recursion no; allow-transfer { localnet;groupnet; }; disable-empty-zone "255.255.255.255.IN-ADDR.ARPA"; disable-empty-zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA"; disable-empty-zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA"; }; logging { channel "default-log" { file "/var/log/default.log" versions 3 size 5M; severity debug; print-time yes; print-severity yes; print-category yes; }; channel "xfer-in-log" { file "/var/log/xfer-in.log" versions 3 size 5M; severity debug; print-time yes; print-severity yes; print-category yes; }; channel "xfer-out-log" { file "/var/log/xfer-out.log" versions 3 size 5M; severity debug; print-time yes; print-severity yes; print-category yes; }; channel "queries-log" { file "/var/log/queries.log" versions 3 size 5M; severity info; print-time yes; print-severity yes; print-category yes; }; category default { "default-log"; }; category queries { "queries-log"; }; category xfer-in { "xfer-in-log"; }; category xfer-out { "xfer-out-log"; }; category lame-servers { null; }; }; zone "." { type hint; file "/etc/namedb/named.root"; }; zone "localhost" { type master; file "/etc/namedb/master/localhost-forward.db"; }; zone "127.in-addr.arpa" { type master; file "/etc/namedb/master/localhost-reverse.db"; }; zone "255.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "0.ip6.arpa" { type master; file "/etc/namedb/master/localhost-reverse.db"; }; zone "0.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "10.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "16.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "17.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "18.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "19.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "20.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "21.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "22.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "23.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "24.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "25.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "26.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "27.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "28.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "29.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "30.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "31.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "168.192.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "254.169.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "2.0.192.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "100.51.198.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "113.0.203.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "test" { type master; file "/etc/namedb/master/empty.db"; }; zone "example" { type master; file "/etc/namedb/master/empty.db"; }; zone "invalid" { type master; file "/etc/namedb/master/empty.db"; }; zone "example.com" { type master; file "/etc/namedb/master/empty.db"; }; zone "example.net" { type master; file "/etc/namedb/master/empty.db"; }; zone "example.org" { type master; file "/etc/namedb/master/empty.db"; }; zone "18.198.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "19.198.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "240.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "241.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "242.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "243.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "244.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "245.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "246.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "247.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "248.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "249.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "250.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "251.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "252.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "253.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "254.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "1.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "3.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "4.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "5.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "6.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "7.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "8.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "9.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "a.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "b.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "c.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "d.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "e.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "0.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "1.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "2.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "3.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "4.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "5.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "6.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "7.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "8.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "9.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "a.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "b.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "0.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "1.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "2.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "3.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "4.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "5.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "6.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "7.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "c.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "d.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "8.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "9.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "a.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "b.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "c.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "d.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "e.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "f.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "ip6.int" { type master; file "/etc/namedb/master/empty.db"; }; zone "128h.***.***.125.IN-ADDR.ARPA" { type slave; file "/etc/namedb/slave/example.net.rev"; masters { 125.***.***.130; }; }; zone "example.net" { type slave; file "/etc/namedb/slave/example.net.zone"; masters { 125.***.***.130; }; }; zone "[問題のある].net" { type slave; file "/etc/namedb/slave/[問題のある].net.zone"; masters { 125.***.***.130; }; }; 以下省略 -- けんずふぁみりー <ke...@kens.fm>