将运行级别 2 更改为 5 时启动 FTP 服务器

将运行级别 2 更改为 5 时启动 FTP 服务器

我一直在寻找这个有一段时间了:

当我从运行级别 2 更改为运行级别 5 时,如何启动 fe proftpd?

当我返回到运行级别 2 时,服务应该再次停止。

因此 - 从运行级别 2 更改为 5 时启动 ftp-server - 更改回运行级别时停止 ftp-server

(旁注:ftp 服务器不允许在启动时启动,因此也不应更改)

我发现的最接近的东西是这样的:

# update-rc.d -n <service> start 2 . stop 2 .

当然,这是不正确的。有任何想法吗?

答案1

如果你看一下,man update-rc.d你可以看到一些例子。这可能是您想要的:

update-rc.d proftpd start 80 5 . stop 20 0 1 2 3 4 6 .

80 和 20 只是为了让 proftpd 比大多数其他服务启动得晚。

您可能需要先使用以下命令删除现有链接:update-rc.d -f proftpd remove


如果您有较新版本的操作系统,上述方法似乎可行,但不会考虑您的选择。相反,您需要编辑该 /etc/init.d/proftpd文件并将其中的标题更改为如下所示:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          proftpd
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     5
# Default-Stop:      0 1 2 3 4 6
# X-Interactive:     false
# Short-Description: proftpd
### END INIT INFO

update-rc.d proftpd defaults改为跑步。

这是因为稍后update-rc.d只需调用insserv即可完成工作,所有依赖项和启动/停止现在都会自动计算出来,并且您无法更改它们。

检查您是否有正确的链接ls -l /etc/rc*/*proftpd。例如输出:

lrwxrwxrwx 1 root root  /etc/rc0.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root  /etc/rc1.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root  /etc/rc2.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root  /etc/rc3.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root  /etc/rc4.d/K01proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root  /etc/rc5.d/S04proftpd -> ../init.d/proftpd
lrwxrwxrwx 1 root root  /etc/rc6.d/K01proftpd -> ../init.d/proftpd

相关内容