* [PATCH 0/1 v2][meta-networking] ntp: fix path to drift file @ 2014-10-11 10:12 wenzong.fan 2014-10-11 10:12 ` [PATCH 1/1 " wenzong.fan 0 siblings, 1 reply; 5+ messages in thread From: wenzong.fan @ 2014-10-11 10:12 UTC (permalink / raw) To: openembedded-devel From: Wenzong Fan <wenzong.fan@windriver.com> v2 changes: Update the commit logs: ----------------------- * fix the path to drift file: The default path of ntp drift file is /etc/ntp.drift, ntp daemon maybe fails to create this file since the user ntp is not always permitted to write /etc. Refer to other distributions such as RedHat, Debian, just moving the file to /var/lib/ntp which the home dir of user ntp. * add tmpfile support: Make sure the /var/lib/ntp is always created by sysvinit/systemd. ------------------------ The following changes since commit a4bdcbdbca05bbb4a452e06982038f0a38bcb91f: openldap: use PN for PACKAGES_DYNAMIC (2014-10-10 12:47:35 +0200) are available in the git repository at: git://git.pokylinux.org/poky-contrib wenzong/ntp-fix http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=wenzong/ntp-fix Wenzong Fan (1): ntp: fix path to drift file meta-networking/recipes-support/ntp/ntp.inc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) -- 1.7.9.5 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 1/1 v2][meta-networking] ntp: fix path to drift file 2014-10-11 10:12 [PATCH 0/1 v2][meta-networking] ntp: fix path to drift file wenzong.fan @ 2014-10-11 10:12 ` wenzong.fan 2014-10-11 11:42 ` Peter A. Bigot 0 siblings, 1 reply; 5+ messages in thread From: wenzong.fan @ 2014-10-11 10:12 UTC (permalink / raw) To: openembedded-devel From: Wenzong Fan <wenzong.fan@windriver.com> * fix the path to drift file: The default path of ntp drift file is /etc/ntp.drift, ntp daemon maybe fails to create this file since the user ntp is not always permitted to write /etc. Refer to other distributions such as RedHat, Debian, just moving the file to /var/lib/ntp which the home dir of user ntp. * add tmpfile support: Make sure the /var/lib/ntp is always created by sysvinit/systemd. Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> --- meta-networking/recipes-support/ntp/ntp.inc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/meta-networking/recipes-support/ntp/ntp.inc b/meta-networking/recipes-support/ntp/ntp.inc index f55a39a..f685274 100644 --- a/meta-networking/recipes-support/ntp/ntp.inc +++ b/meta-networking/recipes-support/ntp/ntp.inc @@ -53,6 +53,7 @@ PACKAGECONFIG[debug] = "--enable-debugging,--disable-debugging" do_install_append() { install -d ${D}${sysconfdir}/init.d install -m 644 ${WORKDIR}/ntp.conf ${D}${sysconfdir} + sed -i 's!/etc/ntp.drift!/var/lib/ntp/drift!g' ${D}${sysconfdir}/ntp.conf install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d install -d ${D}${bindir} install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync @@ -72,6 +73,18 @@ do_install_append() { install -m 644 ${WORKDIR}/ntpdate.default ${D}${sysconfdir}/default/ntpdate install -m 0644 ${WORKDIR}/sntp ${D}${sysconfdir}/default/ + # Create tmpfiles + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + install -d ${D}/${sysconfdir}/default/volatiles + echo "d ntp ntp 0755 /var/lib/ntp none" \ + > ${D}/${sysconfdir}/default/volatiles/99_ntpd + fi + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/tmpfiles.d + echo "d /var/lib/ntp 0755 ntp ntp -" \ + > ${D}${sysconfdir}/tmpfiles.d/99-ntpd.conf + fi + install -d ${D}/${sysconfdir}/network/if-up.d ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d @@ -112,6 +125,8 @@ RSUGGESTS_${PN} = "iana-etc" FILES_${PN} = "${sbindir}/ntpd ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd ${libdir} \ ${systemd_unitdir}/ntp-units.d/60-ntpd.list \ + ${sysconfdir}/default/volatiles \ + ${sysconfdir}/tmpfiles.d \ " FILES_${PN}-tickadj = "${sbindir}/tickadj" FILES_${PN}-utils = "${sbindir}" -- 1.7.9.5 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1 v2][meta-networking] ntp: fix path to drift file 2014-10-11 10:12 ` [PATCH 1/1 " wenzong.fan @ 2014-10-11 11:42 ` Peter A. Bigot 2014-10-11 13:53 ` Peter A. Bigot 0 siblings, 1 reply; 5+ messages in thread From: Peter A. Bigot @ 2014-10-11 11:42 UTC (permalink / raw) To: openembedded-devel, Fan, Wenzong (Wind River) Thanks for the clarifications. A couple more comments now that I understand the goal: On 10/11/2014 05:12 AM, wenzong.fan@windriver.com wrote: > From: Wenzong Fan <wenzong.fan@windriver.com> > > * fix the path to drift file: > > The default path of ntp drift file is /etc/ntp.drift, ntp daemon > maybe fails to create this file since the user ntp is not always > permitted to write /etc. > > Refer to other distributions such as RedHat, Debian, just moving > the file to /var/lib/ntp which the home dir of user ntp. > > * add tmpfile support: > > Make sure the /var/lib/ntp is always created by sysvinit/systemd. > > Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> > --- > meta-networking/recipes-support/ntp/ntp.inc | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/meta-networking/recipes-support/ntp/ntp.inc b/meta-networking/recipes-support/ntp/ntp.inc > index f55a39a..f685274 100644 > --- a/meta-networking/recipes-support/ntp/ntp.inc > +++ b/meta-networking/recipes-support/ntp/ntp.inc > @@ -53,6 +53,7 @@ PACKAGECONFIG[debug] = "--enable-debugging,--disable-debugging" > do_install_append() { > install -d ${D}${sysconfdir}/init.d > install -m 644 ${WORKDIR}/ntp.conf ${D}${sysconfdir} > + sed -i 's!/etc/ntp.drift!/var/lib/ntp/drift!g' ${D}${sysconfdir}/ntp.conf Since ntp.conf is provided by OE in files/ntp.conf, this change should be made there. Other users may provide their own ntp.conf through a bbappend and will not want it modified during installation. > install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d > install -d ${D}${bindir} > install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync > @@ -72,6 +73,18 @@ do_install_append() { > install -m 644 ${WORKDIR}/ntpdate.default ${D}${sysconfdir}/default/ntpdate > install -m 0644 ${WORKDIR}/sntp ${D}${sysconfdir}/default/ > > + # Create tmpfiles > + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then > + install -d ${D}/${sysconfdir}/default/volatiles > + echo "d ntp ntp 0755 /var/lib/ntp none" \ > + > ${D}/${sysconfdir}/default/volatiles/99_ntpd > + fi > + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then > + install -d ${D}${sysconfdir}/tmpfiles.d > + echo "d /var/lib/ntp 0755 ntp ntp -" \ > + > ${D}${sysconfdir}/tmpfiles.d/99-ntpd.conf > + fi > + ntp.drift is not a tmpfile and should not be considered volatile (its absence will cause NTP to spend the first 15 minutes estimating local oscillator characteristics, which is generally not desirable in a time server). /var/lib is intended for persistent state so putting the drift file there is perfectly fine, but adding /var/lib/ntp in tmpfiles/volatiles is incorrect. Since /var/lib/ntp is the ntp user's home directory, surely it's created automatically anyway and nothing need be done. Peter > install -d ${D}/${sysconfdir}/network/if-up.d > ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d > > @@ -112,6 +125,8 @@ RSUGGESTS_${PN} = "iana-etc" > > FILES_${PN} = "${sbindir}/ntpd ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd ${libdir} \ > ${systemd_unitdir}/ntp-units.d/60-ntpd.list \ > + ${sysconfdir}/default/volatiles \ > + ${sysconfdir}/tmpfiles.d \ > " > FILES_${PN}-tickadj = "${sbindir}/tickadj" > FILES_${PN}-utils = "${sbindir}" ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1 v2][meta-networking] ntp: fix path to drift file 2014-10-11 11:42 ` Peter A. Bigot @ 2014-10-11 13:53 ` Peter A. Bigot 2014-10-11 17:40 ` Peter A. Bigot 0 siblings, 1 reply; 5+ messages in thread From: Peter A. Bigot @ 2014-10-11 13:53 UTC (permalink / raw) To: openembedded-devel On 10/11/2014 06:42 AM, Peter A. Bigot wrote: > Thanks for the clarifications. A couple more comments now that I > understand the goal: > > On 10/11/2014 05:12 AM, wenzong.fan@windriver.com wrote: >> From: Wenzong Fan <wenzong.fan@windriver.com> >> >> * fix the path to drift file: >> >> The default path of ntp drift file is /etc/ntp.drift, ntp daemon >> maybe fails to create this file since the user ntp is not always >> permitted to write /etc. >> >> Refer to other distributions such as RedHat, Debian, just moving >> the file to /var/lib/ntp which the home dir of user ntp. >> >> * add tmpfile support: >> >> Make sure the /var/lib/ntp is always created by sysvinit/systemd. >> >> Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> >> --- >> meta-networking/recipes-support/ntp/ntp.inc | 15 +++++++++++++++ >> 1 file changed, 15 insertions(+) >> >> diff --git a/meta-networking/recipes-support/ntp/ntp.inc >> b/meta-networking/recipes-support/ntp/ntp.inc >> index f55a39a..f685274 100644 >> --- a/meta-networking/recipes-support/ntp/ntp.inc >> +++ b/meta-networking/recipes-support/ntp/ntp.inc >> @@ -53,6 +53,7 @@ PACKAGECONFIG[debug] = >> "--enable-debugging,--disable-debugging" >> do_install_append() { >> install -d ${D}${sysconfdir}/init.d >> install -m 644 ${WORKDIR}/ntp.conf ${D}${sysconfdir} >> + sed -i 's!/etc/ntp.drift!/var/lib/ntp/drift!g' >> ${D}${sysconfdir}/ntp.conf > > Since ntp.conf is provided by OE in files/ntp.conf, this change should > be made there. Other users may provide their own ntp.conf through a > bbappend and will not want it modified during installation. > >> install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d >> install -d ${D}${bindir} >> install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync >> @@ -72,6 +73,18 @@ do_install_append() { >> install -m 644 ${WORKDIR}/ntpdate.default >> ${D}${sysconfdir}/default/ntpdate >> install -m 0644 ${WORKDIR}/sntp ${D}${sysconfdir}/default/ >> + # Create tmpfiles >> + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', >> 'false', d)}; then >> + install -d ${D}/${sysconfdir}/default/volatiles >> + echo "d ntp ntp 0755 /var/lib/ntp none" \ >> + > ${D}/${sysconfdir}/default/volatiles/99_ntpd >> + fi >> + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', >> 'false', d)}; then >> + install -d ${D}${sysconfdir}/tmpfiles.d >> + echo "d /var/lib/ntp 0755 ntp ntp -" \ >> + > ${D}${sysconfdir}/tmpfiles.d/99-ntpd.conf >> + fi >> + > > ntp.drift is not a tmpfile and should not be considered volatile (its > absence will cause NTP to spend the first 15 minutes estimating local > oscillator characteristics, which is generally not desirable in a time > server). /var/lib is intended for persistent state so putting the > drift file there is perfectly fine, but adding /var/lib/ntp in > tmpfiles/volatiles is incorrect. > > Since /var/lib/ntp is the ntp user's home directory, surely it's > created automatically anyway and nothing need be done. I see that in fact it is not created automatically, even though the user is created. Ignoring the more fundamental and non-ntp question "why not?", adding: install -d ${D}/var/lib/ntp to do_install_append() should cover it. Peter > > Peter > >> install -d ${D}/${sysconfdir}/network/if-up.d >> ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d >> @@ -112,6 +125,8 @@ RSUGGESTS_${PN} = "iana-etc" >> FILES_${PN} = "${sbindir}/ntpd ${sysconfdir}/ntp.conf >> ${sysconfdir}/init.d/ntpd ${libdir} \ >> ${systemd_unitdir}/ntp-units.d/60-ntpd.list \ >> + ${sysconfdir}/default/volatiles \ >> + ${sysconfdir}/tmpfiles.d \ >> " >> FILES_${PN}-tickadj = "${sbindir}/tickadj" >> FILES_${PN}-utils = "${sbindir}" > ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1 v2][meta-networking] ntp: fix path to drift file 2014-10-11 13:53 ` Peter A. Bigot @ 2014-10-11 17:40 ` Peter A. Bigot 0 siblings, 0 replies; 5+ messages in thread From: Peter A. Bigot @ 2014-10-11 17:40 UTC (permalink / raw) To: openembedded-devel On 10/11/2014 08:53 AM, Peter A. Bigot wrote: > On 10/11/2014 06:42 AM, Peter A. Bigot wrote: >> Thanks for the clarifications. A couple more comments now that I >> understand the goal: >> >> On 10/11/2014 05:12 AM, wenzong.fan@windriver.com wrote: >>> From: Wenzong Fan <wenzong.fan@windriver.com> >>> >>> * fix the path to drift file: >>> >>> The default path of ntp drift file is /etc/ntp.drift, ntp daemon >>> maybe fails to create this file since the user ntp is not always >>> permitted to write /etc. >>> >>> Refer to other distributions such as RedHat, Debian, just moving >>> the file to /var/lib/ntp which the home dir of user ntp. >>> >>> * add tmpfile support: >>> >>> Make sure the /var/lib/ntp is always created by sysvinit/systemd. >>> >>> Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> >>> --- >>> meta-networking/recipes-support/ntp/ntp.inc | 15 +++++++++++++++ >>> 1 file changed, 15 insertions(+) >>> >>> diff --git a/meta-networking/recipes-support/ntp/ntp.inc >>> b/meta-networking/recipes-support/ntp/ntp.inc >>> index f55a39a..f685274 100644 >>> --- a/meta-networking/recipes-support/ntp/ntp.inc >>> +++ b/meta-networking/recipes-support/ntp/ntp.inc >>> @@ -53,6 +53,7 @@ PACKAGECONFIG[debug] = >>> "--enable-debugging,--disable-debugging" >>> do_install_append() { >>> install -d ${D}${sysconfdir}/init.d >>> install -m 644 ${WORKDIR}/ntp.conf ${D}${sysconfdir} >>> + sed -i 's!/etc/ntp.drift!/var/lib/ntp/drift!g' >>> ${D}${sysconfdir}/ntp.conf >> >> Since ntp.conf is provided by OE in files/ntp.conf, this change >> should be made there. Other users may provide their own ntp.conf >> through a bbappend and will not want it modified during installation. >> >>> install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d >>> install -d ${D}${bindir} >>> install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync >>> @@ -72,6 +73,18 @@ do_install_append() { >>> install -m 644 ${WORKDIR}/ntpdate.default >>> ${D}${sysconfdir}/default/ntpdate >>> install -m 0644 ${WORKDIR}/sntp ${D}${sysconfdir}/default/ >>> + # Create tmpfiles >>> + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', >>> 'false', d)}; then >>> + install -d ${D}/${sysconfdir}/default/volatiles >>> + echo "d ntp ntp 0755 /var/lib/ntp none" \ >>> + > ${D}/${sysconfdir}/default/volatiles/99_ntpd >>> + fi >>> + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', >>> 'false', d)}; then >>> + install -d ${D}${sysconfdir}/tmpfiles.d >>> + echo "d /var/lib/ntp 0755 ntp ntp -" \ >>> + > ${D}${sysconfdir}/tmpfiles.d/99-ntpd.conf >>> + fi >>> + >> >> ntp.drift is not a tmpfile and should not be considered volatile (its >> absence will cause NTP to spend the first 15 minutes estimating local >> oscillator characteristics, which is generally not desirable in a >> time server). /var/lib is intended for persistent state so putting >> the drift file there is perfectly fine, but adding /var/lib/ntp in >> tmpfiles/volatiles is incorrect. >> >> Since /var/lib/ntp is the ntp user's home directory, surely it's >> created automatically anyway and nothing need be done. > > I see that in fact it is not created automatically, even though the > user is created. Ignoring the more fundamental and non-ntp question > "why not?", The "why not" is because that's the way useradd works. Practically, since ntp is not a login account I believe --no-create-home should be added to USERADD_PARAM_${PN}. > adding: > > install -d ${D}/var/lib/ntp > > to do_install_append() should cover it. And it does not. Even when the missing chown ntp:ntp and packaging is added, the directory created when an image with ntp is built has the build host uid/gid. Only when the ntp package is installed from within the target environment is the ownership correct. As it stands using tmpfiles/volatiles might be the only working solution to get the correct ownership of home directories on the target, but IMO that should be fixed. I've taken the issue to oe-core: http://lists.openembedded.org/pipermail/openembedded-core/2014-October/097895.html Peter > > Peter > >> >> Peter >> >>> install -d ${D}/${sysconfdir}/network/if-up.d >>> ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d >>> @@ -112,6 +125,8 @@ RSUGGESTS_${PN} = "iana-etc" >>> FILES_${PN} = "${sbindir}/ntpd ${sysconfdir}/ntp.conf >>> ${sysconfdir}/init.d/ntpd ${libdir} \ >>> ${systemd_unitdir}/ntp-units.d/60-ntpd.list \ >>> + ${sysconfdir}/default/volatiles \ >>> + ${sysconfdir}/tmpfiles.d \ >>> " >>> FILES_${PN}-tickadj = "${sbindir}/tickadj" >>> FILES_${PN}-utils = "${sbindir}" >> > ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-10-11 17:47 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-10-11 10:12 [PATCH 0/1 v2][meta-networking] ntp: fix path to drift file wenzong.fan 2014-10-11 10:12 ` [PATCH 1/1 " wenzong.fan 2014-10-11 11:42 ` Peter A. Bigot 2014-10-11 13:53 ` Peter A. Bigot 2014-10-11 17:40 ` Peter A. Bigot
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.