MongoとMySQLのバックアップをディレクトリに書き込むデーモンがありますが、/opt/BACKUP
どのようなデーモンなのか、いつ動作するのか、その設定がどこにあるのかはわかりません.
これらのファイルは次のディレクトリにあります。
-rwxrwxrwx 1 root root 10954766682 Aug 30 21:02 history_2013-08-26.sql.bz2
-rw-r--r-- 1 root root 22707064861 Sep 19 07:07 history.sql
drwx------ 2 root root 16384 Dec 24 2012 lost+found
drwxr-xr-x 3 root root 4096 Sep 19 03:12 mongodb
-rw-r--r-- 1 root root 6708923175 Sep 18 04:16 mongodb.0.tgz
-rw-r--r-- 1 root root 6685715560 Sep 17 04:16 mongodb.1.tgz
-rw-r--r-- 1 root root 6733542547 Sep 19 04:17 mongodb.tgz
drwxr-xr-x 5 mysql root 4096 Sep 19 06:25 mysql
drwxr-xr-x 2 root root 4096 Dec 24 2012 nobacula
drwxr-xr-x 2 root root 4096 Aug 29 04:05 tmp
mongodb.*とHistory_2013-08-26.sql.bz2を書いた人をどのように理解できますか?
答え1
直接はわかりません。あなたが持っている唯一の情報は所有者そしてファイルのタイムスタンプです。
所有者
問題のファイル所有者であるため、root
これはほとんど情報を提供しません。
タイムスタンプ - mongodb
ご覧mongodb
のとおり、バックアップはすべて基本的に同じ時間(午前4時15分)に行われました。サービス負荷が非常に少ない夜に作成が発生したため、バックアップがプロセスによってトリガされる可能性が高くなりますcron
。したがって、クローン構成を確認する必要があります。
/etc/crontab
(通常システムによって制御されるため、可能性が低い)/etc/cron.daily/
(たぶん設定によって異なりますが、私のDebian / jessieシステムではデイリープランナーによると、ジョブは午前6時25分に実行されたので、そうでは/etc/crontag
ありません。)/etc/cron.d/
(おそらく)- これ根-ユーザーのcrontabファイル(例
/var/spool/cron/crontabs/root
:crontab -l
根またはsudo crontab -l -u root
。 )
タイムスタンプ - mysql
ファイルhistory.sql
は最近(9月19日)で、非常に早く作成されました(7:07
)。 cron-jobによって作成された可能性があります(上記を参照)。
history_2013-08-26.sql.bz2
から作成されました8月30日 21:02;午後9時は、システム管理者が作業を実行する時間であり、タイムスタンプ(8月30日)とファイル名(8月26日)の違いを見つけた時間であると仮定します。ファイルが生成されたとします。手動。
答え2
誰がファイルを作成したかを知る方法はいくつかありますが、通常は事前に監視を設定する必要があります。
すべてのファイルは同じ時間に作成されるので、その時間に実行される毎日のクローンタスクを見つけてください。これはおそらくあなたに答えを与えるでしょう。
お持ちの場合BSDプロセス会計有効にすると、実行してlastcomm
ファイルが記録されたときにどのプロセスが実行されているかを確認します。プロセスアカウントは、プロセスの実行が完了した時点ではなく、プロセスが開始された時点のみを追跡するため、これは困難な場合があります。
次にファイルが作成されたときに責任者を見つける方法はいくつかあります。一つの可能性は監査サブシステム:
auditctl -A exit,always -F path=/opt/BACKUP/mongodb.tgz -S open -S rename
もう一つの可能性はinotify。例えばインクロン働く:
/opt/BACKUP/mongodb.tgz IN_MOVED_TO,IN_CREATE logger $% $@/$#