为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Linux中将Perl脚本作为系统守护程序运行?

如何在Linux中将Perl脚本作为系统守护程序运行?

料青山看我应如是 2019-12-13 10:26:56
使Perl脚本作为守护程序在Linux中运行的简单方法是什么?目前,这是在CentOS上。我希望它从系统启动,然后从系统关闭,因此一些/etc/rc.d/init.d集成也不错,但是我总是可以向添加一个自定义行/etc/rc.d/rc.local。
查看完整描述

3 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

如果您没有Chas建议的Proc :: Daemon。欧文斯,这是您手工制作的方法:


sub daemonize {

   use POSIX;

   POSIX::setsid or die "setsid: $!";

   my $pid = fork() // die $!; #//

   exit(0) if $pid;


   chdir "/";

   umask 0;

   for (0 .. (POSIX::sysconf (&POSIX::_SC_OPEN_MAX) || 1024))

      { POSIX::close $_ }

   open (STDIN, "</dev/null");

   open (STDOUT, ">/dev/null");

   open (STDERR, ">&STDOUT");

 }


查看完整回答
反对 回复 2019-12-13
?
大话西游666

TA贡献1817条经验 获得超14个赞

我认为最简单的方法是使用daemon。它允许您将任何进程作为守护程序运行。这意味着,例如,如果您决定更改为python,就不必担心库。要使用它,只需使用:


daemon myscript args

大多数发行版上都应该有此功能,但默认情况下可能未安装。


查看完整回答
反对 回复 2019-12-13
  • 3 回答
  • 0 关注
  • 452 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信