summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYu Ke <ke.yu@intel.com>2010-10-19 15:15:17 +0800
committerRichard Purdie <rpurdie@linux.intel.com>2010-10-19 20:29:59 +0100
commit4f7d621db6943cd32c7c4ba41a96db72c1d91e4c (patch)
tree40ca4b3097534aec32a5a5a9d9ae5f2761a7bcaf
parentc41fe30640fe2f27df8de7b53112bd492cd5468f (diff)
downloadpoky-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>
-rw-r--r--meta/recipes-core/busybox/busybox.inc13
-rw-r--r--meta/recipes-core/busybox/busybox_1.16.2.bb2
-rw-r--r--meta/recipes-extended/sysklogd/files/syslog.conf70
-rw-r--r--meta/recipes-extended/sysklogd/sysklogd.inc3
-rw-r--r--meta/recipes-extended/sysklogd/sysklogd_1.5.bb2
5 files changed, 86 insertions, 4 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
112pkg_prerm_${PN} () { 114pkg_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}
diff --git a/meta/recipes-core/busybox/busybox_1.16.2.bb b/meta/recipes-core/busybox/busybox_1.16.2.bb
index 0952f4ddb0..80dbeaba60 100644
--- a/meta/recipes-core/busybox/busybox_1.16.2.bb
+++ b/meta/recipes-core/busybox/busybox_1.16.2.bb
@@ -1,5 +1,5 @@
1require busybox.inc 1require busybox.inc
2PR = "r0" 2PR = "r1"
3 3
4SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \ 4SRC_URI = "http://www.busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
5 file://udhcpscript.patch \ 5 file://udhcpscript.patch \
diff --git a/meta/recipes-extended/sysklogd/files/syslog.conf b/meta/recipes-extended/sysklogd/files/syslog.conf
new file mode 100644
index 0000000000..795d73545a
--- /dev/null
+++ b/meta/recipes-extended/sysklogd/files/syslog.conf
@@ -0,0 +1,70 @@
1# /etc/syslog.conf Configuration file for syslogd.
2#
3# Ported from debian by Yu Ke <ke.yu@intel.com>
4#
5
6#
7# First some standard logfiles. Log by facility.
8#
9
10auth,authpriv.* /var/log/auth.log
11*.*;auth,authpriv.none -/var/log/syslog
12#cron.* /var/log/cron.log
13daemon.* -/var/log/daemon.log
14kern.* -/var/log/kern.log
15lpr.* -/var/log/lpr.log
16mail.* -/var/log/mail.log
17user.* -/var/log/user.log
18
19#
20# Logging for the mail system. Split it up so that
21# it is easy to write scripts to parse these files.
22#
23mail.info -/var/log/mail.info
24mail.warn -/var/log/mail.warn
25mail.err /var/log/mail.err
26
27# Logging for INN news system
28#
29news.crit /var/log/news/news.crit
30news.err /var/log/news/news.err
31news.notice -/var/log/news/news.notice
32
33#
34# Some `catch-all' logfiles.
35#
36*.=debug;\
37 auth,authpriv.none;\
38 news.none;mail.none -/var/log/debug
39*.=info;*.=notice;*.=warn;\
40 auth,authpriv.none;\
41 cron,daemon.none;\
42 mail,news.none -/var/log/messages
43
44#
45# Emergencies are sent to everybody logged in.
46#
47*.emerg *
48
49#
50# I like to have messages displayed on the console, but only on a virtual
51# console I usually leave idle.
52#
53#daemon,mail.*;\
54# news.=crit;news.=err;news.=notice;\
55# *.=debug;*.=info;\
56# *.=notice;*.=warn /dev/tty8
57
58# The named pipe /dev/xconsole is for the `xconsole' utility. To use it,
59# you must invoke `xconsole' with the `-file' option:
60#
61# $ xconsole -file /dev/xconsole [...]
62#
63# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
64# busy site..
65#
66daemon.*;mail.*;\
67 news.err;\
68 *.=debug;*.=info;\
69 *.=notice;*.=warn |/dev/xconsole
70
diff --git a/meta/recipes-extended/sysklogd/sysklogd.inc b/meta/recipes-extended/sysklogd/sysklogd.inc
index 76ab707b21..9bd77280aa 100644
--- a/meta/recipes-extended/sysklogd/sysklogd.inc
+++ b/meta/recipes-extended/sysklogd/sysklogd.inc
@@ -18,6 +18,7 @@ RDEPENDS_${PN}_append = " ${@base_conditional("ONLINE_PACKAGE_MANAGEMENT", "none
18SRC_URI = "http://www.infodrom.org/projects/sysklogd/download/sysklogd-${PV}.tar.gz \ 18SRC_URI = "http://www.infodrom.org/projects/sysklogd/download/sysklogd-${PV}.tar.gz \
19 file://no-strip-install.patch \ 19 file://no-strip-install.patch \
20 file://sysklogd \ 20 file://sysklogd \
21 file://syslog.conf \
21 " 22 "
22 23
23INITSCRIPT_NAME = "syslog" 24INITSCRIPT_NAME = "syslog"
@@ -33,7 +34,7 @@ do_install () {
33 mv ${D}${base_sbindir}/syslogd ${D}${base_sbindir}/syslogd.${PN} 34 mv ${D}${base_sbindir}/syslogd ${D}${base_sbindir}/syslogd.${PN}
34 mv ${D}${base_sbindir}/klogd ${D}${base_sbindir}/klogd.${PN} 35 mv ${D}${base_sbindir}/klogd ${D}${base_sbindir}/klogd.${PN}
35 install -d ${D}${sysconfdir} 36 install -d ${D}${sysconfdir}
36 install -m 644 ${S}/syslog.conf ${D}${sysconfdir}/syslog.conf 37 install -m 644 ${WORKDIR}/syslog.conf ${D}${sysconfdir}/syslog.conf
37 install -d ${D}${sysconfdir}/init.d 38 install -d ${D}${sysconfdir}/init.d
38 install -m 755 ${WORKDIR}/sysklogd ${D}${sysconfdir}/init.d/syslog.${PN} 39 install -m 755 ${WORKDIR}/sysklogd ${D}${sysconfdir}/init.d/syslog.${PN}
39} 40}
diff --git a/meta/recipes-extended/sysklogd/sysklogd_1.5.bb b/meta/recipes-extended/sysklogd/sysklogd_1.5.bb
index 8344e272c4..27146c79ad 100644
--- a/meta/recipes-extended/sysklogd/sysklogd_1.5.bb
+++ b/meta/recipes-extended/sysklogd/sysklogd_1.5.bb
@@ -1,2 +1,2 @@
1require sysklogd.inc 1require sysklogd.inc
2PR = "r0" 2PR = "r1"