<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Прошу помощи допилить скрипт syslog-ng]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=20683&amp;type=atom" />
	<updated>2012-03-03T09:02:43Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=20683</id>
		<entry>
			<title type="html"><![CDATA[Re: Прошу помощи допилить скрипт syslog-ng]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=256120#p256120" />
			<content type="html"><![CDATA[<p>Всем спасибо! Все варианты работают.<br />Задача решена.</p>]]></content>
			<author>
				<name><![CDATA[mil612]]></name>
				<uri>https://linuxforum.ru/profile.php?id=2329</uri>
			</author>
			<updated>2012-03-03T09:02:43Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=256120#p256120</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Прошу помощи допилить скрипт syslog-ng]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=256099#p256099" />
			<content type="html"><![CDATA[<p>Или как в ранее упомянутой теме по отрицанию кода возврата grep:<br /></p><div class="codebox"><pre><code>if  ! grep &#039;next generation system logger&#039; /etc/rc.d/rc.M &gt; /dev/null; then
    echo &quot;Patching rc.M...&quot;
    cat &lt;&lt; EOF &gt;&gt; /etc/rc.d/rc.M
    # Start the next generation system logger.
    if [ -x /etc/rc.d/rc.syslog-ng -a -x /usr/sbin/syslog-ng ]; then
        . /etc/rc.d/rc.syslog-ng start
    fi
EOF
fi</code></pre></div>]]></content>
			<author>
				<name><![CDATA[bormant]]></name>
				<uri>https://linuxforum.ru/profile.php?id=732</uri>
			</author>
			<updated>2012-03-03T08:28:22Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=256099#p256099</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Прошу помощи допилить скрипт syslog-ng]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=256080#p256080" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>if  grep &#039;next generation system logger&#039; /etc/rc.d/rc.M &gt; /dev/null; then
    echo &quot;rc.M patched already.&quot;
else
    echo &quot;Patching rc.M...&quot;
    cat &lt;&lt; EOF &gt;&gt; /etc/rc.d/rc.M
    # Start the next generation system logger.
    if [ -x /etc/rc.d/rc.syslog-ng -a -x /usr/sbin/syslog-ng ]; then
        . /etc/rc.d/rc.syslog-ng start
    fi
EOF
fi</code></pre></div><p>Или ещё короче</p><div class="codebox"><pre><code>grep &#039;next generation system logger&#039; /etc/rc.d/rc.M &gt; /dev/null || cat &lt;&lt; EOF &gt;&gt; /etc/rc.d/rc.M
    # Start the next generation system logger.
    if [ -x /etc/rc.d/rc.syslog-ng -a -x /usr/sbin/syslog-ng ] ; then
        . /etc/rc.d/rc.syslog-ng start
    fi
EOF</code></pre></div><p>Или как подсказали выше<br /></p><div class="codebox"><pre><code>if [ -z &quot;$(grep &#039;next generation system logger&#039; /etc/rc.d/rc.M)&quot; ]; then
    cat &lt;&lt; EOF &gt;&gt; /etc/rc.d/rc.M
    # Start the next generation system logger.
    if [ -x /etc/rc.d/rc.syslog-ng -a -x /usr/sbin/syslog-ng ]; then
        . /etc/rc.d/rc.syslog-ng start
    fi
EOF
fi</code></pre></div><p>В первых 2-х случаях для ветвления используется код возврата grep, в 3-м проверяется текст, выведенный grep, а точнее его отсутствие (-z).</p>]]></content>
			<author>
				<name><![CDATA[bormant]]></name>
				<uri>https://linuxforum.ru/profile.php?id=732</uri>
			</author>
			<updated>2012-03-03T07:48:30Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=256080#p256080</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Прошу помощи допилить скрипт syslog-ng]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=256073#p256073" />
			<content type="html"><![CDATA[<p>По поводу этого ответа <a href="http://linuxforum.ru/viewtopic.php?pid=255337#p255337">http://linuxforum.ru/viewtopic.php?pid=255337#p255337</a> я уже писал дальше, что возникает ошибка при выполнении скрипта, пробелы ставил.<br />в вашем скрипте чего-то не хватает или что-то лишнее<br /></p><div class="codebox"><pre><code>if  [ ! grep &#039;next generation system logger&#039; /etc/rc.d/rc.M ] ; then
    cat &lt;&lt; EOF &gt;&gt; /etc/rc.d/rc.M
    # Start the next generation system logger.
    if [ -x /etc/rc.d/rc.syslog-ng -a -x /usr/sbin/syslog-ng ] ; then
        . /etc/rc.d/rc.syslog-ng start
    fi
EOF
fi</code></pre></div><p>ругается на несуществующую строку <br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">./install_syslog.sh: line 92: syntax error: unexpected end of file</div><br />а всего строк 91.</p>]]></content>
			<author>
				<name><![CDATA[mil612]]></name>
				<uri>https://linuxforum.ru/profile.php?id=2329</uri>
			</author>
			<updated>2012-03-03T07:31:30Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=256073#p256073</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Прошу помощи допилить скрипт syslog-ng]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=256056#p256056" />
			<content type="html"><![CDATA[<p>Ответ уже был дан ранее в теме: <a href="http://linuxforum.ru/viewtopic.php?pid=255255#p255255">http://linuxforum.ru/viewtopic.php?pid=255255#p255255</a><br />Собственно конкретные ответы:<br /><a href="http://linuxforum.ru/viewtopic.php?pid=255257#p255257">http://linuxforum.ru/viewtopic.php?pid=255257#p255257</a><br /><a href="http://linuxforum.ru/viewtopic.php?pid=255337#p255337">http://linuxforum.ru/viewtopic.php?pid=255337#p255337</a></p><p>Что-то вроде<br /></p><div class="codebox"><pre><code>if  [ ! grep &#039;next generation system logger&#039; /etc/rc.d/rc.M ] ; then
    cat &lt;&lt; EOF &gt;&gt; /etc/rc.d/rc.M
    # Start the next generation system logger.
    if [ -x /etc/rc.d/rc.syslog-ng -a -x /usr/sbin/syslog-ng ] ; then
        . /etc/rc.d/rc.syslog-ng start
    fi
EOF
fi</code></pre></div>]]></content>
			<author>
				<name><![CDATA[bormant]]></name>
				<uri>https://linuxforum.ru/profile.php?id=732</uri>
			</author>
			<updated>2012-03-03T07:05:16Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=256056#p256056</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Прошу помощи допилить скрипт syslog-ng]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=256054#p256054" />
			<content type="html"><![CDATA[<p>как-то так:</p><div class="codebox"><pre><code>if [ -z &quot;$(grep &#039;next generation system logger&#039; /etc/rc.d/rc.M)&quot; ]; then
    echo &quot;# Start the next generation system logger.&quot; &gt;&gt; /etc/rc.d/rc.M  
    echo &quot;if [ -x /etc/rc.d/rc.syslog-ng ]; then&quot; &gt;&gt; /etc/rc.d/rc.M  
    echo &quot;  . /etc/rc.d/rc.syslog-ng start &quot; &gt;&gt; /etc/rc.d/rc.M  
    echo &quot;fi&quot; &gt;&gt; /etc/rc.d/rc.M
fi</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Fat-Zer]]></name>
				<uri>https://linuxforum.ru/profile.php?id=11911</uri>
			</author>
			<updated>2012-03-03T07:02:56Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=256054#p256054</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Прошу помощи допилить скрипт syslog-ng]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=256045#p256045" />
			<content type="html"><![CDATA[<p>Собственно имеется скрипт syslog-ng, в нем есть команды: <br /></p><div class="codebox"><pre><code>echo &quot;# Start the next generation system logger.&quot; &gt;&gt; /etc/rc.d/rc.M  
echo &quot;if [ -x /etc/rc.d/rc.syslog-ng ]; then&quot; &gt;&gt; /etc/rc.d/rc.M  
echo &quot;  . /etc/rc.d/rc.syslog-ng start &quot; &gt;&gt; /etc/rc.d/rc.M  
echo &quot;fi&quot; &gt;&gt; /etc/rc.d/rc.M</code></pre></div><p>которые добавляются в скрипт rc.M. <br />Как сделать так, чтобы в случае неоднократного выполнении скрипта syslog-ng, он не добавлял лишний раз вышеописанные команды, если в скрипте rc.M уже имеется строка &#039;next generation system logger&#039; ? <br /> Сам скрипт приведен ниже<br /></p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>#! /bin/sh</p><p># Install some packages<br />installpkg ./eventlog-0.2.7-i486-1gufo.tgz<br />installpkg ./syslog-ng-3.0.2-i486-1gufo.tgz<br /># Getting IP on eth0<br />IP=`ifconfig | grep &#039;inet &#039; | cut -f 2 -d &quot;:&quot; | cut -f 1 -d &quot; &quot; |grep &#039;&#039; -m 1`;<br /># Generating /etc/syslog-ng/syslog-ng.conf<br />cat &lt;&lt; EOF &gt; /etc/syslog-ng/syslog-ng.conf<br />@version:3.0<br />options { long_hostnames(off); flush_lines(0); };<br />source src { unix-stream(&quot;/dev/log&quot;); internal(); };<br />source from_all { udp (ip($IP) port(514)); };</p><p>destination to_all { file ( &quot;/var/log/HOSTS/\$HOST/\$HOST.log&quot; perm(0666) dir_perm(0755)&nbsp; create_dirs(yes) ); };<br />destination authlog { file(&quot;/var/log/auth.log&quot;); };<br />destination cron { file(&quot;/var/log/cron.log&quot;); };<br />destination daemon { file(&quot;/var/log/daemon.log&quot;); };<br />destination kern { file(&quot;/var/log/kern.log&quot;); };<br />destination lpr { file(&quot;/var/log/lpr.log&quot;); };<br />destination user { file(&quot;/var/log/user.log&quot;); };<br />destination uucp { file(&quot;/var/log/uucp.log&quot;); };<br />destination ppp { file(&quot;/var/log/ppp.log&quot;); };<br />destination iptables { file(&quot;/var/log/iptables.log&quot;); };</p><p>destination debug { file(&quot;/var/log/debug&quot;); };<br />destination messages { file(&quot;/var/log/messages&quot;); };<br />destination console { usertty(&quot;root&quot;); };<br />destination console_all { file(&quot;/dev/tty12&quot;); };<br />#destination loghost { udp(&quot;loghost&quot; port(999)); };</p><p>destination xconsole { pipe(&quot;/dev/xconsole&quot;); };</p><p>filter f_auth { facility(auth); };<br />filter f_authpriv { facility(auth, authpriv); };<br />filter f_syslog { not facility(authpriv, mail); };<br />filter f_cron { facility(cron); };<br />filter f_daemon { facility(daemon); };<br />filter f_kern { facility(kern); };<br />filter f_lpr { facility(lpr); };<br />filter f_user { facility(user); };<br />filter f_uucp { facility(cron); };<br />filter f_ppp { facility(local2); };<br />filter f_debug { not facility(auth, authpriv, news, mail); };<br />filter f_messages { level(info..warn) and not facility(auth, authpriv, mail, news); };<br />filter f_emergency { level(emerg); };</p><p>filter f_info { level(info); };<br />filter f_notice { level(notice); };<br />filter f_warn { level(warn); };<br />filter f_crit { level(crit); };<br />filter f_err { level(err); };<br />filter iptables { level(debug); };</p><p>log { source(from_all); destination(to_all); };<br />log { source(src); filter(f_authpriv); destination(authlog); };<br />log { source(src); filter(f_cron); destination(cron); };<br />log { source(src); filter(f_daemon); destination(daemon); };<br />log { source(src); filter(f_kern); destination(kern); };<br />log { source(src); filter(f_lpr); destination(lpr); };<br />log { source(src); filter(f_user); destination(user); };<br />log { source(src); filter(f_uucp); destination(uucp); };<br />log { source(src); filter(f_debug); destination(debug); };<br />log { source(src); filter(f_messages); destination(messages); };<br />log { source(src); filter(f_emergency); destination(console); };<br />log { source(src); filter(f_ppp); destination(ppp); };<br />log { source(src); filter(iptables); destination(iptables); };<br />log { source(src); destination(console_all); };<br />EOF</p><p>cp ./rc.syslog-ng /etc/rc.d/rc.syslog-ng<br />chmod 755 /etc/rc.d/rc.syslog-ng<br />chmod 644 /etc/rc.d/rc.syslog<br />#cp ./rc.M /etc/rc.d/rc.M<br />#if&nbsp; cat /etc/rc.d/rc.M | grep &#039;next generation system logger&#039;; then<br />&nbsp; &nbsp; echo &quot;# Start the next generation system logger.&quot; &gt;&gt; /etc/rc.d/rc.M<br />&nbsp; &nbsp; echo &quot;if [ -x /etc/rc.d/rc.syslog-ng -a -x /usr/sbin/syslog-ng -a -d /var/log ]; then&quot; &gt;&gt; /etc/rc.d/rc.M<br />&nbsp; &nbsp; echo &quot;&nbsp; . /etc/rc.d/rc.syslog-ng start &quot; &gt;&gt; /etc/rc.d/rc.M<br />&nbsp; &nbsp; echo &quot;fi&quot; &gt;&gt; /etc/rc.d/rc.M<br />#fi<br />killall syslogd<br />killall syslog-ng<br />syslog-ng<br />#tar -zxvf ./Python-3.1.3.tgz<br />#cd ./Python-3.1.3<br />#./configure</p></div></div>]]></content>
			<author>
				<name><![CDATA[mil612]]></name>
				<uri>https://linuxforum.ru/profile.php?id=2329</uri>
			</author>
			<updated>2012-03-03T06:39:42Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=256045#p256045</id>
		</entry>
</feed>
