Created attachment 494567 [details] Native systemd service file for arpwatch service Description of problem: The attached file is a native systemd file for upcoming F15 Feature [1] Please read [2] on how to packaging and installing systemd Service files. To learn more about Systemd daemon see [3]. To view old SysV with the new Systemd site by site see for your component see [4] If you have any question dont hesitate to ask them on this bug report. 1.http://fedoraproject.org/wiki/Features/systemd 2.https://fedoraproject.org/wiki/Systemd_Packaging_Draft 3.http://0pointer.de/public/systemd-man/daemon.html 4.https://fedoraproject.org/wiki/User:Johannbg/QA/Systemd/compatability Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
To test this. Copy the file into /lib/systemd/system/ directory Run systemctl daemon-reload Then run systemctl start/stop/restart/enable/disable arpwatch.service
Moving systemd service RFEs to rawhide. At this point, it is not appropriate in the Fedora 15 cycle to add these. Furthermore, at this point, we are still finalizing the packaging guidelines to handle SysV -> systemd upgrades. We therefore request: - wait until there are packaging guidelines (this will be announced on the devel list). This ensures that upgrades will work smoothly and we/you won't have to do multiple sets of changes. - work on these sorts of changes for Fedora 16 where necessary, not Fedora 15, as we're trying to fix things for release. - do *not* change a service from SysV to systemd in an existing release (such as Fedora 15), as this is the sort of behavior change that goes against our update policy, documented as https://fedoraproject.org/wiki/Updates_Policy
The systemd service file is included in arpwatch-2.1a15-16.fc16.
Jóhann, why did you set this unit up as type=oneshot rather than type=forking? Just wondering.
Hum good question not sure what my mindset was ca 3 months ago but I'm guessing that it is because it did not mention any pid file and does not exit cleanly when running in fork mode which indicates bug btw. Anyway here's a forking version just you can just replace the file via simple update ;) [Unit] Description=Arpwatch daemon which keeps track of ethernet/ip address pairings. After=syslog.target network.target [Service] Type=forking EnvironmentFile=-/etc/sysconfig/arpwatch ExecStart=/usr/sbin/arpwatch $OPTIONS [Install] WantedBy=multi-user.target However it will result in when stopped # systemctl status arpwatch.service arpwatch.service - Arpwatch daemon which keeps track of ethernet/ip address pairings. Loaded: loaded (/lib/systemd/system/arpwatch.service) Active: failed since Fri, 08 Jul 2011 13:18:17 +0000; 1s ago Process: 9202 ExecStart=/usr/sbin/arpwatch $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 9203 (code=exited, status=1/FAILURE) <--- CGroup: name=systemd:/system/arpwatch.service
Thanks. The error code and the service type should be fixed in arpwatch-2.1a15-17.fc16.