该脚本依赖于/bin/bash
存在于监狱内。您可以将脚本更改为使用/bin/sh
、更改/bin/bash
为/usr/bin/env bash
或链接/path/to/port/bin/bash
到
/usr/local/bin/bash
(或bash
相对于 jail 目录的任何位置,但如果它存在,它应该在 中/usr/local/bin
)。
ln -s /usr/local/bin/bash /path/to/jail/bin/bash
此外,根目录(默认情况下)只能由 写入root
,因此用户transmission
无权在根目录中创建日志文件。要正确允许创建日志文件,请将目标目录更改为
用户有权写入的目录。例如
,如果使用 FreeNAS 插件。可以使用安装实用程序为用户
创建一个目录:transmission
/var/db/transmission/posttorrent.log
transmission
install -d -o transmission -g transmission /home/transmission
或者,可以使用安装实用程序手动创建日志文件
,或者可以使用 chown 设置所有者:
install -o transmission -g transmission -m 644 /dev/null /posttorrent.log
# or on an existing log file
chown transmission /posttorrent.log
chgrp transmission /posttorrent.log
# normally the mode bits will already be 644
chmod 644 /posttorrent.log
传输退出时也会重写配置文件。因此transmission-daemon
必须在编辑设置文件之前停止。但是,如果使用传输插件,设置将存储在 SQLite 数据库
( /usr/pbi/transmission-amd64/transmissionUI/transmission.db
)
中,并且设置文件将在启动时从数据库中重新创建。 sqlite3
可用于手动编辑数据库,也可以在 FreeNAS Web UI 上编辑插件的设置。
sqlite3 /usr/pbi/transmission-amd64/transmissionUI/transmission.db <<EOF
UPDATE freenas_transmission SET enable=1;
UPDATE freenas_transmission SET script_post_torrent="/posttorrent.sh";