ファイルシステムの変更はどのように行われますか?

ファイルシステムの変更はどのように行われますか?

免責事項:これをどこに置くべきかわかりません。しかし、コンテキストはほとんどUnixなので、今日はここに置きます。

最近、Mac OS High Sierra のリリースと APFS の導入に関して、1 つのファイルシステムから別のファイルシステムに変更するプロセスが疑問に思います。最も複雑なのは、古いシステムから新しいシステムにシンボリックリンクとハードリンクを変換することです。なぜなら、正しいファイル(有効なノード)を指す必要があるからです。これを行うには、数十億のノードがある可能性がある元のファイルシステムからinodeグラフを作成し、それを新しいファイルシステムに再生成する必要があります。

私の家がどれほど現実的であるかを確認したいと思います。そうでない場合、誰かがプロセスを説明できますか?

アップデート:特定のOS /ファイルシステムについて尋ねるものではありません。ファイルシステムを変更するプロセスと内部的に何が起こっているのか知りたいです。

ベストアンサー1

シンボリックリンクは inode を指していません。ハードリンクは同じinodeだけを指すだけです。 inode番号が変更されても問題ありません。

場合によっては、ファイルシステムを変換することができます(例:etx4をbtrfsに変換するツールがあります)。ただし、通常はデータをバックアップし、新しいファイルシステムでボリュームをフォーマットし、バックアップを復元します。ハードリンクを正しく処理するバックアップが必要です。

おすすめ記事