трансмиссионный демон изменяет конфигурационную папку при перезагрузке

534
snickerpop

Я не уверен, почему, но передача, кажется, изменяет мои настройки при перезагрузке. Папка, в которой хранятся настройки, - это / 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 

с кроной

который работает

Однако должен быть способ заставить мои изменения придерживаться без удара. Когда я положил в команду конфигурации. Я просто не знаю как

0

1 ответ на вопрос

1
Kamil Maciorowski

Эта команда

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 

Я склонен думать, что изменение конфигурационных файлов - это правильный подход в целом, каким он должен быть, что-то задуманное ; в то время как символическая ссылка может пойти как дешевый трюк . Этот трюк, однако, может быть очень мощным и надежным. Как вы можете видеть, это может компенсировать некоторые ограничения красиво простого синтаксиса конфигурации; или он может спасти вас от изучения какого-то ужасно сложного синтаксиса конфигурации, если вы когда-либо сталкивались с ним.

Спасибо за ваш ответ. Я думаю, что ваше первое предложение о том, как решить проблему, является лучшим. Я не совсем получил его на работу, но попробую еще раз. Использование Systemd до тех пор. snickerpop 5 лет назад 0