3 回答
TA贡献1846条经验 获得超7个赞
使用您的 init 进程提供的功能。您可能正在使用 Systemd 或 Upstart 运行系统。它们都有非常简单的服务描述,可以确保您的应用程序以正确的权限运行,在出现任何故障时重新启动,并且输出得到正确处理。
对于快速新贵描述看这里,您的服务描述可能只是:
start on runlevel [2345]
stop on runlevel [!2345]
setuid the_username_your_app_runs_as
exec /path/to/your/app --options
要快速了解Systemd 描述,请看这里,您的服务可能只是:
[Unit]
Description=Your service
[Service]
User=the_username_your_app_runs_as
ExecStart=/path/to/your/app --options
[Install]
WantedBy=multi-user.target
TA贡献1796条经验 获得超4个赞
您可能想在此处使用屏幕等虚拟终端实用程序。例子:
screen -S myapp # create screen with name myapp
cd ... # to your app directory
go run myapp.go # or go install and then ./myappfrom go bin dir
Ctrl-a+d # to go out of screen
如果要返回屏幕:
screen -r myapp
编辑:当您离开终端时,此解决方案将保留该过程,但在崩溃时不会重新启动它。
- 3 回答
- 0 关注
- 260 浏览
添加回答
举报