我在跑跟踪在 Synology DS209+II NAS 上。为此,我创建了一个/opt/etc/init.d
名为的脚本S81trac
:
myserver> ls -l /opt/etc/init.d
-rwxr-xr-x 1 root root 127 May 19 09:56 S80apache
-rwxr-xr-x 1 root root 122 Jun 10 10:17 S81trac
该文件有以下内容:
#!/bin/sh
# run tracd
/opt/bin/tracd -p 8888 -auth=*,/volume1/svn/svn-auth-file,mydomain -e /volume1/trac-env
这确实有效,但 NAS 从未真正完成启动:蓝灯一直闪烁。而且,它reboot
不再起作用(它挂了),我必须使用它killall init
来重新启动机器。
我尝试过tracd
在后台运行,方法是将其附加&
到 的最后一行S81trac
。重启后,蓝灯停止闪烁。但是ps | grep tracd
是空的,我无法从我的电脑连接到 trac 实例。
我猜我在这里做错了什么,但是是什么呢?
答案1
不要使用&
来将其置于背景中,而要使用--daemonize
(或更短的形式-d
)。我认为这应该可以解决您的问题。 (您可能还想考虑使用--pidfile=...
。 tracd --help
也值得一读。)
披露:我是 Trac 开发人员之一。