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>
This commit is contained in:
parent
c41fe30640
commit
4f7d621db6
|
@ -53,7 +53,7 @@ do_install () {
|
|||
# Move back the sh symlink
|
||||
test -h ${D}/busybox${base_bindir}/sh && mv ${D}/busybox${base_bindir}/sh ${D}${base_bindir}/
|
||||
|
||||
install -m 0755 ${WORKDIR}/syslog ${D}${sysconfdir}/init.d/
|
||||
install -m 0755 ${WORKDIR}/syslog ${D}${sysconfdir}/init.d/syslog.${PN}
|
||||
install -m 644 ${WORKDIR}/syslog.conf ${D}${sysconfdir}/
|
||||
if grep "CONFIG_CROND=y" ${WORKDIR}/defconfig; then
|
||||
# Move crond back to /usr/sbin/crond
|
||||
|
@ -107,6 +107,8 @@ pkg_postinst_${PN} () {
|
|||
|
||||
# This adds the links, remember that this has to work when building an image too, hence the $D
|
||||
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
|
||||
|
||||
update-alternatives --install ${sysconfdir}/init.d/syslog syslog-init syslog.${PN} 50
|
||||
}
|
||||
|
||||
pkg_prerm_${PN} () {
|
||||
|
@ -138,4 +140,13 @@ pkg_prerm_${PN} () {
|
|||
bn=`basename $link`
|
||||
sh /usr/bin/update-alternatives --remove $bn $to
|
||||
done </etc/busybox.links
|
||||
|
||||
# remove syslog
|
||||
if test "x$D" = "x"; then
|
||||
if test "$1" = "upgrade" -o "$1" = "remove"; then
|
||||
/etc/init.d/syslog stop
|
||||
fi
|
||||
fi
|
||||
|
||||
update-alternatives --remove syslog-init syslog.${PN}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
require busybox.inc
|
||||
PR = "r0"
|
||||
PR = "r1"
|
||||
|
||||
SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
|
||||
file://udhcpscript.patch \
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
# /etc/syslog.conf Configuration file for syslogd.
|
||||
#
|
||||
# Ported from debian by Yu Ke <ke.yu@intel.com>
|
||||
#
|
||||
|
||||
#
|
||||
# First some standard logfiles. Log by facility.
|
||||
#
|
||||
|
||||
auth,authpriv.* /var/log/auth.log
|
||||
*.*;auth,authpriv.none -/var/log/syslog
|
||||
#cron.* /var/log/cron.log
|
||||
daemon.* -/var/log/daemon.log
|
||||
kern.* -/var/log/kern.log
|
||||
lpr.* -/var/log/lpr.log
|
||||
mail.* -/var/log/mail.log
|
||||
user.* -/var/log/user.log
|
||||
|
||||
#
|
||||
# Logging for the mail system. Split it up so that
|
||||
# it is easy to write scripts to parse these files.
|
||||
#
|
||||
mail.info -/var/log/mail.info
|
||||
mail.warn -/var/log/mail.warn
|
||||
mail.err /var/log/mail.err
|
||||
|
||||
# Logging for INN news system
|
||||
#
|
||||
news.crit /var/log/news/news.crit
|
||||
news.err /var/log/news/news.err
|
||||
news.notice -/var/log/news/news.notice
|
||||
|
||||
#
|
||||
# Some `catch-all' logfiles.
|
||||
#
|
||||
*.=debug;\
|
||||
auth,authpriv.none;\
|
||||
news.none;mail.none -/var/log/debug
|
||||
*.=info;*.=notice;*.=warn;\
|
||||
auth,authpriv.none;\
|
||||
cron,daemon.none;\
|
||||
mail,news.none -/var/log/messages
|
||||
|
||||
#
|
||||
# Emergencies are sent to everybody logged in.
|
||||
#
|
||||
*.emerg *
|
||||
|
||||
#
|
||||
# I like to have messages displayed on the console, but only on a virtual
|
||||
# console I usually leave idle.
|
||||
#
|
||||
#daemon,mail.*;\
|
||||
# news.=crit;news.=err;news.=notice;\
|
||||
# *.=debug;*.=info;\
|
||||
# *.=notice;*.=warn /dev/tty8
|
||||
|
||||
# The named pipe /dev/xconsole is for the `xconsole' utility. To use it,
|
||||
# you must invoke `xconsole' with the `-file' option:
|
||||
#
|
||||
# $ xconsole -file /dev/xconsole [...]
|
||||
#
|
||||
# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
|
||||
# busy site..
|
||||
#
|
||||
daemon.*;mail.*;\
|
||||
news.err;\
|
||||
*.=debug;*.=info;\
|
||||
*.=notice;*.=warn |/dev/xconsole
|
||||
|
|
@ -18,6 +18,7 @@ RDEPENDS_${PN}_append = " ${@base_conditional("ONLINE_PACKAGE_MANAGEMENT", "none
|
|||
SRC_URI = "http://www.infodrom.org/projects/sysklogd/download/sysklogd-${PV}.tar.gz \
|
||||
file://no-strip-install.patch \
|
||||
file://sysklogd \
|
||||
file://syslog.conf \
|
||||
"
|
||||
|
||||
INITSCRIPT_NAME = "syslog"
|
||||
|
@ -33,7 +34,7 @@ do_install () {
|
|||
mv ${D}${base_sbindir}/syslogd ${D}${base_sbindir}/syslogd.${PN}
|
||||
mv ${D}${base_sbindir}/klogd ${D}${base_sbindir}/klogd.${PN}
|
||||
install -d ${D}${sysconfdir}
|
||||
install -m 644 ${S}/syslog.conf ${D}${sysconfdir}/syslog.conf
|
||||
install -m 644 ${WORKDIR}/syslog.conf ${D}${sysconfdir}/syslog.conf
|
||||
install -d ${D}${sysconfdir}/init.d
|
||||
install -m 755 ${WORKDIR}/sysklogd ${D}${sysconfdir}/init.d/syslog.${PN}
|
||||
}
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
require sysklogd.inc
|
||||
PR = "r0"
|
||||
PR = "r1"
|
||||
|
|
Loading…
Reference in New Issue