Init.d启动脚本不适用于No-IP
我刚刚在全新的Ubuntu 12.04安装上安装了No-IP。 当我从CLI启动它时,程序启动正常,但如果我尝试使这个启动脚本工作,它将无法启动。
我从他们的安装说明中得到了这个脚本:
#! /bin/sh # . /etc/rc.d/init.d/functions # uncomment/modify for your killproc case "$1" in start) echo "Starting noip2." /usr/local/bin/noip2 ;; stop) echo -n "Shutting down noip2." killall -TERM /usr/local/bin/noip2 ;; *) echo "Usage: $0 {start|stop}" exit 1 esac exit 0
CL是正确的,因为如果我运行/usr/local/bin/noip2
它会启动。 但脚本本身不会启动它。
那里有什么问题? 该脚本是可执行的:
-rwxrwxrwx 1 root root 299 Jan 12 13:28 noip*
编辑
如果我尝试Init.d脚本它也有效:
sudo /etc/init.d/noip start
它顺利启动,没有任何障碍。
你应该运行它(如果你还没有这样做):
sudo update-rc.d noip2 defaults
这很容易,我在root crontab中创建了一行:
@reboot /usr/local/bin/noip2
当我打开电源或重启我的机器时,守护程序会自动启动
除了:
sudo update-rc.d noip2 defaults
你还应该设置权限:
chmod 755 /etc/init.d/noip
然后你应该能够开始和停止。 在Ubuntu 14.04 LTS上测试
遵循以下指示:
如何在Ubuntu 12.04 LTS上安装No-ip2以便在动态IP地址上托管服务器
我不得不添加上面的行,但用root作为用户,现在它对我来说很好。
@reboot root /usr/local/bin/noip2
编辑crontab
sudo nano /etc/crontab
你是否从任何/etc/rc?.d目录中链接到/etc/init.d脚本? 我有
/etc/rc0.d/K10no-ip.com -> ../init.d/no-ip.com.sh* /etc/rc1.d/K10no-ip.com -> ../init.d/no-ip.com.sh* /etc/rc2.d/S90no-ip.com -> ../init.d/no-ip.com.sh* /etc/rc3.d/S90no-ip.com -> ../init.d/no-ip.com.sh* /etc/rc4.d/S90no-ip.com -> ../init.d/no-ip.com.sh* /etc/rc5.d/S90no-ip.com -> ../init.d/no-ip.com.sh* /etc/rc6.d/K10no-ip.com -> ../init.d/no-ip.com.sh*