cronで多重起動してしまったモジュールをチェックするコマンドを教えてください。
jobsと入力しても何も表示されません。
サーバは使えるネットVPS(Linux)です。
よろしくお願い致します。
ps ax|grep sshd
で確認できませんか。
jobsはそのシェルが起動したプロセスしか表示しません。
sshd をデーモンで起動している場合はデーモン+現在接続中のものが表示されます。
(x)inetd経由で起動している場合は現在接続中のものが表示されます。
具体的にチェックして何をしたいか不明ですが、簡単なスクリプトを書けば必要な処理(プロセスを殺すなど)は可能です。
cronで多重起動しているのであれば、とりあえずプロセスツリーを眺めてみましょう。
# ps aux -H | less -S
上記を眺めて、cronによって起動されているプロセスを見つける必要があります。
見つけたら、同じ行の左から2つめのフィールドがPIDですのでそいつをkillしてやりましょう。
起動中のプロセスの確認は ps コマンドで確認できます。起動の確認をしたい名前が foobar であった場合、
#ps -ef | grep foobar
のようにすることで、実行中のプロセスをリスト表示できます。
それよりも、多重起動自体避けたいのであれば、
Cron できどうする際に、同じプロセスが起動中かどうかを確認するようにした方がよいかと思います。
LINUX プロセス 多重起動 で検索するといろいろ出てくると思いますが、起動時にファイルに情報(プロセスID等)
を出力しておいて、起動時にそのファイルをチェックするタイプが多いようですね。
以下、ご参考までに
http://d.hatena.ne.jp/zenpou/20080715/1216133151
http://gry.sakura.ne.jp/2009/02/05/%E5%A4%9A%E9%87%8D%E8%B5%B7%E...
コメント(0件)