transmission-daemon 在重启时更改配置文件夹

transmission-daemon 在重启时更改配置文件夹

我不知道为什么,但 transmission 似乎在重启时更改了我的设置。保存设置的文件夹是 /etc/transmission-daemon。

我运行命令

sudo service transmission-daemon stop
then

sudo transmission-daemon --config-dir /folder/I/want

sudo service transmission-daemon start

但是,重新启动时它会切换到 etc 文件夹,我必须再次执行命令。

我现在的解决方案是一个 bash 脚本

sudo service transmission-daemon stop

sleep 4s

sudo transmission-daemon --config-dir /root/.config/transmission-daemon

使用 cron

有效

但是应该有办法让我的更改不通过 bash 生效。当我输入 config 命令时。我只是不确定如何

答案1

此命令

sudo transmission-daemon --config-dir /folder/I/want

不会改变任何永久配置。它会运行transmission-daemon,并且只有此实例使用您指定的目录。请注意,该程序将自身置于后台,因此sudo service transmission-daemon start在之后运行似乎有些多余。

虽然文档说这$HOME/.config/transmission-daemon是守护进程设置的默认位置,它还说:

一些 Linux 发行版的启动脚本transmission-daemon使用不同的位置。

在 Ubuntu 中/etc/default/transmission-daemon是永久修改的正确位置--config-dir。根据您的要求定制的相关行是:

CONFIG_DIR="/folder/I/want"
OPTIONS="--config-dir $CONFIG_DIR"

注意:语法简单明了;如果路径包含空格,我预计它会失败。要使用任何有效路径(带有空格等),可以以某种方式修复它(必须使用/etc/init.d/transmission-daemon或如此),但这会违反KISS 原则。您可以简单地执行我下面介绍的一个技巧。


另一种永久方法是将默认配置路径设为指向所需实际位置的符号链接:

sudo mv /etc/transmission-daemon/ /etc/transmission-daemon.old/
sudo ln -s "/folder/I/want" /etc/transmission-daemon

我倾向于认为修改配置文件是正确的方法一般来说,按照它本来的样子, 某物通过设计;而符号链接可能会作为把戏。但是,这个技巧非常强大且万无一失。正如您所见,它可以弥补精美简单的配置语法的一些局限性;或者,如果您遇到一些非常复杂的配置语法,它可以帮您免于学习。

答案2

只需进行所需的更改/etc/传输守护进程但首先停止守护进程……

  1. sudo systemctl stop transmission-daemon.service
  2. 做出改变
  3. sudo systemctl 启动 transmission-daemon.service

这对我有用。我一注意到这一点就差点疯了。:D

相关内容