我有一个 perl 脚本,我需要在启动时使用我的用户帐户下的参数运行一次。
所以当我启动系统时,它需要执行这样的命令,
./path/to/script.pl start
有任何想法吗?
我有一个 perl 脚本,我需要在启动时使用我的用户帐户下的参数运行一次。
所以当我启动系统时,它需要执行这样的命令,
./path/to/script.pl start
有任何想法吗?
您可以在 crontab 中使用一行(crontab -e)
在启动时运行命令:
编辑 /etc/crontab 添加以下行:
@reboot root perl ./path/to/script.pl start
^^^ 以 root 身份运行。将“root”更改为“BlackCow”以作为 BlackCow 运行
或者,您可以使用 upstart(将 .conf 文件添加到 /etc/init/)。这是我笔记的复制和粘贴:
使用 upstart 在重新启动/启动时运行守护程序
例如 /etc/init/prestocab.conf:
#!upstart
description "node.js server"
author "BlackCow"
start on (local-filesystems and net-device-up IFACE=eth0)
stop on shutdown
script
export HOME="/root"
exec sudo -u root /usr/local/bin/node /home/prestocab/prestocab.com/www/socket.io/server.js 2>&1 >> /var/log/prestocab.log
end script
要使用:
start prestocab
stop prestocab
restart prestocab
# 如果守护进程崩溃,你可能想要使用某种进程监视器来重新启动它
取决于init
您使用的是什么,如果您的 Ubuntu 版本使用的是新贵
您必须配置适当的 Upstart 启动脚本,如果不是rc
基于您的runlevel
. 检查update-rc.d
。
在 Ubuntu 上,最简单的方法是将此行添加到您的/etc/rc.local
文件中(在该exit 0
行之前,username
用您自己的用户名替换):
su -c "./path/to/script.pl start" username &