systemd: Evolve Or Die

Ask for help and report issues not specific to either the Mac OS X or GTK+ versions of Transmission
Post Reply
killemov
Posts: 573
Joined: Sat Jul 31, 2010 5:04 pm

systemd: Evolve Or Die

Post by killemov »

This is the philosophy of most major Linux distributions. They switched to systemd as the default service framework making /etc/init.d scripts useless. So if you are very attached to your init scripts you almost have no way to upgrade. Sure you can rely on backporting and other workarounds for a little while longer but soon you'll run out of options.

The systemd (systemd-vs-sysVinit-cheatsheet.pdf) way of doing things is at it's core way better, especially structured, than sysvinit (/etc/init.d scripts ) but it still has some issues to work out. Therefore I believe most distributions made the move just a little too soon.

Major pros:
  • Dependency resolving between services..
Major cons
  • Loss of flexibility through scripting.
I recently upgraded my Debian machine (Qnap TS119, Kirkwood, 512MB, armel) from Wheezy to Jessie. And i upgraded from both Lenny and Squeeze a long time before that. The process was usually very non-interesting (read non-problematic) until that upgrade to Jessie including systemd. During the upgrade process a lot of configuration files were reset upon request but the upgrade finished without any catastrophic errors. After the first reboot it turned out that Transmission was going to be one of those problematic cases: It would not run after the upgrade.

Thing I encountered on my journey:
  • A lot of existing torrents (5000+!) needed to be reparsed and have their resume files recreated.
  • High memory consumption by Transmission indicates that the process of reparsing these torrents is not done in a linear way. (Tree traversal with all single child nodes is NOT the same as linear.)
  • Constant crashing because of high memory consumption leading to out of memory error.
  • Swap space/partition not used after upgrade to Jessie. I had to reconfigure swap system for that to activate swap to accommodate high memory usage by Transmission.
  • Constant crashing because of service startup timeout. Systemd simply kills the service if it takes to long to start.
  • lighttpd as the https proxy for Transmission needs reconfiguration and will not start until Transmission has started.
  • Adding TimeoutStartSec=infinity to /etc/systemd/system/multi-user.target.wants/transmission-daemon.service under [Service] did not work.
  • Adding TimeoutStartSec=0 to /etc/systemd/system/multi-user.target.wants/transmission-daemon.service under [Service] works.
  • Adding Environment=TRANSMISSION_WEB_HOME=/my/path/to/unzipped/shift/files to /etc/systemd/system/multi-user.target.wants/transmission-daemon.service under [Service] to activate the Shift Web UI works.
My advice would be to postpone the upgrade to a systemd system unless you really want to or have to. Expect many hours of reconfiguring services the new way if you do and throw out your scripting knowledge because you will have very little use for it.
Good luck!
VoXqWBqQME6WtI
Posts: 13
Joined: Tue Jan 26, 2010 10:16 am

Re: systemd: Evolve Or Die

Post by VoXqWBqQME6WtI »

killemov wrote:My advice would be to postpone the upgrade to a systemd system unless you really want to or have to.
My advise is to look systemd free alternative, old Debian is easy to upgrade to Devuan etc.

http://without-systemd.org/wiki/index.p ... stallation
Post Reply