外付けドライブの整理の手順|移す前に決める4つと運ぶ道具の違い
外付けドライブの整理でつまずく場所は、たいてい作業の中盤ではなく最初と最後です。始めるときに何も決めずにドラッグを始めてしまい、終盤で「これは移したのか、まだなのか」が分からなくなる。ここでは、移す前に決めておく4つと、コピーに使う道具ごとに何が残って何が落ちるかを、手元で測った結果とあわせて順番に並べます。作業の途中で中断しても、次に再開したときに同じところから続けられる形にするのが目的です。
移す前に決める4つ
手を動かす前に決めることは4つです。どれも5分で決まりますが、決めずに始めると後から全部やり直しになります。
1つ目は、そのドライブの役目です。完成したものを置く保管用か、作業中のファイルを置く作業用か、複製を取るための保管先か。役目が3つ混ざったドライブは、壊れたときに3つ同時に失います。
2つ目は、最上位の分け方です。年で分けるか、案件で分けるか、種類で分けるか。3つとも正解になり得ますが、基準は「探すときに最初に思い出すもの」で選びます。案件名を先に思い出す仕事なら案件、日付から遡る仕事なら年です。決め手が無いなら年にしておくと、古いものを丸ごと外すときに楽になります。
3つ目は、深さの上限です。最上位から数えて3階層までと決めておくと、迷ったときの受け皿を作らずに済みます。階層が深くなるほど、後から見たときに探せなくなります。
4つ目は、命名の形です。日付を頭に置くか末尾に置くか、区切り文字はアンダースコアかハイフンか。これは中身より一貫性が大事で、20260911_案件名_版数 のような形を1つ決めて、途中で変えないことだけを守ります。
決めた4つは、ドライブの最上位にテキストファイルとして置いておきます。半年後に同じドライブを開いたとき、自分がどういう規則で並べたのかは覚えていません。規則が書いてあれば、迷ったファイルの置き場をその場で判断できます。書いていなければ、判断するたびに新しい規則が増えて、階層が崩れていきます。
行き先の形式を、写す前に確かめる
決めた4つを実行に移す前に、行き先のドライブが今どの形式かを確認します。すでに使っているドライブなら、買ったときのまま出荷時の形式が残っていることが多く、その形式が用途と合っていないことがあります。
diskutil info /Volumes/ボリューム名 | grep "File System Personality"
返ってくるのは APFS ExFAT MS-DOS (FAT32) などの名前です。Macだけで使うドライブなら、ディスクユーティリティが既定に置いている形式が素直な選択になります。
Apple File System(APFS)はmacOS 10.13以降を使用するMacコンピュータのデフォルトのファイルシステムで、強力な暗号化、領域共有、スナップショット、高速なディレクトリのサイズ調整、および基本的なファイルシステムの向上を特徴としています。 出典: support.apple.com
注意すべきなのは、形式を変える操作が消去を伴う点です。中身が入ったドライブの形式だけを変える方法はありません。形式を変えるなら、先に別の場所へ全部退避してから消去します。写し始めてから形式が合っていないと気づくと、この退避を二度やることになります。だから確認は最初です。
古いFAT32のままのドライブには、1ファイルあたりの大きさに制限があります。動画や仮想ディスクのような大きなファイルを置くつもりなら、写す前にここで気づいておく必要があります。
重複しているファイルは、写したあとに片付ける
同じファイルが内蔵のあちこちにある状態で整理を始めると、どれが最新かを判断しながら写すことになり、手が止まります。判断と作業を同時に進めないでください。
先に全部写して、写した先で照合が終わってから、重複を潰す作業に入ります。理由は2つあります。写している最中は元が残っているので、判断を間違えても戻せること。そして、写した先に集まった時点で、同じ名前のものが隣り合って並ぶので比べやすくなることです。
比べるときは、名前と大きさだけで同じと判断しないでください。中身まで確かめるなら指紋を使います。同じ大きさで中身が違うファイルは、書き出し設定を変えて出し直した版に多く、名前も似ています。
運ぶ道具によって、残るものが変わる
ここが最も見落とされる部分です。ファイルを外付けへ写す方法はいくつもありますが、写した結果は同じになりません。macOS 26の環境で同じファイルを各方法で写し、更新日時と拡張属性がどうなったかを確かめた結果が次の表です。
| 方法 | 更新日時 | タグ・拡張属性 |
|---|---|---|
cp |
実行した時刻に変わる | 残る |
cp -p |
元のまま | 残る |
ditto |
元のまま | 残る |
rsync -a |
元のまま | 落ちる |
rsync -aE |
元のまま | 残る |
mv(別ボリュームへ) |
元のまま | 残る |
実際の値で言うと、2020年1月1日の日付を持つファイルを cp で写したコピーの更新日時は実行時刻に書き換わり、cp -p で写したほうは元の日付のまま残りました。保管用のドライブでこれをやると、中のファイルが全部同じ日付になります。古い順に並べて探す手が使えなくなるので、保管が目的なら日付を保つ方法を選んでください。
タグを使って分類している場合は、rsync -a だけが落とす側にいる点に注意が必要です。写した先でタグを確認すると、rsync -a のコピーにだけ分類用の拡張属性が付いていませんでした。-E を足すと残ります。
macOSに入っているrsyncは、よく紹介されているrsyncと別物
もう1つ、手順の記事どおりに打って失敗する典型があります。macOS 26に入っている rsync は openrsync で、rsync --version は「protocol version 29」「rsync version 2.6.9 compatible」と返します。
そのため、ネット上でよく見る rsync -aX(拡張属性を運ぶ指定)はそのまま通りません。手元で実行すると invalid option -- X で止まります。macOSで拡張属性ごと運ぶなら -E、または --extended-attributes を使います。--xattrs を前提にした手順書をそのまま写すと、ここで必ず止まります。
--progress は使えますが、日本語のファイル名は \#206\#231 のような形で出ます。進行状況は分かるものの、どのファイルを処理しているかは読めません。日本語名の多い階層を写すなら、進行状況は転送した量で見るほうが実用的です。
なお、別のボリュームへの mv は中身の移動になるため、写してから消すのと同じ時間がかかります。所有権が無効なドライブでは、移動のあとに所有者を設定できないという警告が出ることがありますが、ファイル自体は移っています。
迷ったときは ditto が扱いやすい選択です。拡張属性もアクセス制御リストも既定で運ぶので、指定の付け忘れによる取りこぼしが起きません。
順番は、測る、写す、照合する、消す
移す作業そのものは、この4つの順番で固定します。順番を入れ替えると、確認できないまま元が消えます。
測るのは、移す前の状態です。項目数と容量を控えておきます。
find 対象フォルダ -type f | wc -l
du -sh 対象フォルダ
写すのは、上の表で選んだ方法です。ここでは元を消しません。
照合するのは、写した先です。項目数と容量をもう一度測って、移す前の数と突き合わせます。数が合わないときは、隠しファイルの扱いか、名前の衝突が起きています。中身まで確かめたい重要なものは、次の形で指紋を取って比べます。
shasum -a 256 元のファイル
shasum -a 256 写した先のファイル
消すのは、照合が終わってからです。そして外付けの上で消したものは、ゴミ箱を空にするまで容量が戻りません。
照合で数が合わないときに、まず疑う先は2つあります。1つは隠しファイルです。find は名前が点で始まるファイルも数えるので、元の階層に入っていた設定ファイルの分だけ増減します。もう1つは、行き先の形式が拡張属性を直接持てない場合に作られる、点とアンダースコアで始まる連れのファイルです。これがあると、写した先の項目数だけが増えます。
容量のほうは、完全には一致しません。同じ内容でも、記録の単位が形式ごとに違うためです。小さなファイルが大量にある階層ほど差が開きます。合わせるべきは項目数で、容量は桁が合っているかどうかを見る指標だと考えてください。
途中で止まっても続けられる形にする
数百ギガの移動は一度で終わりません。接続が切れる、作業を中断する、Macを閉じる。この前提で組んでおきます。
ditto と rsync は、同じ命令をもう一度実行できる形になっています。rsync には --partial があり、途中まで送ったファイルを残して次回に引き継ぎます。Finderのドラッグでの複製は、途中で止まったときにどこまで終わったかが残りません。量が多いときは、窓での操作よりコマンドのほうが中断に強くなります。
もう1つ効くのが、対象を小さく割ることです。最上位のフォルダを1つずつ写して、終わったものを記録していく形にすると、どこまで進んだかが常に分かります。記録は手書きのテキストで十分です。1行に、写した日付とフォルダ名と照合が済んだかどうかを書いておけば、翌日の自分がどこから再開すればよいかを迷いません。
長い転送の最中にMacがスリープに入ると、そこで止まることがあります。作業中だけスリープを抑えたいなら caffeinate を頭に付けて実行する方法があり、コマンドが終わると抑制も終わります。設定そのものを変えてしまうと、戻し忘れて電力を無駄にします。
もう1点、転送中は同じドライブに別の作業をぶつけないでください。外付けは接続の帯域を作業どうしで分け合うため、写しながら同じドライブ上で検索や動画の書き出しを走らせると、どちらも遅くなり、どこまで進んだかも読めなくなります。
移し終わったら、索引の代わりを1枚置く
作業の最後に、そのドライブの目次を作っておきます。外付けは常時つながっているわけではないので、つながっていない間に中身を思い出せる手段が要ります。
find /Volumes/ボリューム名 -maxdepth 2 > ~/Documents/drive-index.txt
最上位から2階層だけの一覧なら、行数もそれほど増えません。これを内蔵ディスク側に置いておくと、ドライブを接続しなくても中身の見当が付きます。移したものを探して、外付けを順番に挿し直す時間が無くなります。
目次の先頭には、作った日付とボリューム名を1行書いておきます。ドライブが2台3台と増えたとき、どの目次がどのドライブのものかを見分ける手がかりになるからです。diskutil info が返すボリュームの識別子を控えておくと、同じ名前のドライブが2台あっても取り違えません。目次は写すたびに作り直し、古いものは上書きします。
命名の直しは、写す前に済ませてください。写した後に名前を変えると、参照している書類やプロジェクトのファイルが二度切れます。名前を整えるのが先、移すのが後です。
1回の整理で、窓を何回またいでいるか
ここまでの手順を見返すと、測るのはターミナル、写す先を決めるのはフォルダの窓、記録を残すのはテキストエディタ、と場所が分かれています。1つの階層を処理するたびに、この3つを往復します。
道具を見直すなら、まずこの往復の回数を数えるのが早道です。フォルダとターミナルとAIが同じ窓にある形なら、測ってから動かすまでが1箇所で済みます。何が1つの窓に収まるのかはできることに整理してあり、他の道具との考え方の違いは他のファイル管理との比較で軸ごとに並べています。移す作業を数日に分けるとき、出先から進み具合を確かめる方法はiPhone・iPadから続きをにあります。
よくある質問
Finderのドラッグでコピーするのと、コマンドで写すのはどちらがよいですか?
量が少なければどちらでも変わりません。数百ギガを超える移動や、途中で中断する可能性がある移動では、同じ命令をもう一度実行できるコマンドのほうが扱いやすくなります。rsync の --partial は途中まで送ったファイルを残し、ditto は再実行で差分を埋められます。
コピーすると更新日時が今日になってしまいます。どうすれば元の日付を保てますか?
cp をそのまま使うと更新日時が実行時刻に書き換わります。cp -p、ditto、rsync -a のいずれかを使えば元の日付が保たれます。保管用のドライブでは日付が並び順の手がかりになるので、日付を保つ方法を選んでください。
ネットの手順にある `rsync -aX` が使えません。なぜですか?
macOSに入っている rsync は openrsync で、-X という指定を持っていないためです。実行すると invalid option -- X で止まります。拡張属性やタグを一緒に運びたい場合は -E、または --extended-attributes を使ってください。
移したあと、元のファイルはいつ消せばよいですか?
写した先で項目数と容量を突き合わせ、重要なファイルは shasum -a 256 で指紋を比べてからです。照合の前に消すと、取りこぼしに気づいた時点で戻す先がありません。消したあとは、外付け側のゴミ箱を空にするまで容量が戻らない点も忘れないでください。