我正在进行全新安装。
安装后我只安装了 Transmission。(transmission-cli transmission-common transmission-daemon
)
/var/lib/transmission-daemon/downloads
然后我在以下名称下创建了一个名为的文件script.sh
:
echo "Test" > test.txt
我已更改文件的所有权并使其可执行:
$ sudo chown debian-transmission script.sh
$ sudo chgrp debian-transmission script.sh
$ sudo chmod 775 script.sh
$ sudo a+x script.sh
在此之后,我修改了我的 setting.json 以便它执行脚本:
"script-torrent-done-enabled": true,
"script-torrent-done-filename": "/var/lib/transmission-daemon/downloads/script.sh",
然而,在我将 torrent 添加到 Web 界面后,下载完成后它并没有启动脚本。
我为此苦苦挣扎了两天,却一无所知。我也无法打开日志记录。
任何想法都非常感谢!
答案1
问题是我必须在脚本中为输出文件指定完整路径:
echo "Test" > /var/lib/transmission-daemon/downloads/test.txt
答案2
我知道这是一篇较旧的帖子,但我遇到了同样的问题。这是使用 Synology NAS 时遇到的,但我记得几年前遇到过类似的问题。虽然解决方案听起来很愚蠢,但它确实有效,首先,创建一个简单的 shell 脚本,将 cd 到脚本所在的目录,然后调用要运行的实际脚本。不确定这是否是传输问题。当我之前在 pi 上运行它时,我更改了权限,因此服务以我的身份运行,并将所有配置文件放在我的主目录中。无论哪种方式,只要所有权限都很好,下面的操作应该可以在零权限更改的情况下工作。
cd /volume1/share/scripts ./runthis.sh
然后在 runthis.sh 中,运行你真正想要运行的内容。由于我通过 Synology web gui 添加了挂载的共享,所以我知道权限没问题。此外,你可能已经运行了 chmod u+x runthis.sh,对 launch.sh 脚本也做了同样的操作。这就是我始终运行以使 shell 脚本可执行的操作,但 a+x 可能会做同样的事情