2012年5月16日水曜日

proftp: 起動時にエラー

rebootしたときにftpがつながらなかったので気になっていたのですが、システムログに
May 16 20:56:22 mzkw04nu user.info sysinit:  - Fatal: error processing configuration file '/etc/proftpd.conf'
とエラーと表示されていました。

/etc/init.d/proftp start

として起動するので細かい点は気にしていませんでしたが、rebootで起動しないのは問題があるので少し調べてみましょう。

まず原因がわからないのでとりあえず openwrt proftp で検索してみると
OpenWrt / proftpd not work
で、「DefaultAddress  127.0.0.1」を追加すれば良いということなので/etc/proftpd.confに追加して再起動してみました。
May 16 21:06:20 mzkw04nu user.info sysinit: udhcpc: ifconfig wlan0 *.*.*.* netmask *.*.*.* broadcast +
May 16 21:06:21 mzkw04nu user.info sysinit:  - setting default address to 127.0.0.1
May 16 21:06:21 mzkw04nu user.info sysinit: udhcpc: setting default routers: *.*.*.*
May 16 21:06:21 mzkw04nu daemon.notice proftpd[1295]: localhost. - ProFTPD 1.3.3e (maint) (built Mon Nov 14 2011 19:08:02 CET) standalone mode STARTUP
May 16 21:06:21 mzkw04nu user.info sysinit: udhcpc: setting dns servers: *.*.*.*
確かに起動するようにはなりました。
が、気になるのはデフォルトアドレスをローカルとする理由はおそらく実行時にゲートウェイがあるネットワークのIPアドレスが確定していないということなので、単純に起動順序の調整で話は終わりそうです。

追加したDefaultAddressをコメントにして、/etc/init.d/proftpdのSTARTを50からntpdと同じ65に下げてみます。
その後 /etc/rc.dのリンクを再作成するためにluciのスタートアップから(/etc/init.dの変更を行うと無効になっていますがS50proftpdのリンクは存在したままです。)有効に変更します。
それから再起動。
May 16 22:00:24 mzkw04nu daemon.notice proftpd[1479]: mzkw04nu.lan - ProFTPD 1.3.3e (maint) (built Mon Nov 14 2011 19:08:02 CET) standalone mode STARTUP
問題なく起動しました。
解決方法としてデフォルトアドレスをconfに追加するか、udhcpcが起動したあと起動すればよいということでしょうね。

0 件のコメント:

コメントを投稿