我正在尝试将init.d
脚本从 centos 6.6 服务器迁移到 ubuntu 14.04。 Centos 机器start, status, stop
命令是,
daemon --pidfile=/path/to/pidfile /path/to/daemon/script
status -p /path/to/pidfile /path/to/daemon/script
killproc -p /path/to/pidfile /path/to/daemon/script
start
命令以其原始形式在 ubuntu 14.04 上运行良好,但其他两个函数status, killproc
在 ubuntu 发行版上未定义。
这些命令在 ubuntu 机器中相当于什么?
答案1
在我的 Ubuntu 系统上,killproc
由/lib/lsb/init-functions
.
http://refspecs.linuxbase.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptfunc.html
你有没有尝试过把
. /lib/lsb/init-functions
靠近你的初始化脚本的顶部?
$ dpkg -S /lib/lsb/init-functions
lsb-base: /lib/lsb/init-functions
$ dpkg -S /sbin/status
upstart: /sbin/status
$ apt-cache show lsb-base
Package: lsb-base
Priority: required
答案2
。 /lib/lsb/init 函数
添加这条线对我有用。谢谢:)
stop)
echo -n "Shutting down noip2."
. /lib/lsb/init-functions
killproc -TERM /usr/local/bin/noip2