[PR] 本記事にはプロモーションが含まれています。

【DS224+】NAS の空きが消えた原因は Synology Drive の古い版だった|約950GB を「バージョンを定期的に回転」で取り戻す

NAS の空きが Synology Drive の古い版で埋まっていた様子のイラスト DS224+

【2026年10月30日時点の情報です】

自宅の NAS(Synology DS224+)の空きが、いつの間にか 432GB まで減っていました。ボリュームは 1.8TB で、使っているのは約1.37TB です。ところが、共有フォルダの中身を足しても約130GB しかありません。残りの1TB 以上が、どこにも見えない場所に消えていました。

調べると、原因は Synology Drive が残していたファイルの古い版でした。ごみ箱を空にしても、ほとんど減りません。Drive の設定で「バージョンを定期的に回転」をオンにすると、翌朝には空きが 1.4TB に戻りました。

この記事では、SSH を使わずに DSM の「タスク スケジューラ」で NAS の中を調べた方法と、原因を突き止めて取り戻すまでの手順を、実際に出た数字のまま書きます。

No.時点使用空き
1気づいたとき約1.37TB432.5GB
2Drive のごみ箱を空にしたあと1.3TB448GB
3「バージョンを定期的に回転」をオンにした翌朝360.2GB1.4TB

この記事で使っている NAS は、2ベイの Synology DS224+ です。

※登場するユーザー名、ホスト名、IP アドレスなどは、セキュリティのため実際とは異なる架空のものに置き換えています。

場面1:共有フォルダは130GB なのに、1.37TB 使っている

DSM の「ストレージマネージャー」で、ボリューム1の使用量を見たのがきっかけです。1.8TB のうち約1.37TB(76.3%)を使っていて、空きは 432.5GB でした。

共有フォルダは homes、Windows11_BackUp、ServerBackup の3つで、中身を足しても約130GB です。どこかに、画面からは見えない大きなものがあるはずです。

場面2:SSH を使わず、タスク スケジューラで NAS の中を調べる

NAS の中を調べるなら、ふつうは SSH でログインして du を打ちます。ただ、この NAS は SSH を止めています。そこで、DSM の「タスク スケジューラ」で root のスクリプトを1回だけ動かし、結果をファイルに書き出して File Station で見ることにしました。

No.画面設定
1コントロールパネル →「タスク スケジューラ」→「作成」「予定タスク」→「ユーザー指定のスクリプト」
2「全般」タブタスク名 disk-check、ユーザー root、「有効」のチェックを外す(勝手に動かないように)
3「タスク設定」タブ「ユーザー指定のスクリプト」の欄に、下のスクリプトを貼る
4タスクの一覧disk-check を選んで「実行」。数分待つ
5File Stationhomes → devuser にできた disk-check.txt を開く
Bash
OUT=/volume1/homes/devuser/disk-check.txt
date > "$OUT"
du -xsh /volume1/* /volume1/@* 2>/dev/null | sort -h | tail -15 >> "$OUT"
btrfs filesystem df /volume1 >> "$OUT" 2>&1
chown devuser "$OUT"
  • OUT=…/disk-check.txt: 結果を書き出すファイル。自分の home の中にして、File Station で開けるようにする。
  • du -xsh /volume1/* /volume1/@*: ボリューム1の直下のフォルダの大きさを数える。@ で始まるフォルダは、DSM の画面には出ない管理用の場所。
  • | sort -h | tail -15: 大きさの順に並べて、大きいほうの15個だけを残す。
  • btrfs filesystem df /volume1: Btrfs の場所の使い方の内訳を出す。
  • chown devuser "$OUT": root で作ったファイルを、自分が開けるようにする。

結果(大きいほうだけ抜き出し)です。

Plaintext
1.1G	/volume1/@quarantine
1.8G	/volume1/@appstore
37G	/volume1/ServerBackup
47G	/volume1/homes
49G	/volume1/Windows11_BackUp
1.2T	/volume1/@synologydrive
Data, single: total=1.45TiB, used=1.36TiB

@synologydrive が 1.2TB でした。Synology Drive が、ファイルの古い版などをしまう場所です。

場面3:@synologydrive の中のどこが大きいかを見る

同じタスクのスクリプトを次に置き換えて、もう一度「実行」しました。

Bash
OUT=/volume1/homes/devuser/disk-check2.txt
date > "$OUT"
du -xh --max-depth=3 /volume1/@synologydrive 2>/dev/null | sort -h | tail -20 >> "$OUT"
echo "---- 大きいファイル(上位10)----" >> "$OUT"
find /volume1/@synologydrive -xdev -type f -size +1G -printf "%s %p\n" 2>/dev/null | sort -n | tail -10 | awk '{printf "%.1fG %s\n",$1/1073741824,$2}' >> "$OUT"
chown devuser "$OUT"
  • du -xh --max-depth=3 /volume1/@synologydrive: @synologydrive の中を3段の深さまでたどって、フォルダごとの大きさを数える。
  • find … -type f -size +1G -printf "%s %p\n": 1GB より大きいファイルを探して、大きさ(バイト)と場所を出す。
  • | sort -n | tail -10: 大きさの順に並べて、上位10個を残す。
  • | awk '{printf "%.1fG %s\n",$1/1073741824,$2}': バイトを GB に直して表示する。
Plaintext
147G	/volume1/@synologydrive/@sync/repo/1
951G	/volume1/@synologydrive/@sync/repo/7
1.2T	/volume1/@synologydrive/@sync/repo
---- 大きいファイル(上位10)----
38.8G /volume1/@synologydrive/@sync/repo/7/8/.V
44.4G /volume1/@synologydrive/@sync/repo/7/8/.G
44.4G /volume1/@synologydrive/@sync/repo/7/8/.H
(中略)
122.7G /volume1/@synologydrive/@sync/repo/7/8/.B
122.7G /volume1/@synologydrive/@sync/repo/7/8/.T
136.7G /volume1/@synologydrive/@sync/repo/7/9/.0

@sync/repo/7 だけで 951GB あり、その中に 1つで 39〜137GB のファイルが並んでいました。今の home の中身は全部で約47GB なので、これは今あるファイルではありません。以前置いた大きなファイルの、古い版や消したあとの中身だと考えられます。ファイル名(.B、.T など)は Drive が付けた管理用の名前なので、ここからは元のファイル名は分かりません。

場面4:Drive のごみ箱を空にしても、ほとんど減らない

Synology Drive の設定は、メインメニューの「Synology Drive 管理コンソール」の「チーム フォルダ」で見られます。ふだんファイルを見る「Synology Drive」とは別のアプリです。

Synology Drive 管理コンソールで、Drive が有効なのはマイ ファイル(home)だけ、バージョン数 8

Drive が有効なのは「マイ ファイル(home)」だけで、バージョン数は 8 でした。PC の Synology Drive Client も使っていません。

まず、Synology Drive の「ごみ箱」を空にしました。空きは増えましたが、少しだけです。

No.時点空き
1空にする前432.5GB
2空にしている途中434.2GB
3空にしたあと448GB
Drive のごみ箱を空にしたあとも、DS224+ のボリューム1は 1.8TB のうち 1.3TB 使用、空き 448GB

約16GB 戻っただけで、@synologydrive は 1.2TB のままでした。ごみ箱を空にして消えるのは「消したファイル」だけで、今あるファイルの古い版は消えないためです。

なお、ごみ箱には ~$(ファイル名).xlsx のような、~$ で始まる 165 バイトのファイルがたくさん入っていました。これは Excel がファイルを開いている間に作る「使用中」の印のファイルで、閉じるたびにごみ箱に入ります。大きさは数KB なので、容量には関係ありません。

場面5:バージョン エクスプローラーでは探せず、日付で突き止める

管理コンソールの「チーム フォルダ」で「マイ ファイル (home)」を選び、「バージョン エクスプローラー」を開くと、過去のある時点のフォルダの中をたどれます。右上の「削除したファイルを表示する」にチェックを入れると、消したファイルも赤い印つきで出ます。

ところが、消したファイルは大きさが表示されません。フォルダを1つずつ開いても、どれが大きいのか見分けられませんでした。

そこで探し方を変えて、repo/7 の大きなファイルがいつ書き込まれたかを、同じタスク スケジューラで調べました。

Bash
find /volume1/@synologydrive/@sync/repo/7 -type f -size +10G -exec ls -l --full-time {} + | sort -k6 > /volume1/homes/devuser/disk-check3.txt 2>&1
  • find /volume1/@synologydrive/@sync/repo/7: 951GB あった repo/7 の中を探す。
  • -type f -size +10G: 10GB より大きいファイルだけを選ぶ。
  • -exec ls -l --full-time {} +: 見つけたファイルの大きさと、書き込まれた日時を秒まで表示する。
  • | sort -k6: 6番目の欄(日付)の順に並べる。
  • > … 2>&1: 結果とエラーを、File Station で見られる場所に書き出す。
Plaintext
-rw-r--r-- 1 root root 131725306275 2025-03-16 11:43:27.139320454 +0900 /volume1/@synologydrive/@sync/repo/7/8/.B
-rw-r--r-- 1 root root 131725306275 2025-03-16 12:16:40.612760264 +0900 /volume1/@synologydrive/@sync/repo/7/8/.T
-rw-r--r-- 1 root root  15840914165 2025-03-16 12:16:45.954793022 +0900 /volume1/@synologydrive/@sync/repo/7/8/.C
(中略)
-rw-r--r-- 1 root root  55779878453 2025-03-16 18:51:57.653619045 +0900 /volume1/@synologydrive/@sync/repo/7/8/.Z
-rw-r--r-- 1 root root 146759963669 2025-03-16 18:57:01.683061404 +0900 /volume1/@synologydrive/@sync/repo/7/9/.0

10GB を超えるファイル25個(合計約950GB)が、すべて 2025-03-16 の 11:43〜18:57 に書き込まれていました。約7か月半前の1日に、とても大きなものを「マイ ファイル」に置いて、あとで消した、その中身が古い版として残っていたことになります。消えても困らないものだったので、まとめて消すことにしました。

場面6:「バージョンを定期的に回転」を120日でオンにする

管理コンソールの「チーム フォルダ」で「マイ ファイル (home)」を選び、上の「設定」を押すと、「バージョン管理」のタブが開きます。

Synology Drive のバージョン管理の設定で、バージョンを定期的に回転のチェックが外れている

No.項目設定を変える前意味
1最大バージョン81つのファイルにつき、8版まで残す
2ローテーション ポリシー古いバージョンから9版目ができたら、いちばん古い版を消す
3バージョンを定期的に回転オフオンにすると、指定した日数より古い版を消す

No.3 がオフなので、日数で古い版を消す決まりがありませんでした。一度置いて消した大きなファイルの版は、何年たっても残ります。

次のように変えて、「OK」を押しました。

  1. 「バージョンを定期的に回転」にチェックを入れる
  2. 日数は「120日」のままにする
  3. 下の「要約」に、120日より古い版を消す内容が足されたことを確かめて、「OK」を押す

120日にしたのは、直近4か月分の古い版は残しつつ、約227日前の 2025-03-16 の分は確実に消える長さだからです。今あるファイルそのもの(最新の版)は消えません。ただし、ほかのファイルも、120日より古い版は一緒に消えます。

場面7:翌朝、空きが 1.4TB に戻った

古い版を消す処理は裏で進むので、設定した直後には空きは増えません。翌朝ストレージマネージャーを開くと、使用が 360.2GB、空きが 1.4TB になっていました。

設定を変えた翌朝、ボリューム1の空きが 1.4TB に戻った

2025-03-16 の約950GB が、そのまま空きに戻ったことになります。

まとめ

No.分かったこと
1Synology Drive は、ファイルの古い版を /volume1/@synologydrive にしまう。共有フォルダの大きさには出ない
2ごみ箱を空にしても、今あるファイルの古い版や、消したあとの中身は消えない
3「最大バージョン」だけだと、日数では消えない。「バージョンを定期的に回転」をオンにすると、古い版がまとめて消える
4バージョン エクスプローラーでは、消したファイルの大きさが出ない。中身の大きさや日付は、タスク スケジューラで root のスクリプトを動かすと調べられる
5タスク スケジューラは、「有効」のチェックを外して作り、「実行」で1回だけ動かす。SSH を開けなくても NAS の中を調べられる

大きなファイルを一時的に置く場所は、Drive を使っていない共有フォルダにしておくと、同じことは起きません。

DS224+ を選んだ理由や最初の設定は「Synology DS224+ の記事」に、自宅サーバーとNASの記事の一覧は「自宅サーバー構築メモ」にまとめています。

この記事は「自宅サーバー構築メモ」の1本です。構築の手順と、運用・トラブル対応の記事は、自宅サーバー構築メモの目次からどうぞ。

このブログは、にほんブログ村と人気ブログランキングに参加しています。記事が役に立ったら、下のランキングのバナーのどれかを押して応援してもらえると励みになります。

ブログランキング・にほんブログ村へにほんブログ村

サーバー構築・運用ランキング プログラムランキング

DS224+
watasoftdevをフォローする

コメント