何か(おそらくmkswap)が私のbtrfsパーティションを壊しています。

何か(おそらくmkswap)が私のbtrfsパーティションを壊しています。

私はアーチ(特に努力するOS)に初めて触れましたが、問題がシステムにあるかどうかはわかりません。簡単に言えば、私のラップトップにはセッションを保存するスワップファイルがないので、カバーを閉じた後にスリープモードにはなりません。その後、コマンドを使用してアーチウィキに書かれたガイドに従って作成を続けましたmkswap。アーチウィキに記載されているいくつかのタスクを実行した後、ノートブックをスリープモードに切り替えましたが、何も起こりませんでした。数日間、システムは正常に動作しましたが、yayを使用して更新して再起動しようとしました。ラップトップは再起動されませんでしたが、休止状態を試みたときにセッションがロードされました。そのセッションで再起動した後に開始されませんでした。問題はシステムパーティションにありましたがfsck解決されました。その後、破損したbtrfsパーティションをマウントできないため、起動は失敗します。問題のbtrfsパーティションはLinuxシステムパーティションの前にあり、バックアップされていない重要なデータが含まれていることがわかります。

私の仮説は、mkswapがシステムパーティションを絞り込んでスワップパーティションを補償しようとしましたが、なんとかbtrfsパーティションに影響を与えて認識しなかったことです。

これはbtrfsチェックの結果です:

Opening filesystem to check...
checksum verify failed on 246038528 wanted 0x00000000 found 0xb6bde3e4
checksum verify failed on 246038528 wanted 0x00000000 found 0xb6bde3e4
checksum verify failed on 246038528 wanted 0x00000000 found 0xb6bde3e4
bad tree block 246038528, bytenr mismatch, want=246038528, have=0
ERROR: could not setup csum tree
ERROR: cannot open file system

重要なのは、システムパーティションが完全に動作し、w10でbtrfsパーティションも破損していることを確認するデュアルブートでラップトップを使用していることです。

btrfsを確認する - 修理しようとしました:

Starting repair.
Opening filesystem to check...
checksum verify failed on 246038528 wanted 0x00000000 found 0xb6bde3e4
checksum verify failed on 246038528 wanted 0x00000000 found 0xb6bde3e4
checksum verify failed on 246038528 wanted 0x00000000 found 0xb6bde3e4
bad tree block 246038528, bytenr mismatch, want=246038528, have=0
WARNING: could not setup csum tree, skipping it
parent transid verify failed on 71958528 wanted 45315 found 45751
parent transid verify failed on 71958528 wanted 45315 found 45751
parent transid verify failed on 71958528 wanted 45315 found 45751
Ignoring transid failure
parent transid verify failed on 201768960 wanted 45297 found 45330
parent transid verify failed on 201768960 wanted 45297 found 45330
parent transid verify failed on 201768960 wanted 45297 found 45330
Ignoring transid failure
checksum verify failed on 202014720 wanted 0x00000000 found 0xb6bde3e4
checksum verify failed on 202014720 wanted 0x00000000 found 0xb6bde3e4
checksum verify failed on 202014720 wanted 0x00000000 found 0xb6bde3e4
bad tree block 202014720, bytenr mismatch, want=202014720, have=0
ERROR: failed to read block groups: Input/output error
ERROR: cannot open file system

試しましたbtrfs restore -v(プロジェクトの繰り返しテキストの壁をスキップ):

ERROR: root [5 0] level 0 does not match 2

Could not open root, trying backup super
ERROR: superblock bytenr 274877906944 is larger than device size 101518934016
Could not open root, trying backup super

GPartedでサイズ変更も試みましたが、エラーのため許可されていません。

編集:では…データを回復する方法はありますか?

EDIT2:スワップファイルを生成する方法は次のとおりです。

sudo swapoff -a
sudo dd if=/dev/zero of=/swapfile bs=1G count=8
sudo mkswap /swapfile
free
sudo swapon /swapfile
grep SwapTotal /proc/meminfo

重要:スワップパーティションに関する情報を含むように/ etc / fstabを編集することを忘れましたが、問題はスワップパーティションが作成されず、代わりに私のシステム部分とbtrfs部分(データのみを含む)がf-edされたことです。 。

関連情報