Am 27.01.2015 um 06:19 schrieb Michael Biebl: >> Of course, if you have a better idea of how to do this? > > Aside from shipping real native unit files, that's probably the least > invasive change: > > - Drop $remote_fs from the open-isci LSB header and replace it with > $local_fs. That looks wrong anyway.
As I said before: that breaks sysvinit systems with /usr on NFS. There's even an old bug report on that: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=541390 I really like your idea of a drop-in. And I also like the idea how you call umountiscsi.sh, I didn't think of that. Unfortunately, it doesn't work if I want to remove the After=remote-fs.target, since you can't reset After= (or any unit dependency for that matter) to an empty list in drop-ins. But I thought a bit more about it: let's make dependencies a little better by ordering open-iscsi after mountnfs. That would keep /usr on NFS working for sysvinit, but make systemd happy, since mountnfs is masked there (dependency therefore ignored). But systemd's sysv-generator treats mountnfs the same as $remote_fs. So close, but no cigar. However, there's also mountnfs-bootclean. That service is ordered after mountnfs in sysvinit, is also masked for systemd and does not receive special treatment in systemd's sysv-generator. So basically, you'd have the following changes w.r.t. the current package in testing: open-iscsi init script: s/$remote_fs/$local_fs mountnfs-bootclean/: # Required-Start: $network $local_fs mountnfs-bootclean # Required-Stop: $network $local_fs mountnfs-bootclean sendsigs /lib/systemd/system/open-iscsi.service.d/fix-systemd-deps.conf: [Unit] # Make sure we have the proper ordering w.r.t. remote-fs-pre.target. # Not required for boot, but for shutdown. Wants=remote-fs-pre.target Before=remote-fs-pre.target [Service] # Replace stop actions, because calling umountiscsi.sh from # within open-iscsi script won't work due to systemctl # redirection (and umountiscsi.sh is never started) # Note that we have to test for /etc/iscsi/iscsi.initramfs, # since the init script also does this test. Use exec to # make sure that umountiscsi.sh's PPID is 1, so we don't run # into the redirect ourselves. ExecStop= ExecStop=/bin/sh -c "[ -f /etc/iscsi/iscsi.initramfs ] || exec /etc/init.d/umountiscsi.sh stop" ExecStop=/etc/init.d/open-iscsi stop I've just tried this, under systemd it works (no timeout, proper ordering), and update-rc.d still generates the correct ordering of startup links for sysvinit in /etc/rcS.d, with open-iscsi being after mountnfs. Would you be OK with that? If so, I can prepare a patch and send it to Ritesh for inclusion. Christian -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org