あるディレクトリにファイルが置かれたら何かしたい、 みたいにディレクトリを監視して処理を行いたい場合、Linux::Inotify2 が便利ですね。 もちろん、inotify が利用できる環境でしか使えませんが。 下は、ホームディレクトリの”backup”ディレクトリにファイルを置くと"backup_server"にそのファイルをscpします。 watch_and_scp.pl #!/usr/bin/perl use strict; use warnings; use Linux::Inotify2; my $watch_dir = $ENV{HOME} . '/backup'; my $inotify = Linux::Inotify2->new or die $!; $inotify->watch( $watch_dir, IN_CLOSE_WRITE | IN_MOVED_TO, s
カーネル2.6.13からファイルの状態やイベントを監視するinotifyという機能が使えるようになっています。 (カーネルの機能の一部として実装されている) 詳細は下記が参考になると思います。 inotify を使ってファイルシステムのアクティビティーを監視する @ IBM で、使ってみたら結構これが面白い。 応用すれば、あるファイルを削除されたり変更されたらアラートを発砲するとか、ディレクトリ内にどのような操作が行われたのかを見ることができます。 予断ですが、ファイル監視といえばFAM(file alteration monitor)というツールもあります。 使ったことないのですが、ファイル監視をしてくれるというものらしく、初めはファイルを監視したいという要件を満たすために、FAMを使ってみようかなと思っていたのですが、日本語の情報が乏しいのと、RedHat系OSでは提供されなくなった(
AoiMoe a.k.aしお兄P @AoiMoe inotifyのIN_MODIFYみたいに、親に何かを通知したい場合に dentry の d_parent 使ってるけど、これってハードリンクされてたらどうなんの? AoiMoe a.k.aしお兄P @AoiMoe Linuxのinotifyは最初からdentry(BSDのnamecacheに相当)のd_parentを頼りにしてるので、何も考えてない感じ。ハードリンク何ソレ、よねこれ
「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く