Luks暗号化の代わりにBTRFSを使用する

Luks暗号化の代わりにBTRFSを使用する

ルートファイルシステムの一部を構成するパーティションを含む故障したハードドライブがあります。

matt@ryzen3950 ~> btrfs device stats /dev/dm-2
[/dev/mapper/cryptsda1].write_io_errs    0
[/dev/mapper/cryptsda1].read_io_errs     0
[/dev/mapper/cryptsda1].flush_io_errs    0
[/dev/mapper/cryptsda1].corruption_errs  12
[/dev/mapper/cryptsda1].generation_errs  0

他のストレージデバイスと交換したいです。これを行うには、まず新しいドライブを分割して暗号化します。

matt@ryzen3950 ~> sudo parted /dev/sdd
(parted) mklabel gpt                                                      
(parted) mkpart primary btrfs 1MiB 100%                                   
(parted) quit                                                             
matt@ryzen3950 ~> sudo cryptsetup luksFormat /dev/sdd1
matt@ryzen3950 ~> sudo cryptsetup open --type luks /dev/sdd1 cryptsdd1

(私はmkfsこれについて何もしませんでした)

その後、btrfsの交換を実行しようとしました(ファイルシステムが現在アクティブになっていることに注意してください)。

sudo btrfs replace start /dev/mapper/cryptsda1 /dev/mapper/cryptsdd1 /

ただし、エラーが発生します。

/dev/mapper/cryptsdd1 appears to contain a partition table (atari).
ERROR: use the -f option to force overwrite of /dev/mapper/cryptsdd1

そもそもドライブを分割してはいけなかったようです。以下を行う必要がありますか?

sudo btrfs replace start /dev/sda /devsdd /

そうでなければ、正しいアプローチは何ですか?

最後に、<path>btrfsの代替とは何ですか?私はこれがファイルシステムのマウントポイント(例:/ライブルートファイルシステム)だと思います。そうですか?

完全なbtrfs-replaceのマニュアルページも読みました。Btrfs Wikiしかし、私の質問に対する答えが見つかりません。

ベストアンサー1

ただし、エラーが発生します。

/dev/mapper/cryptsdd1 appears to contain a partition table (atari).
ERROR: use the -f option to force overwrite of /dev/mapper/cryptsdd1

提案どおりにコマンドを実行するbtrfsか、最初に実行してください。-fwipefs -a /dev/mapper/cryptsdd1

あなたは実際に入力していますlibblkidの既知の問題(最新のutil-linuxですでに修正されています)、ほとんどのストレージツールで使用されているデバイスのファイルシステムを検出するためのライブラリ - btrfsは、ここでそれを使用して使用するデバイスが空であることを確認し、ユーザーが誤って既存のアイテムを削除しないように警告できます。ファイルシステムこの場合、libblkidは、新しく作成されたLUKSデバイスにAtariパーティションテーブルが含まれていると誤って考えます。これは偽の肯定であり、いくつかのランダムなデータがAtariスーパーブロックだと思います。

そもそもドライブを分割してはいけなかったようです。以下を行う必要がありますか?

sudo btrfs replace start /dev/sda /devsdd /

決してそうではありません。 btrfsはファイルシステムレベルでのみ関心を持ち、デフォルトのパーティションとLUKSデバイスを「知らない」ので、これらのデバイスを最初に再作成するのは正しいことです。

最後に、<path>btrfsの代替とは何ですか?私はこれがファイルシステムのマウントポイント(例:/ライブルートファイルシステム)だと思います。そうですか?

私はbtrfsの専門家ではありませんが、これは正しいと思い、btrfs replaceコマンドの最初のバージョンは私にとっては大丈夫です。必ず最初にバックアップしてください。

おすすめ記事