couple install questions
I have a RedHat Ent.4 box I want to put syslog-ng on. Should I remove syslogd (sysklogd) first? If so how do I get syslog-ng to handle the cron (vixie) and initscripts? How can I find out what configure options are available to me for syslog-ng? I figured I would just try compiling syslog-ng on the machine and see what happens with syslogd. I built glib-2.12.0 & eventlog-0.2.4 and then exported PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig I did a ./configure --enable-tcp-wrapper. But during make I get this error gcc -g -O2 -Wall -g -o syslog-ng main.o libsyslog-ng.a -lnsl -lrt -Wl,-Bstatic -lfl -L/usr/local/lib -lglib-2.0 -L/usr/local/lib -levtlog -Wl,-Bdynamic libsyslog-ng.a(logmsg.o)(.text+0x6a): In function `log_stamp_format': /root/syslog-ng-2.0rc1/src/logmsg.c:111: undefined reference to `g_assert_warning' libsyslog-ng.a(logmsg.o)(.text+0x2c2): In function `log_msg_ref': /root/syslog-ng-2.0rc1/src/logmsg.c:489: undefined reference to `g_assert_warning' libsyslog-ng.a(logmsg.o)(.text+0x35e): In function `log_msg_unref': /root/syslog-ng-2.0rc1/src/logmsg.c:503: undefined reference to `g_assert_warning' libsyslog-ng.a(logmsg.o)(.text+0xd9a): In function `log_msg_ack_block_end': /root/syslog-ng-2.0rc1/src/logmsg.c:623: undefined reference to `g_return_if_fail_warning' libsyslog-ng.a(logpipe.o)(.text+0x4f): In function `log_pipe_ref': /root/syslog-ng-2.0rc1/src/logpipe.c:38: undefined reference to `g_assert_warning' libsyslog-ng.a(logpipe.o)(.text+0x9b): In function `log_pipe_unref': /root/syslog-ng-2.0rc1/src/logpipe.c:47: undefined reference to `g_assert_warning' libsyslog-ng.a(center.o)(.text+0x7d): In function `log_endpoint_free': /root/syslog-ng-2.0rc1/src/center.c:90: undefined reference to `g_assert_warning' libsyslog-ng.a(center.o)(.text+0x175): In function `log_connection_new': /root/syslog-ng-2.0rc1/src/center.c:132: undefined reference to `g_assert_warning' libsyslog-ng.a(templates.o)(.text+0x2a6): In function `log_template_ref': /root/syslog-ng-2.0rc1/src/templates.c:169: undefined reference to `g_assert_warning' libsyslog-ng.a(templates.o)(.text+0x30e):/root/syslog-ng-2.0rc1/src/templates.c:180: more undefined references to `g_assert_warning' follow collect2: ld returned 1 exit status make[2]: *** [syslog-ng] Error 1 make[2]: Leaving directory `/root/syslog-ng-2.0rc1/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/syslog-ng-2.0rc1' make: *** [all] Error 2 Does anyone have any ideas on what is causing this? Thanks, Nick Baronian
On Tue, 18 Jul 2006 13:36:00 EDT, Nick Baronian said:
I have a RedHat Ent.4 box I want to put syslog-ng on. Should I remove syslogd (sysklogd) first?
No. Careful planning will avoid installing one on top of the other, and you want the old syslog around Just In Case.
If so how do I get syslog-ng to handle the cron (vixie) and initscripts?
# cd /etc/init.d # cp syslog syslog-ng # chkconfig syslog off Modify syslog-ng as per attached patch. # chkconfig syslog-ng on Set up your syslog-ng.conf for your environment. # /etc/init.d/syslog-ng start You may need to disable at least some parts of logrotate if you use stuff like: destination d_spol { file("/logs/$HOST/$YEAR/$MONTH/spooler-$YEAR-$MONTH$DAY"); }; since that rotates itself free of charge. To back it out: # service syslog-ng stop # chkconfig syslog-ng off # chkconfig syslog on # service syslog start
what happens with syslogd. I built glib-2.12.0 & eventlog-0.2.4 and
Might be easier to just use the RHEL 4.0 glib2-2.4.7 packages. Patch follows... diff -u syslog syslog-ng --- syslog 2005-01-04 12:25:00.000000000 -0500 +++ syslog-ng 2004-07-19 11:27:53.000000000 -0400 @@ -14,14 +14,14 @@ # Source function library. . /etc/init.d/functions -[ -f /sbin/syslogd ] || exit 0 +[ -f /usr/local/sbin/syslog-ng ] || exit 0 [ -f /sbin/klogd ] || exit 0 # Source config -if [ -f /etc/sysconfig/syslog ] ; then - . /etc/sysconfig/syslog +if [ -f /etc/sysconfig/syslog-ng ] ; then + . /etc/sysconfig/syslog-ng else - SYSLOGD_OPTIONS="-m 0" + SYSLOGD_OPTIONS="" KLOGD_OPTIONS="-2" fi @@ -31,7 +31,7 @@ start() { echo -n $"Starting system logger: " - daemon syslogd $SYSLOGD_OPTIONS + daemon /usr/local/sbin/syslog-ng $SYSLOGD_OPTIONS RETVAL=$? echo echo -n $"Starting kernel logger: "
Valdis.Kletnieks@vt.edu wrote:
On Tue, 18 Jul 2006 13:36:00 EDT, Nick Baronian said:
I have a RedHat Ent.4 box I want to put syslog-ng on. Should I remove syslogd (sysklogd) first?
No. Careful planning will avoid installing one on top of the other, and you want the old syslog around Just In Case.
If so how do I get syslog-ng to handle the cron (vixie) and initscripts?
# cd /etc/init.d # cp syslog syslog-ng # chkconfig syslog off
By using a separate syslog-ng init.d script we found that we sometimes accidentally started syslog by doing an "/etc/init.d/syslog restart" rather than a "/etc/init.d/syslog-ng restart". No errors get thrown, but we end up having two processes reading from /dev/log which results in logging stopping for both syslog and syslog-ng. Obviously not what we want to happen. To avoid this you can just make /etc/init.d/syslog start/stop syslog-ng but you run the risk of an up2date replacing the /etc/init.d/syslog script when a new version of syslog gets updated. We found a better approach was to "hack" the /etc/sysconfig/syslog file to add at the end if [ "$1" != "stop" ]; then if [ "$1" != "status" ]; then echo "This system runs syslog-ng" exit 1 fi fi so that when /etc/init.d/syslog is invoked, this file runs and alerts the user to the fact that syslog-ng has replaced syslog-ng on the system. This file is not replaced when syslog is updated. You could add other stuff, such as redirect to the syslog-ng startup script. In our environment we wanted to train the sysadmins to use the /etc/init.d/syslog-ng script. If you are interested, I can send you our syslog-ng init.d script. -- Evan Rempel erempel@uvic.ca Senior Programmer Analyst 250.721.7691 Computing Services University of Victoria
Hellon I have the same error after the make. How did you fix it ? Regards. --- Nick Baronian <kvetch@gmail.com> a écrit :
I have a RedHat Ent.4 box I want to put syslog-ng on. Should I remove syslogd (sysklogd) first? If so how do I get syslog-ng to handle the cron (vixie) and initscripts?
How can I find out what configure options are available to me for syslog-ng?
I figured I would just try compiling syslog-ng on the machine and see what happens with syslogd. I built glib-2.12.0 & eventlog-0.2.4 and then exported
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
I did a ./configure --enable-tcp-wrapper. But during make I get this error
gcc -g -O2 -Wall -g -o syslog-ng main.o libsyslog-ng.a -lnsl -lrt -Wl,-Bstatic -lfl -L/usr/local/lib -lglib-2.0 -L/usr/local/lib -levtlog -Wl,-Bdynamic libsyslog-ng.a(logmsg.o)(.text+0x6a): In function `log_stamp_format': /root/syslog-ng-2.0rc1/src/logmsg.c:111: undefined reference to `g_assert_warning' libsyslog-ng.a(logmsg.o)(.text+0x2c2): In function `log_msg_ref': /root/syslog-ng-2.0rc1/src/logmsg.c:489: undefined reference to `g_assert_warning' libsyslog-ng.a(logmsg.o)(.text+0x35e): In function `log_msg_unref': /root/syslog-ng-2.0rc1/src/logmsg.c:503: undefined reference to `g_assert_warning' libsyslog-ng.a(logmsg.o)(.text+0xd9a): In function `log_msg_ack_block_end': /root/syslog-ng-2.0rc1/src/logmsg.c:623: undefined reference to `g_return_if_fail_warning' libsyslog-ng.a(logpipe.o)(.text+0x4f): In function `log_pipe_ref': /root/syslog-ng-2.0rc1/src/logpipe.c:38: undefined reference to `g_assert_warning' libsyslog-ng.a(logpipe.o)(.text+0x9b): In function `log_pipe_unref': /root/syslog-ng-2.0rc1/src/logpipe.c:47: undefined reference to `g_assert_warning' libsyslog-ng.a(center.o)(.text+0x7d): In function `log_endpoint_free': /root/syslog-ng-2.0rc1/src/center.c:90: undefined reference to `g_assert_warning' libsyslog-ng.a(center.o)(.text+0x175): In function `log_connection_new': /root/syslog-ng-2.0rc1/src/center.c:132: undefined reference to `g_assert_warning' libsyslog-ng.a(templates.o)(.text+0x2a6): In function `log_template_ref': /root/syslog-ng-2.0rc1/src/templates.c:169: undefined reference to `g_assert_warning'
libsyslog-ng.a(templates.o)(.text+0x30e):/root/syslog-ng-2.0rc1/src/templates.c:180:
more undefined references to `g_assert_warning' follow collect2: ld returned 1 exit status make[2]: *** [syslog-ng] Error 1 make[2]: Leaving directory `/root/syslog-ng-2.0rc1/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/syslog-ng-2.0rc1' make: *** [all] Error 2
Does anyone have any ideas on what is causing this? Thanks, Nick Baronian _______________________________________________ syslog-ng maillist - syslog-ng@lists.balabit.hu https://lists.balabit.hu/mailman/listinfo/syslog-ng Frequently asked questions at http://www.campin.net/syslog-ng/faq.html
___________________________________________________________________________ Découvrez un nouveau moyen de poser toutes vos questions quelque soit le sujet ! Yahoo! Questions/Réponses pour partager vos connaissances, vos opinions et vos expériences. http://fr.answers.yahoo.com
participants (4)
-
Evan Rempel
-
news gonzo news gonzo
-
Nick Baronian
-
Valdis.Kletnieks@vt.edu