我有 Ubuntu 18.04
我在我的 Ubuntu 上安装了 bitcoinz 节点。通常我用这个命令启动它:
/home/user1/bitcoinz/src/bitcoinzd -datadir=/home/user1/bitcoinz/data > /dev/null 2> /dev/null &
我以 user1 身份启动它,而不是以 root 身份启动它。如何在服务器启动时添加启动这个守护进程?为此,我可以使用命令sudo update-rc.d xxx defaults
,但如何添加参数并以 user1 身份运行?
您可以使用 cron 启动命令。
crontab -e
以 user1 身份运行命令添加到最后:
检查 /home/user1/mydate 文件是否出现,你可以看到它的内容
~/scripts
文件夹:mkdir ~/scripts
将您的命令添加到
/home/user1/scripts/bitcoinz
脚本中:(vim.tiny ~/scripts/bitcoinz
点击i编辑)保存并退出(用于
vim.tiny
:ESC退出编辑模式,然后:wq
保存并退出)chmod +x ~/scripts/bitcoinz
crontab -e
并添加到最后:@reboot /home/user1/scripts/bitcoinz您可以在脚本内设置参数。您也可以
cron
使用 root 用户身份运行sudo crontab -e
,因此它可以在重新启动后以 root 身份启动。如您在标题中所说,要提供服务,请执行以下操作:
创建新的 systemd 服务:
粘贴到它旁边:
启用并启动新创建的服务:
以用户身份使用服务:
mkdir -p ~/.config/systemd/user
touch ~/.config/systemd/user/ubitcoinz.service
使用
--user
选项来处理它bitcoinz 命令的输出可以使用查看
journalctl -u ubitcoinz
不仅在用户登录时启动用户服务,而且在启动时启动:
检查状态:
loginctl user-status user1
参考