diff options
author | Yu Ke <ke.yu@intel.com> | 2010-10-19 15:15:17 +0800 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-10-19 20:29:59 +0100 |
commit | 4f7d621db6943cd32c7c4ba41a96db72c1d91e4c (patch) | |
tree | 40ca4b3097534aec32a5a5a9d9ae5f2761a7bcaf /meta/recipes-core/busybox/busybox.inc | |
parent | c41fe30640fe2f27df8de7b53112bd492cd5468f (diff) | |
download | poky-4f7d621db6943cd32c7c4ba41a96db72c1d91e4c.tar.gz |
sysklogd: correct the syslog link and conf file
This commit fix [BUGID #482]
Two issues cause bug 482:
- firsty, there are two version of syslog: sysklogd and busybox.
the busybox one is directly installed as /etc/init.d/syslog,
and the sysklogd one is installed by update-alternative. the
update-alternative will thus fail because the /etc/init.d/syslog
(busybox one) already exist and not a link. so the correct way
is to install busybox one by update-alternative, the layout will be:
/etc/init.d/syslog.busybox
/etc/init.d/syslog.sysklogd
/etc/init.d/syslog -> syslog.busybox or
/etc/init.d/syslog -> syslog.sysklogd
- secondly, sysklogd default conf is not comply with poky. Its dir /var/adm/
does not exist. Check the debian /etc/syslog.conf and find it is more
sophiscated and suitable, so port /etc/syslog.conf from debian.
Signed-off-by: Yu Ke <ke.yu@intel.com>
Diffstat (limited to 'meta/recipes-core/busybox/busybox.inc')
-rw-r--r-- | meta/recipes-core/busybox/busybox.inc | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc index b3c6c66151..b8c009c1d3 100644 --- a/meta/recipes-core/busybox/busybox.inc +++ b/meta/recipes-core/busybox/busybox.inc | |||
@@ -53,7 +53,7 @@ do_install () { | |||
53 | # Move back the sh symlink | 53 | # Move back the sh symlink |
54 | test -h ${D}/busybox${base_bindir}/sh && mv ${D}/busybox${base_bindir}/sh ${D}${base_bindir}/ | 54 | test -h ${D}/busybox${base_bindir}/sh && mv ${D}/busybox${base_bindir}/sh ${D}${base_bindir}/ |
55 | 55 | ||
56 | install -m 0755 ${WORKDIR}/syslog ${D}${sysconfdir}/init.d/ | 56 | install -m 0755 ${WORKDIR}/syslog ${D}${sysconfdir}/init.d/syslog.${PN} |
57 | install -m 644 ${WORKDIR}/syslog.conf ${D}${sysconfdir}/ | 57 | install -m 644 ${WORKDIR}/syslog.conf ${D}${sysconfdir}/ |
58 | if grep "CONFIG_CROND=y" ${WORKDIR}/defconfig; then | 58 | if grep "CONFIG_CROND=y" ${WORKDIR}/defconfig; then |
59 | # Move crond back to /usr/sbin/crond | 59 | # Move crond back to /usr/sbin/crond |
@@ -107,6 +107,8 @@ pkg_postinst_${PN} () { | |||
107 | 107 | ||
108 | # This adds the links, remember that this has to work when building an image too, hence the $D | 108 | # This adds the links, remember that this has to work when building an image too, hence the $D |
109 | while read link; do case "$link" in /*/*/*) to="../../bin/busybox";; /bin/*) to="busybox";; /*/*) to="../bin/busybox";; esac; bn=`basename $link`; update-alternatives --install $link $bn $to 50; done <$D/etc/busybox.links | 109 | while read link; do case "$link" in /*/*/*) to="../../bin/busybox";; /bin/*) to="busybox";; /*/*) to="../bin/busybox";; esac; bn=`basename $link`; update-alternatives --install $link $bn $to 50; done <$D/etc/busybox.links |
110 | |||
111 | update-alternatives --install ${sysconfdir}/init.d/syslog syslog-init syslog.${PN} 50 | ||
110 | } | 112 | } |
111 | 113 | ||
112 | pkg_prerm_${PN} () { | 114 | pkg_prerm_${PN} () { |
@@ -138,4 +140,13 @@ pkg_prerm_${PN} () { | |||
138 | bn=`basename $link` | 140 | bn=`basename $link` |
139 | sh /usr/bin/update-alternatives --remove $bn $to | 141 | sh /usr/bin/update-alternatives --remove $bn $to |
140 | done </etc/busybox.links | 142 | done </etc/busybox.links |
143 | |||
144 | # remove syslog | ||
145 | if test "x$D" = "x"; then | ||
146 | if test "$1" = "upgrade" -o "$1" = "remove"; then | ||
147 | /etc/init.d/syslog stop | ||
148 | fi | ||
149 | fi | ||
150 | |||
151 | update-alternatives --remove syslog-init syslog.${PN} | ||
141 | } | 152 | } |