外付けHDDのtimemachineデータを新しいHDDに移行しようとしたところ容量が足りないとアラートがでる
timemachine用の外付けHDDを新しいHDDに交換して、データの移行(ドラッグコピー)を試みましたが
「情報を見る」で約750GBのデータが新しいHDD(1TB)にドラッグコピーしたところ容量が足りないとアラートが出てコピーできません。
検索してもこれといった解決策が見つからないのでここで質問します。ご存知の方よろしくお願いします。
timemachine用の外付けHDDを新しいHDDに交換して、データの移行(ドラッグコピー)を試みましたが
「情報を見る」で約750GBのデータが新しいHDD(1TB)にドラッグコピーしたところ容量が足りないとアラートが出てコピーできません。
検索してもこれといった解決策が見つからないのでここで質問します。ご存知の方よろしくお願いします。
Time Machineのバックアップは最新のバックアップを取るのが主な目的で、過去のバックアップをキープするのはおまけ機能だと思っています。
Time Machine用のドライブが不調になった場合、新しいドライブに一からバックアップするのがいいと思います。
Time Machineのバックアップデータの容量が見る状況により異なるのは仕様だと思います。
現在のmacOSではドライブ上のパージ可能な領域は実データが存在していても、ファインダーはそれらを空き領域として表示します。それと似たような事でしょう。
Time Machineのデータの中は非常に複雑な構造でファイル間のリンクが多数貼られています。
Time Machineのバックアップデータはユーザがそれをファインダーで操作しない、つまりTime Machineのアプリ経由で復元するのが前提(仕様)ですね。
Time Machineのバックアップは最新のバックアップを取るのが主な目的で、過去のバックアップをキープするのはおまけ機能だと思っています。
Time Machine用のドライブが不調になった場合、新しいドライブに一からバックアップするのがいいと思います。
Time Machineのバックアップデータの容量が見る状況により異なるのは仕様だと思います。
現在のmacOSではドライブ上のパージ可能な領域は実データが存在していても、ファインダーはそれらを空き領域として表示します。それと似たような事でしょう。
Time Machineのデータの中は非常に複雑な構造でファイル間のリンクが多数貼られています。
Time Machineのバックアップデータはユーザがそれをファインダーで操作しない、つまりTime Machineのアプリ経由で復元するのが前提(仕様)ですね。
> HDDが不調で寿命に近くなり、余儀なく新しいHDDに変更しなくてはならない...
古いのは捨てる方が良いと思います。新しいディスクでtimemachineを新たに始めれば良いと思いますけど。
> 実測(「情報を見る」で見た容量)とコピーした時の容量が変わってしまう
ディスクのフォーマットは同じですか?
ディスクのフォーマットが違うと、実際に必要な容量は変わります。exfatとかだとセクターサイズが固定で大きい(ディスク容量が大きいほどセクターサイズも大きくなります)ため、無駄なスペースがいっぱいできます。そのため、macos拡張で、例えば、100gbとされてるものでも、exfatにコピーしようとすると200gb以上の容量が必要なこともあります。timemachineディスクに使うなら、exfatにはしてないとは思いますけど。
> 例えばTM用の外付け HDDが不調で寿命に近くなり、余儀なく新しいHDDに変更しなくてはならないときはどうしたらよいでしょうか。
別のバックアップディスクに Time Machine バックアップを転送する方法
https://support.apple.com/ja-jp/HT202380
Finder によるコピペは正しい方法としてサポート記事に載ってます。2020年11月12日版で「この記事はアーカイブ済みで、これ以上更新されることはありません。」となってしまったので今後は通用しないのかもしれませんが、Mojave だったら大丈夫のような気もします。(新しくやり直した方がトラブルは起きにくいとは思いますが...)
> 実測(「情報を見る」で見た容量)とコピーした時の容量が変わってしまうのはなぜでしょうか。
データが HFS Plus 圧縮されているとすれば Finder によるコピペでサイズが大きくなるということはあり得ます。(単なる思い付きなので外してるかもしれません)
> 新しいHDD(4TBのうち1TBを当てた)
Time Machine 用には他のデータを入れずに一台丸ごと使った方が良いと思いますよ。
> 2TのHDDを使っていたのだから新しいHDDも1Tではなく2Tだったらよかった
そうです。
でも、2Tならokで1Tではダメということですと、inodeを相当使ってるということですから、おそらく2Tのディスクを使ってもバックアップは1.5T以上にはできないということです。
そういう意味では、macos拡張でやる限りは、あまりtimemachineを注ぎ足して使わない方が良いということかもしれません。ある程度のところで新しくする方が無難ということです。
> Mojaveでもtimemachine(TM)用のフォーマットはAPFSの方が良い
残念ながらmojaveではtimemachineディスクのフォーマットはmacos拡張しか利用できません。
timemachineディスクにapfsを利用できるのはbig surからです。
実際にどれだけのinodeを使ってるかは、ターミナルでdf -i とすると分かります。
既存のtimemachineディスクと、新しくする予定のディスクを繋いだ状態で、ターミナルで
df -hi
とした結果を出して貰えば、inode数がどうなってるかはっきりします。
Time Machineのデータはかなり複雑な構造をしていますので、ファインダーでのコピーは行わないでください。
トラブルのもとです。
また、データ保存とバックアップを同じドライブに行うのは、運用として間違えています。
それらはドライブを分けるべきです。
今回の件であれば、2Tのドライブ全体をTime Machin専用で使い続け、新しい4Tのドライブをデータ保存用(あるいはその逆)にするのがいいと思います。
Time Machine用のドライブを変更する場合、新たに一からバックアップする方がトラブルは少ないと思います。
容量が増える件はタイムマシンのバックアップが特殊なことをしているからです。
バックアップファイルを見て貰えばわかると思いますがどの日付のバックアップをみてもすべてのファイルがある様に見えます。
でもそんなことをすると変更されていないファイルを複数保存することになり容量がいくら合っても足りません。
そこで同一のファイル(内容が変わっていない場合)はハードリンクという機能を使って実体は1個だけど複数ある様に見せています。
(現在のafps形式もハードリンクなのかは未確認です)
普通のコピーではこれが再現されないので別々のファイルとしてコピーしようとして容量が増えてしまうのです。
追記
タイムマシンのデータには使え無いと思いますがunixなら tar コマンドを使うとハードリンクもコピーできたはずです。(うろおぼえ)
容量があるのに、足りないと言われるのはinode数(inode数が何たるかはググって調べてください)が上限に達してるためと思われます(unixではよくあることです。macosはunix由来ですので、その辺は基本的に同じと思います)。既存のtimemachineディスクは容量が大きかったので、inode数も十分あったので、収容できたけど、新しいtimemachineディスクは容量を半分にしてるので、inode数も半分になってしまってます。このため、容量的には十分のはずでも、inode数が足りなくなってコピーできないと言われるのでは?
ここで注意すべきは、macos拡張ではinode数は32bitですが、apfsでは64bitになってることです。big surならapfsをtimemachineディスクに利用することもできますので、big surにして、既存のバックアップディスクをapfsにフォーマットしたディスクにならコピーできるかもしれません。big surにはまだバグも多い感じもありますので、実際にやってみたらダメという可能性もありますけど。
#inode数が足りない理由に関する記述を少し変更しました。
> 「膨らんだTMデータ」はどこにいたのだろうか
原因がinodeの不足なら、膨れ上がった容量は、どこか別のところにいたわけではありません。新ディスクではinodeが十分でなかったというだけです。
大雑把に言えば、ファイル一つに対してinode一つ消費します。なので、小さなサイズのファイルが多数あれば、容量から想定されるよりはたくさんのinodeを消費します。また、timemachineではバックアップしてるファイルに変更がなければinodeだけ消費しますので、これも容量の割にはたくさんのinodeを消費する原因になります。よく調べてないけど、macos拡張ではセクターの数(ディスクの容量)から一定の仮定のもとに算出されるinodeの数を用意してるのではないかと思います(古いシステムではそうだったので)。なので、ファイルがある程度大きければinodeの消費は少ないですが、小さなファイルが多数あると、同じ容量でも相対的にたくさんのinodeを消費します。macosの場合、サイズの小さなファイルをいっぱい作りますから、その点でもinodeは多く消費します。
上に書いたターミナルのコマンドを利用してinodeの数を調べてみればよりはっきりします。
gaitiro さんによる書き込み:
普通のコピーではこれが再現されないので別々のファイルとしてコピーしようとして容量が増えてしまうのです。
Finder による複製でもハードリンクは保持されるようですよ。(個々のファイルを複製する場合はおっしゃるとおりですが...)
$ tree --inodes -h /Volumes/x1
/Volumes/x1
└── [ 37 170] root
├── [ 39 136] dir1
│ └── [ 41 954M] xxx.dmg
└── [ 42 136] dir2
└── [ 41 954M] xxx.dmg
/Volumes/x1/root を /Volumes/x2 に Finder でコピペ
$ tree --inodes -h /Volumes/x2
/Volumes/x2
└── [ 119 170] root
├── [ 121 136] dir1
│ └── [ 123 954M] xxx.dmg
└── [ 124 136] dir2
└── [ 123 954M] xxx.dmg
HFS Plus 圧縮云々は間違いのようです。先程適当なファイルで試したところ、Finder による複製では HFS Plus 圧縮も保持されるようです。となると、なぜサイズが大きくなるのかはちょっと分かりません。
ところで、ハードリンクのコピーは tar でもできますが、「複製」ということなら pax の方が良いかもしれません。ただ、どちらにしても、ファイルの作成日情報が保持されないという別の問題があります。rsync v3 系なら大丈夫ですが、自分でインストールしなければならないのでハードルちょっと高め...。
# 投稿内容を若干変更しました
先頭にiとついてるのはinodeに関する数です。iusedは使用済のinodeの数、ifreeというのは使ってないinodeの数、%iusedというのは使用率(全体の何%が使われてるか)です。%ifreeと書かれてますが、うちのでみる限り、%ifreeというのはないです。Mounted onはマウントされてるディレクトリー(フォルダー)です。実際の数字を出せませんか?diskutil listの結果と一緒に出してもらえれば、問題のtimemachineディスクがinode不足かどうかすぐ分かります。
それが…新たにやり直した方が良いとのことで、移行は諦めて旧TM用HDDはフォーマットしてしまい、
新TM用HDDはすでに新しいバックアップがスタートしています。
ちなみに旧HDDは退避していたデータ(約1TB)を戻して取り外してしまいました。
それでもシステムと外付けのTM用HDDだけの「表」をお見せした方がいいですか。
見せるとして個人情報の観点で、ユーザー名(コンピュータ名)のみぼかせばいいですか。
追記です。
もし、過去のすべてのバックアップをキープしたいのであれば、それに特化したバックアップ用のシステムを使うのがいいと思います。
私は以前、仕事ではRetrospectを使って、テープメディアにバックアップをとっていました。
(まだまだHDDがすごく高価だったのですよ)
これであれば差分バックアップで過去のデータが全て残っていますので、バックアップ開始当初からの全てのファイルを復元できます。
なんのためにその移行を?
以前のHDDは2TBで保存データと共存していましたが保存データが多すぎてバックアップに影響が出てしまったため、新しいHDD(4TBのうち1TBを当てた)に変えました。
外付けHDDのtimemachineデータを新しいHDDに移行しようとしたところ容量が足りないとアラートがでる