Linuxで稼働しているサーバのデーモン(dns, httpd, sendmail等)が正常に作動しているかどうか判定して、自分の携帯に作動していないことが判明したらメールを送付するようなshelscripの例などがどこかURLに公開されておりますでしょうか。前回pingを用いてサーバの稼働を確認する方法を教えていただきましたが、使用している安心感がかなりあります。各ソフトの稼働状態が自動で携帯に入るので在ればこれは究極の監視ツールになるのでは無いかと思います。Unix, Shellscript超初心者です。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

お久しぶりです。

yostyです。
前回は低レベルなスクリプトでお手数をおかけしてしまいましたが、
こりずに発言させていただきます。

今回のスクリプトは、前回と違い、自分自身のマシンで実行します。
また、一度メールを送っても終了せず、監視を続けます。
以下では30分ごとを指定しています。sleepの後ろを書き換えてください。

/etc/rc.d/init.d/ に起動ファイルがあるものしか対応出来ません。
for target in の後ろに、必要な物を/etc/rc.d/init.d/ から選んで書いてください。
プロセスが死んでいる場合は、メールだけでなく、自力で起動もさせるようにしました。

/etc/rc.d/init.d/ 以外のものもとなると、
ps ax | grep $target
を使う方法がありますが、syslog等、自分自身ではないプロセスに関連して文字列が出てくることもありますので、こちらのやり方を選びました。
________________________________________________________________
#!/bin/sh

while [ 0 ]
do
for target in named httpd syslog crond xinetd sshd
do
if /etc/rc.d/init.d/$target status &> /dev/null
then
:
else
/etc/rc.d/init.d/$target start &> /dev/null
echo $target was dead | mail user@address.com
fi
done
sleep 1800
done

exit 1
________________________________________________________________

なお、このスクリプトだけでは、プロセスに問題がないのか、マシン自体が落ちてしまって、スクリプトが動いていないのかの区別が付きませんので、前回のpingのスクリプトと会わせてお使い下さい。

プロセスが動いていることと、正常に動いていることとは同じではないので、あくまで補助的なものと考えてください。
    • good
    • 0
この回答へのお礼

貴重なお時間を頂きまして、前回に引き続いて御世話になります。ご記載頂きましたように書きまして、ソフトを停止したところ携帯に停止している旨のメールが入りました。このようなShellscriptが書けるようになるにはどんな本を読んで、どのように勉強すれば良いのでしょうか。ご教授頂ければ幸いです。本当に有り難うございました。これからはパソコンを持ち歩いて時々アクセスするなどと言う作業から多少は解放されそうです。

お礼日時:2001/12/11 12:57

でもさ、PINGじゃ意味ないと思うんだけど。

だってNICが生きてるかどうかを確認してもDeaomは見えないジャン。なら、netstatとか自分にポートスキャンをかけて確認するほうがいいんじゃない?
でもね、SMTPが死んでたら、DNS、HTTPDが生きててもメールで報告はできないから、違うドメインのSMTPじゃないとだめじゃない?

ちょっと冷たいかもしれないけど、これは既存技術でこの手のソフトはいっぱいあるので究極ではなかったりする・・・しかも、この手の監視ソフトは動作が怪しいというか、監視間隔によって、ちょっとしたトラフィックもダウンと判断するよ
    • good
    • 0
この回答へのお礼

有り難うございました。

お礼日時:2001/12/11 13:00

perlのNet::telnet等を使用して、直接サービスに接続して稼動を確認するのが良いでしょう。



たとえば、wwwなら「telnet remotehost 80」で接続できますので、接続後、「GET /hidden_index.html」等として正しくページが取得できるかどうかを確認すれば良いでしょう。

まぁ、面倒なら有償のリモート監視サービスを契約するほうが早いかも、、、

#ガンバレ!!
    • good
    • 0
この回答へのお礼

有り難うございました。今後もよろしく御願いいたします。

お礼日時:2001/12/11 12:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QApache,sendmail,Mysqlを別々のサーバーで運用する方法

Apache,sendmail,Mysqlを別々のサーバーで運用することを考えていますが、PHP等で各サーバーのパスを指定する場合はどういう記述になるのでしょうか。

Aベストアンサー

PHP が Apache の DSO モジュール(mod_php) の場合、Apache の稼動サーバと PHP の稼動サーバを分けるのは難しいだろうと思います。PHP が CLI 版なら違うかもしれませんが、分けるメリットは感じられないですね。

sendmail に関しては、メールサーバを別に、という意味ですよね? MySQL も DB サーバを別に立てて、そのサーバとどうやって通信するか、という意味でよいでしょうか?

であれば、PHP の設定、というよりも PHP で書くアプリケーションの書き方次第だと思います。メールサーバ絡みの件は PEAR というキーワードで検索し、DB サーバに関しては MySQL サーバのドキュメントを参照する方がベターじゃないですかね。

# 頑張ってください。

QUNIX, MS-DOS, WINDOWSの関係は?

 GUIになれてしまっていますが、MS-DOSの世界に入っていくことが必要になるときもありますよね。先日も新しいPCを職場のLANにつなぐとき、作業担当者はMS-DOSの世界に入って作業をしていました・・・WINDOWSというOSとMS-DOSの関係って、どう考えたらいいんでしょうか。
 それから、UNIXとの関係も知りたいのですが。

 丁寧に説明していただいたら長くなってしまわざるを得ないのでしょうが、ごく簡単に教えていただければ幸いです。

Aベストアンサー

こんにちは、honiyonです。

 UNIXも、MS-DOSも、MS-WINDOWSも見た目が違うだけで出来る事は一緒です。
 OSの基本的な要素は、メモリ管理や、プログラムの起動、終了管理になりますが、どれでもこれは出来ます。
 ワープロや、表計算ソフト等、各種ソフトウエアは、OSに依存し、全てのOSで動くという事はありません。UNIX用、MS-WINDOWS用、MS-DOS用など、各OS専用のソフトが存在します。

 但し、MS-DOSとMS-WINDOWSについては密接な関係があり、この2つのOSはいつも一緒になっています。厳密に言えば、MS-WINDOWS NT系ではMS-DOSは存在しないのですが、MS-DOSのエミュレーターのような物が同梱されており、MS-DOSの一部プログラムが動作出来る仕組みになっています。
 MS-DOSで、MS-WINDOWS用のソフトが起動できたり、またその逆も可能です。MS-DOS用のソフトを起動する様命令すれば、勝手にMS-DOSが開いたりします。
 GUIでOSに命令するか、CUIでOSに命令するか選択できる、というようなイメージでしょうか?(ちょっと違う?

 さて、UNIX, MS-DOSは、CUI、MS-WINDOWSはGUIになります。GUIは、視覚的に操作が可能な反面、複雑な命令を与えるのは面倒です。CUIは全てコマンドで命令しますが、このコマンドをいくつか組み合わせて複雑な命令を与える、なんていう事も出来ます。 また、CUIはキーボードで操作するので、的確に命令を与える事が出来ます。 CUIに慣れると、マウスをコロコロ転がして命令するのが煩わしく思えてしまう事があります。因みにシステムに関わる一部のプログラムは、CUIで作成されているという事があります。特に文字出力の多いものは、ウインドウ表示にする理由がなく、CUIで出力した方が便利だし、シンプルだからです。 そのような理由もあって、LANの作業担当者はMS-DOSで作業をしたのでしょう。

 因みに最近UNIXもGUI化されている・・・ように見えますが、あれは X-WINDOW SYSTEMという、UNIX向けのGUIソフトです。UNIXの基本はCUIであり、これは今も変わりません。最近のLinux等のディストリビュージョンがX-WINDOW SYSTEMを標準でインストールし、起動するので、GUI化されたように見えます。
 GUI, CUIはそれぞれ一長一短であり、双方は共存していくと思います。

 なんだか支離滅裂な内容になっちゃった気がしますが・・・せっかく書いたので送信します笑

 こんなのでよければ、参考になれば幸いです(..

こんにちは、honiyonです。

 UNIXも、MS-DOSも、MS-WINDOWSも見た目が違うだけで出来る事は一緒です。
 OSの基本的な要素は、メモリ管理や、プログラムの起動、終了管理になりますが、どれでもこれは出来ます。
 ワープロや、表計算ソフト等、各種ソフトウエアは、OSに依存し、全てのOSで動くという事はありません。UNIX用、MS-WINDOWS用、MS-DOS用など、各OS専用のソフトが存在します。

 但し、MS-DOSとMS-WINDOWSについては密接な関係があり、この2つのOSはいつも一緒になっています。厳...続きを読む

QWin, Mac, Unix系あなたならどれを勧めます?

Winは、Windows3.1, 95, 98SE, 2000, XP
Macは、漢字talk7.1, 7.5, 8.1, 8.6, 9.0, X
Unix系は、SunOS4.2, Solaris2.4, Linux
と趣味や仕事でそれぞれ平行して10年くらい使っています(それ以前はMS-DOS)。一昔前ならそれぞれのOSに色があって得手不得手があり、目的に応じて人に勧めることができたのですが、今となっては、プライベートで使う分にはどれでもいいような気がしています。

ちょろっとWebサーバ立てたりするくらいなら、どのOSでもApacheが使えるし、ネットワークでファイルを共有するのも簡単だし、メールやWebブラウジングに至っては話することがないくらいです。

新しくPCを買う友人がどのPC(OS)がいいか真剣に迷っています。私は、「最近の機種はどれを選んでもCUPパワーは十分だし、使い勝手もそんなに変らないから、メモリを沢山積んで後は見た目で選んだら」と本心でアドバイスしていますが、どうも納得いかないようです。

そこで質問ですが、皆様ならこられのOSのうちどれを勧めますか? そしてその理由はなんですか?
友人の背中を一押しする素敵な回答お願いします。

Winは、Windows3.1, 95, 98SE, 2000, XP
Macは、漢字talk7.1, 7.5, 8.1, 8.6, 9.0, X
Unix系は、SunOS4.2, Solaris2.4, Linux
と趣味や仕事でそれぞれ平行して10年くらい使っています(それ以前はMS-DOS)。一昔前ならそれぞれのOSに色があって得手不得手があり、目的に応じて人に勧めることができたのですが、今となっては、プライベートで使う分にはどれでもいいような気がしています。

ちょろっとWebサーバ立てたりするくらいなら、どのOSでもApacheが使えるし、ネットワークでファイルを共有するのも簡...続きを読む

Aベストアンサー

私の経験から言うと

・素人はコンピュータの購入に際して明確な目的を持ってはいない
「とりあえずコンピュータを使ってみたい」という人は減りましたが、「インターネットと電子メールがしたい」という人はまだまだいます。
(インターネットと電子メールってなんだよ!と言う突っ込みは素人には禁止)
ほとんどの人は「コンピュータを使うこと」事態が目的であり、中には「コンピュータを買うこと」、「買うコンピュータを選ぶこと(迷うこと?)」が目的になってしまうタイプの人もいます。

・情報過多になる人は「情報過多の状態に自分を追い込むこと」に喜びを感じる
自分で処理しきれないくらいの情報を集めて混乱し「どう思う?」と人に聞いてくるが、そこで得られたアドバイスも実は【新しい情報】にすぎないんですね。
結局、混乱状態は収拾がつかないわけです。
でも、収拾ついてないのになんか「うれしそう」だったり…

もし友人の方が「情報過多に喜びを感じるタイプの人」ならWindows系のOSがお勧めです。
世の中に流れているパソコン情報の多くはWindowsに関連する情報です。

自作道に引きずり込めばもっと恐ろしい情報の渦に溺れることもできます。

私の経験から言うと

・素人はコンピュータの購入に際して明確な目的を持ってはいない
「とりあえずコンピュータを使ってみたい」という人は減りましたが、「インターネットと電子メールがしたい」という人はまだまだいます。
(インターネットと電子メールってなんだよ!と言う突っ込みは素人には禁止)
ほとんどの人は「コンピュータを使うこと」事態が目的であり、中には「コンピュータを買うこと」、「買うコンピュータを選ぶこと(迷うこと?)」が目的になってしまうタイプの人もいます。

・情報過...続きを読む

Qturbolinux7.0のsendmail,popについて

TBL7.0でsendmailを構築しました。自分以外のドメインのアドレスには問題なく送信できるようになったのですが、自分のドメインのアドレスへは送信できません。

これってPOPサーバがおかしいと考えるべきでしょうか?そもそも最初からPOPサーバはインストールされているものと思っているのですが、ひょっとして自分でインストールの必要あり?

ちなみに
/etc/xinetd.d/pop-3

disable = no
にしています。

根本的に理解していない部分があります。
POPサーバをインストールしていなくても、メールサーバは自分のドメイン宛なら受け取ってどこかに格納するのかどうか?
この部分を理解していないのでSendmailかPOPかの切り分けが出来ず困ってます。

どなたか助けてください。

Aベストアンサー

前にも同じ質問にかきましたが、
sendmail.defの
ACCEPT_ADDRSの所でmaihost.xxx.co.jpのあとに空白で区切って
自ドメインを明示的に追加しないと、自ドメイン当てのメールを受け取ることができません。
あとDNSゾーンファイルのMXレコードにこのホストの名前が記述されて
なければいけません。

QLinux サーバのユーザ情報を他のサーバへ

今回、サーバのOSをLinuxからRedHatに変更しようと思っています。
そこで、質問なのですが、ユーザ情報をそのまま別サーバへ移すには、
どうしたら良いのかお伺いしたいのです。
単純にpasswdファイルやgroupファイルのコピーではダメだと思うのですが、
どうしたら別のサーバへユーザ情報を移せるのかわかりません。
ホームディレクトリを作成するには、passwdファイルを作成しなおす必要がありますよね?
しかし、大量のユーザを手で入力するのは無理があるし、
タイプミスを考えるとあまり現実的ではありません。
更に、ユーザのパスワードはユーザが管理しているので初期値と変わっている可能性があり、
管理者にはわかりません。
パスワード情報を正しく取り出し、ユーザ情報を別サーバに同じ内容で移すにはどうしたらよいでしょう?
どなたか教えていただけませんでしょうか?

Aベストアンサー

ユーザアカウントとホームディレクトリの移動「だけ」であれば、
/etc/shadowもコピーしたほうが良いでしょう。
コピー後、一度vipwを実行し書き込んでおけば大丈夫でしょう。
後は、ユーザのホームディレクトリをtarで移動する程度でOKなはずです。

まぁ、UNIXが複数台ある場合はNIS+NFSで一括管理したほうが楽です。

P.S.
パスワードフィールドから、元のパスワードを割り出すことは出来ません。逆変換は不可能です。
総当たりで探すしかありません。


このカテゴリの人気Q&Aランキング

おすすめ情報