Just another IT site ※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。At Your Own Risk!! TURN BACK WHILE YOU CAN
PR

【Linux】サーバー内の全ユーザーのCron設定(定期実行ジョブ)を一覧でまとめて確認する方法

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。スクリプトはAI生成のものも多いのでコピー&ペーストの際は文字コードに注意ください!

こんにちは!Linuxサーバーの構築や運用保守、日々お疲れ様です。

サーバーのメンテナンスや引継ぎの際、「このサーバーで動いている定期処理(Cron)って、全体で何が登録されているんだろう?」と調査することはありませんか?

普通に crontab -l コマンドを実行しても、今自分がログインしているユーザー(または root ユーザー)のスケジュールしか確認できません。他の一般ユーザーが個別に仕込んでいるCronまでは見落としてしまいがちです。

今回は、サーバー内に存在する「すべてのユーザーのCron設定」を漏れなく一括で確認する手順をシンプルに解説します!

スポンサーリンク
バッチ処理の自動化スキルは市場価値が高いです。今の自分の単価を調べてみませんか?
顧客常駐はもう嫌だ!社内SEへ転職するなら【社内SE転職ナビ】
Cursor・Claude Code・Codex AIスキルを学ぶなら
環境構築不要!AIエージェント開発を非エンジニアでも即実践【AI Agent Camp】

1. 結論:Cronの正体は /var/spool/cron の中にある!

Linuxシステムにおいて、各ユーザーが crontab -e で登録した設定内容は、実は特定のディレクトリの中に「ユーザー名」のファイルとしてそのまま保存されています。

そのため、管理者権限(root)を持ってそのディレクトリを覗きに行けば、全ユーザーの設定を瞬時に把握することができます。

📁 対象のディレクトリ

  • /var/spool/cron (CentOS、RHEL、Rocky Linuxなど)

  • ※UbuntuやDebian系の場合は /var/spool/cron/crontabs になります。

2. 全ユーザーのCronを一括確認する手順

それでは、実際にターミナルでの操作手順を見ていきましょう。

ステップ①:Cronの保存ディレクトリへ移動する

まずは、管理者権限(sudo など)を使って、Cronの設定ファイルが集まっているディレクトリへ移動し、ファイル一覧を表示します。

Bash

cd /var/spool/cron
ll

ステップ②:表示されたユーザー名を確認する

ll(または ls -l)を実行すると、以下のようにCronが登録されているユーザーの名前がファイル名としてズラッと表示されます。

Plaintext

-rw-------. 1 root root  150  2026-06-13 12:00 hoge
-rw-------. 1 root root   85  2026-06-13 12:05 webuser
-rw-------. 1 root root  320  2026-06-13 12:10 dbadmin

上記の場合、「hoge」「webuser」「dbadmin」の3ユーザーがCronを登録していることが分かります。

ステップ③:中身を覗いて設定を確認する

特定のユーザーの設定だけを見たい場合は、cat コマンドでそのファイルを開きます。

Bash

cat hoge

「ユーザーが多すぎるから、とりあえず登録されている全設定をスクロールしながら一気に見たい!」という場合は、ワイルドカード(*)を使ってまとめて出力するのが手っ取り早くておすすめです。

Bash

cat *

💡 知っておくと便利な応用コマンド

① 誰の設定か分かりやすく「ファイル名付き」で一括表示する

cat * だと全ての行が連続して表示されるため、大量に登録されていると「このジョブは誰の権限で動いているんだ?」と迷子になってしまいます。 そんな時は tail -n +1 * コマンドを使うのがプロの小技です。

Bash

tail -n +1 *

これを実行すると、以下のように「==> ユーザー名 <==」という見出し付きで中身を綺麗に一括出力してくれるため、調査の効率が劇的にアップします。

② システム全体のCron(/etc/crontab)も見落とさないように!

ユーザー個別のCron(/var/spool/cron)だけでなく、システム全体で動いている以下の設定ファイルも合わせて確認しておけば、サーバー内の定期処理の調査は完璧です。

  • /etc/crontab (システム全体の共通Cron)

  • /etc/cron.d/ (アプリケーション等が配置するCron)

まとめ:全ユーザーのCronは「ディレクトリを直読み」が最速!

Linuxサーバー内の定期実行ジョブを一括調査したいときは、以下の流れを覚えておきましょう。

  • cd /var/spool/cron で設定ファイルの置き場へ移動する

  • ll でCronを登録しているユーザーを一覧する

  • cat * または tail -n +1 * で中身を一括確認する

不要になった古いジョブが裏で動き続けてリソースを食っていた……なんていうトラブルを防ぐためにも、定期的な棚卸しにぜひこの手順を活用してくださいね!

タイトルとURLをコピーしました