Der Übertragungs-Daemon ändert den Konfigurationsordner beim Neustart

643
snickerpop

Ich weiß nicht warum, aber die Übertragung scheint meine Einstellungen beim Neustart zu ändern. Der Ordner, in dem die Einstellungen gespeichert werden, ist / etc / transmission-daemon.

Ich führe den Befehl aus

sudo service transmission-daemon stop then  sudo transmission-daemon --config-dir /folder/I/want  sudo service transmission-daemon start 

Beim Neustart wird jedoch in den Ordner etc gewechselt, und ich muss die Befehle erneut ausführen.

Meine Lösung ist jetzt ein Bash-Skript, das funktioniert

sudo service transmission-daemon stop  sleep 4s  sudo transmission-daemon --config-dir /root/.config/transmission-daemon 

mit einem cron

was funktioniert

Es sollte jedoch möglich sein, meine Änderungen ohne Bash zu erhalten. Wenn ich den config-Befehl eingebe. Ich bin nur nicht sicher wie

0

1 Antwort auf die Frage

1
Kamil Maciorowski

Dieser Befehl

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

ändert keine permanente Konfiguration. Es wird ausgeführt transmission-daemonund nur diese Instanz verwendet das von Ihnen angegebene Verzeichnis. Beachten Sie, dass sich das Programm im Hintergrund befindet, sodass es übermäßig zu laufen scheint sudo service transmission-daemon start.

Obwohl die Dokumentation sagt, dass $HOME/.config/transmission-daemonder Standard - Speicherort für Daemon Einstellungen ist, sagt es auch:

Startskript einiger Linux-Distributionen zur transmission-daemonVerwendung eines anderen Speicherorts.

In Ubuntu /etc/default/transmission-daemonist der richtige Ort, um --config-dirdauerhaft zu ändern . Relevante, auf Ihre Anfrage zugeschnittene Zeilen sind:

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

Hinweis: Die Syntax ist einfach und unkompliziert. Ich erwarte, dass es fehlschlägt, wenn der Pfad Leerzeichen enthält. Um einen gültigen Pfad (mit Leerzeichen usw.) zu verwenden, kann man ihn irgendwie festlegen (obligatorisch mit /etc/init.d/transmission-daemonoder so), dies wäre jedoch gegen das KISS-Prinzip . Sie können einfach einen Trick ausführen, den ich unten präsentiere.


Ein alternativer permanenter Ansatz besteht darin, aus Ihrem Standard-Konfigurationspfad einen Symlink zum gewünschten tatsächlichen Speicherort zu machen:

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

Ich neige dazu zu denken, dass das Ändern von Config-Dateien im Allgemeinen der richtige Ansatz ist, so wie es sein soll, etwas vom Design her ; Ein Symlink kann dabei als billiger Trick gelten . Dieser Trick kann jedoch sehr leistungsfähig und narrensicher sein. Wie Sie sehen, kann es einige Einschränkungen der einfachsten Konfigurationssyntax kompensieren. oder es kann Sie davon abhalten, eine sehr komplizierte Konfigurationssyntax zu lernen, falls Sie jemals eine finden.

Vielen Dank für Ihre Antwort. Ich denke, Ihr erster Vorschlag, wie Sie das Problem beheben können, ist am besten. Ich habe es nicht ganz zum Laufen gebracht, werde es aber noch einmal versuchen. Bis dahin mit Systemd. snickerpop vor 5 Jahren 0