宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
「サーバーのファイルが知らないうちに変更されていたかもしれない」
「直近24時間以内に変更されたファイルだけを一覧表示したい」

Linuxサーバーの管理で、ファイルの変更履歴を確認するのは重要なセキュリティ確認作業です。

この記事では、find コマンドの -mtime オプションを使って24時間以内に変更されたファイルを検索する方法を解説します。
時間単位で検索する -mmin、変更日時でファイルを比較する -newer まで順番にまとめました。
【この記事でわかること】
・find パス -mtime -1 で24時間以内に変更されたファイルを検索できる
・-mtime -1 は「1日未満」、-mtime 1 は「1日以上2日未満」を意味する
・find パス -mmin -60 で60分以内に変更されたファイルを検索できる
・find パス -newer 参照ファイル で特定ファイルより新しいファイルを検索できる

「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

find -mtime の使い方

-mtime オプションは「ファイルの更新日時(mtime)が指定した日数以内かどうか」でファイルを絞り込みます。

数値の解釈のしかたに注意が必要です。
-mtime -1:1日未満(24時間以内)に変更されたファイル
-mtime 1:1日以上2日未満に変更されたファイル
-mtime +1:1日より前に変更されたファイル

1. 24時間以内に変更されたファイルを検索する

# /dev 配下で24時間以内に変更されたファイルを検索する [pakira@Dolphin pakira]$ find /dev -mtime -1 /dev/pts/1 # /var/www 配下で24時間以内に変更されたファイルを検索する [root@Dolphin ~]# find /var/www -mtime -1 -type f /var/www/html/index.html

2. 1日以上2日未満に変更されたファイルを検索する

# 1日以上2日未満に変更されたファイルを検索する [root@Dolphin root]# find /root -mtime 1 /root/.bash_history

3. 2日以上前に変更されたファイルを検索する

# 2日以上前に変更されたファイルを検索する [root@Dolphin root]# find /root -mtime +2 /root/.bash_profile /root/.bashrc

分単位で検索する(-mmin)

-mtime は日単位ですが、-mmin は分単位で指定できます。

# 60分以内に変更されたファイルを検索する [root@Dolphin ~]# find /var/log -mmin -60 -type f /var/log/messages /var/log/secure # 10分以内に変更されたファイルを検索する [root@Dolphin ~]# find /etc -mmin -10 -type f

特定ファイルより新しいファイルを検索する(-newer)

-newer オプションを使うと、指定したファイルより新しいファイルを検索できます。

# /tmp/ref.txt より新しいファイルを /var/www 配下から検索する [root@Dolphin ~]# find /var/www -newer /tmp/ref.txt -type f /var/www/html/index.html /var/www/html/style.css

応用:変更されたファイルの詳細を表示する

-ls オプションを付けると、変更日時を含む詳細情報を表示できます。

# 24時間以内に変更されたファイルの詳細を表示する [root@Dolphin ~]# find /var/www -mtime -1 -type f -ls 1234567 4 -rw-r--r-- 1 root root 2048 Apr 4 15:30 /var/www/html/index.html 1234568 8 -rw-r--r-- 1 root root 4096 Apr 4 14:20 /var/www/html/style.css

本記事のまとめ

やりたいこと コマンド
24時間以内に変更されたファイルを検索する find パス -mtime -1 -type f
N日以内に変更されたファイルを検索する find パス -mtime -N -type f
N日以上前に変更されたファイルを検索する find パス -mtime +N -type f
N分以内に変更されたファイルを検索する find パス -mmin -N -type f
特定ファイルより新しいファイルを検索する find パス -newer 参照ファイル -type f
変更ファイルの詳細を表示する find パス -mtime -1 -type f -ls
find -mtime を使いこなせると、いつ・どのファイルが変更されたかを素早く特定できます。
セキュリティチェックや障害原因の調査で必ず役立つコマンドです。

findコマンドで時刻ベースの検索を使いこなし、変更履歴の追跡を素早く行う

直近24時間以内に変更されたファイルを即座に特定できると、障害発生時の原因調査が大幅にスピードアップします。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として20年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。