Dear Andrew, saya sudah coba jalankan program tersebut tetapi dapat response :
Usage: /etc/init.d/daemonmail {start|stop|restart} saya test via command : #perl cek.pl hal ini saya lakukan karena saya sudah masukkan ke crontab setiap menit running trus saya kill daemon mail tersebut. Ternyata servicesnya tidak jalan. Juga di skrip tersebut ada variable start_it, tetapi start_it itu apa ? apakah start_it = system('/etc/rc.d/init.d/httpd', 'start'); ? Mohon bantuannya, Kalpin E S ----- Original Message ----- From: "Andrew Hadinyoto" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, May 13, 2004 10:07 PM Subject: Re: Re[3]: [linux-programming] memonitor service > Halo, > > On Thu, May 13, 2004 at 05:45:27PM +0700, Kalpin Erlangga Silaen wrote: > > Dear all, > > > > saya sudah coba jalankan : > > #svscan /service/ > > tapi muncul berikut : > > > > supervise: fatal: unable to acquire mail/supervise/lock: temporary failure > > supervise: fatal: unable to acquire mail/supervise/lock: temporary failure > > supervise: fatal: unable to acquire mail/supervise/lock: temporary failure > > supervise: fatal: unable to acquire mail/supervise/lock: temporary failure > > supervise: fatal: unable to acquire mail/supervise/lock: temporary failure > > Memang daemontools nggak selalu cocok dengan program2 yg lain. Contoh > sendmail jadi spawn banyak process kalo pake "sendmail -bd", tapi "sshd" > jalan ok. > > Saya sendiri nggak pake daemontools. Pas pake RH7 dulu Apache sering mati > tengah malem pas logrotate jalan. Jadi saya bikin script ini. Pake Perl, tapi. > > Jalanin lewat cron. Perlu dimodifikasi untuk keperluan anda. > > --- > #!/usr/bin/perl > > use Sys::Syslog qw(:DEFAULT setlogsock); > use strict "vars"; > > my $status = "FAILED"; > my $start_it = 0; > > # ada nggak httpd.pid, kalo nggak ada, service nggak jalan. > if (! -e "/var/run/httpd.pid") > { > $start_it = 1; > } > else > { > # ada httpd.pid, tapi check dulu kalo ini bukan pid basi > my $httpd_pid = `cat /var/run/httpd.pid`; > chomp($httpd_pid); > my $result = `ps auxc | grep $httpd_pid`; > > $start_it = 1 if ($result =~ /^\s*$/); > } > > # kwit if all ok > exit 0 if (! $start_it); > > # atau restart daemon > system('/etc/rc.d/init.d/httpd', 'start'); > $status = "SUCCEED" if ($? == 0); > > # log ke syslog > setlogsock("unix"); > openlog("httpd_watchdog", "cons,pid", "daemon"); > syslog("alert", "httpd restarted by watchdog - status $status"); > closelog(); > > my $date = `date`; > > # mail kalo perlu notifikasi > open (MAIL, "| /usr/sbin/sendmail -t"); > > print MAIL <<HEREMAIL; > To: [EMAIL PROTECTED] > From: [EMAIL PROTECTED] > Subject: httpd kena restart [$status] > > HTTPD direstart: $date > [STATUS] $status > > HEREMAIL > > close MAIL; > > --- > > > dan sama sekali tidak bisa jalan. > > > > Btw...gimana menguninstall daemontools ? > > Diem-in aja. Asal "svscan" nggak dipanggil pas boot nggak bakal masalah. > > > > > Mungkin bisa saya jelaskan sedikit lagi : > > misalkan saya punya mailserver yang membuka port 25 dan 110 dan saya ingin > > buat rutin bahwa jika services ini mati maka langsung up...kalau bisa jangan > > pakai daemontools...karena sedikit rumit...saya adalah newbie...dan > > dokumennya masih sedikit, kalau bisa menggunakan bash script. > > Untuk port 110, biasanya POP3 server dipanggil lewat inetd atau xinetd. > Jadi check aja apa inetd/xinetd masih hidup. > > Have fun dan good luck :) > > Andrew... > > > > > > > Thx. -- Berhenti langganan: [EMAIL PROTECTED] Arsip dan info: http://linux.or.id/milis.php