【Xserver】サーバーパネルの「総ファイル数」が赤文字に!詳細不明な大量ファイルを特定・削除する方法

スポンサーリンク

Xserverのサーバーパネル(管理画面)を開いた時、こんな表示になって驚いたことはありませんか?

  • ディスク使用量:44853.8MB
  • 空き容量:455147.0MB
  • 総ファイル数:1181477 ❗️

「ディスク使用量(容量)」にはまだまだ余裕があるのに、「総ファイル数」だけが真っ赤な文字で警告アイコン(!)が表示されている状態です。

さらに困るのが、この「赤文字」や「!」をクリックしても何も起きないということ。

「どのフォルダにそんなにファイルがあるの?」「何を消せばいいの?」という内訳や詳細は、管理画面からは一切確認できません。

放置するとバックアップ処理が失敗したり、最悪の場合CGIやPHPが動かなくなる可能性があります。

この記事では、サーバーパネルでは教えてくれない「大量のファイルがどこに潜んでいるか」を特定し、安全に対処する方法を解説します。

WordPressはもちろん、Laravelや自作プログラム、メールなどが原因の場合の対処法も紹介します。

原因は「容量」ではなく「数(iノード)」

Xserverなどのレンタルサーバーには、ディスク容量(GB)とは別に「iノード数(ファイル数の上限)」が設定されています。

たとえファイル一つ一つが数KBと小さくても、それが100万個集まればサーバーの管理領域を圧迫します。
長期間運営しているWebサイトや、プログラムのキャッシュ生成機能によって、知らぬ間に「数の上限」に引っかかるケースが非常に多いのです。

対処法:SSHで「犯人の場所」を突き止める

管理画面で内訳が見られない以上、SSH(コマンド操作)を使ってサーバー内部を直接調査する必要があります。

「黒い画面は怖い」と思うかもしれませんが、使うコマンドは1つだけです。

コピペでOKですので、以下の手順で進めてみてください。

1. SSHでサーバーに接続する

ターミナル(Mac)やTera Term(Windows)、またはXserverの「SSHブラウザ」機能を使ってサーバーにログインします。

ログイン直後の場所(ホームディレクトリ)から移動せずに、そのまま次の手順に進んでください。

※こうすることで、まずは「どのドメイン(Webサイト)がファイル数を圧迫しているか」を特定できます。

2. 調査用コマンドを実行する

以下のコマンドをコピー&ペーストしてエンターキーを押してください。

du -a | cut -d/ -f2 | sort | uniq -c | sort -nr

3. 結果を確認して、フォルダを移動する

コマンドを実行してしばらく待つと、以下のように「ファイル数が多いフォルダ順」に並び替え表示されます。

 850302 example.com     <-- このドメインが怪しい!
 120500 sub.example.com
  30200 test-site.com
   5200 Maildir

この結果から、今回は example.com が原因だと分かります。

原因のフォルダ(ドメイン)が分かったら、cd コマンドでその中に入り、再度同じ調査コマンドを実行して「深掘り」していきます。

Bash

# 1. 犯人のフォルダの中に入る
cd example.com

# 2. もう一度調査コマンドを実行
du -a | cut -d/ -f2 | sort | uniq -c | sort -nr

これを繰り返していくことで、最終的に「ファイルが大量にある犯人のフォルダ」をピンポイントで突き止めることができます。

実録:よくある原因と「大量ファイルの正体」

調査を進めると、以下のようなパターンに分類されることが多いです。

ケースA:プログラムのキャッシュ・ライブラリ(非WordPress含む)

WordPressに限らず、Webアプリを運用している場合によくあるケースです。実際にあった例を見てみましょう。

【実際の検出例】

 507517 cache
  13606 vendor
    726 mark
    255 sitemaps
    115 img
  • cache フォルダ(50万ファイル!)
    • 正体:
      Smarty, Twig, Bladeなどのテンプレートエンジンや、フレームワークが生成したキャッシュファイル。
    • 対処方法:
      本来は一時的なファイルのはずが、自動削除されずに無限に増殖している状態です。
      FTPでは削除しきれないため、SSHで rm -rf cache/* 等を実行して一掃しましょう
      (※必要なファイルが無いか確認必須)。
  • vendor フォルダ
    • 正体:
      Composerなどでインストールしたライブラリ群。
    • 対処方法:
      開発に必要なファイルですが、ファイル数が非常に多いため、使っていない古いテスト環境やプロジェクトが放置されていないか確認しましょう。

ケースB:WordPress特有の問題

  • ① キャッシュプラグインの残骸 (wp-content/cache/)
    • サイト高速化プラグインが生成したHTMLファイルが数万個溜まっているケース。プラグイン設定からクリアするか削除します。
  • ② 画像の自動生成サムネイル (wp-content/uploads/)
    • 画像を1枚アップするたびに、サイズ違いの画像が自動で10枚近く生成されているケース。不要なサイズ設定を停止し、過去分を整理します。

ケースC:意外な盲点「メール」

ドメイン直下ではなく、ホームディレクトリの Maildir が膨れ上がっていることがあります。

  • 場所:
    Maildir フォルダ
  • 正体:
    迷惑メールや、システムからの自動通知メール(Cronの実行結果など)。
  • 対処方法:
    サーバーのメールボックスにログインして削除するか、使っていないメールアカウント宛に大量のスパムが届いていないか確認しましょう。

まとめ:クリックできないならコマンドで見るしかない!

Xserverのパネルで「総ファイル数」が赤くなっても、管理画面上では何もできません。

WordPressを使っている人も、そうでない人も、以下の手順は共通です。

  1. SSHで接続する
  2. 魔法のコマンド du -a | cut -d/ -f2 | sort | uniq -c | sort -nr を打つ
  3. 多い場所を特定して、キャッシュや不要ファイルを削除したりする。(必要なファイルは絶対に消さないように!)

以上。

コメント

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