Bug 734806 - remove dependency on ntpdate
Summary: remove dependency on ntpdate
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: ntp
Version: 15
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Miroslav Lichvar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-08-31 14:20 UTC by Zing
Modified: 2011-08-31 16:06 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-08-31 16:06:44 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Zing 2011-08-31 14:20:20 UTC
Description of problem:
Please remove the dependency on ntpdate in the ntpd unit file.  

1. Systemd will not allow you to disable ntpdate with this hard dep encoded in the unit file. It should be a suggestion to use ntpdate, not a hard requirement.
2. It's more work to cp and carry around an edited ntpd unit file with the hard dep removed than it is to have people that need ntpdate to just enable ntpdate. 
3. sysvinit never forced this type of depencency.  I personally never used or needed ntpdate (especially after iburst got implemented).  If you want to avoid the one-shot, non-smooth setting time set of ntpdate then you have to do 2.
4. ntpdate is deprecated.  We may want to always carry around a one-shot quick and dirty time set utility, but we should leave the choice to use it up to the administrator.

Version-Release number of selected component (if applicable):
ntp-4.2.6p3-4.fc15.x86_64

How reproducible:
always

Steps to Reproduce:
(sc is systemctl)
1. "sc enable ntpd.service" enables both ntpd and ntpdate
2. "sc -a|grep ntp" returns both ntpd and ntpdate services
3. "sc disable ntpdate" does not work.
  
Expected results:
don't run/be able to disable ntpdate

Comment 1 Miroslav Lichvar 2011-08-31 14:56:50 UTC
Hm, there is only an ordering dependency on ntpdate, enabling one service shouldn't enable the other.

Can you try this?

systemctl disable ntpdate.service ntpd.service
systemctl is-enabled ntpd.service; echo $?
systemctl is-enabled ntpdate.service; echo $?
systemctl enable ntpd.service
systemctl is-enabled ntpd.service; echo $?
systemctl is-enabled ntpdate.service; echo $?

Comment 2 Zing 2011-08-31 16:02:56 UTC
# systemctl disable ntpdate.service ntpd.service
[root@nysa-bh3 ~]# systemctl is-enabled ntpd.service; echo $?
1
[root@nysa-bh3 ~]# systemctl is-enabled ntpdate.service; echo $?
1
[root@nysa-bh3 ~]# systemctl enable ntpd.service
ln -s '/lib/systemd/system/ntpd.service' '/etc/systemd/system/multi-user.target.wants/ntpd.service'
[root@nysa-bh3 ~]# systemctl is-enabled ntpd.service; echo $?
0
[root@nysa-bh3 ~]# systemctl is-enabled ntpdate.service; echo $?
1

Ah, so this is a weakness on my end of not understanding the systemctl -a output... the ntpdate.service was not actually run then?  Very confusing.  Thanks for clarifying.

Comment 3 Zing 2011-08-31 16:06:44 UTC
Btw, systemd does not respect ordering if you manually start


Note You need to log in before you can comment on or make changes to this bug.