/var/lib/dpkg/ は fsck の後に消えます。

/var/lib/dpkg/ は fsck の後に消えます。

同様aptのコマンドはすべて、ロックファイルが/var/lib/dpkg/存在しないため、生成に失敗します。さらに、次の/lost+found/内容があります。

pi@pi-top:~ $ sudo ls -al /lost+found/
total 102456
drwx------ 11 root root      16384 Apr  3 16:26 .
drwxr-xr-x 23 root root       4096 May  5 17:00 ..
-rw-------  1 root root  104857600 Apr  3 16:30 #29025
lrwxrwxrwx  1 root root          9 Mar 29 10:05 #87867 -> /run/lock
lrwxrwxrwx  1 root root          4 Mar 29 10:05 #87868 -> /run
drwxr-xr-x  2 root root       4096 May  5 10:35 #89863
drwxr-xr-x 12 root root       4096 Apr  3 16:41 #89864
drwxr-xr-x 44 root root       4096 Apr  3 16:30 #89865
drwxrwsr-x  2 root staff      4096 Mar 12 14:03 #89866
drwxr-xr-x  6 root root       4096 May  5 16:30 #89867
drwxrwsr-x  2 root mail       4096 Mar 29 10:05 #89868
drwxr-xr-x  2 root root       4096 Mar 29 10:05 #89869
drwxr-xr-x  5 root root       4096 Mar 29 10:32 #89870
drwxrwxrwt  3 root root       4096 May  5 16:31 #89871

/var/lib/システムに他の症状は現れませんでしたが、多くのコンテンツも失われました。システム(または少なくともdpkg)を復元できますか?それでは、どうすればいいですか?

答え1

申し訳ありません。この手順では、クリーンなバックアップから復元することをお勧めします。fsckあまりにも多くのディレクトリがに配置されている場合、/lost+foundこれは多くの破損を示します。より多くの破損がある可能性がありますが、破損はメタデータではなくファイルの内容にあるため、fsckではこれを知ることはできません。

バックアップから復元するときは、次の点を確認してください。きれいサポート。腐敗は発見される前に開始することができます。

ファイルの内容を識別する唯一の方法は、lost+foundファイルを表示して調べることです。体系的なアプローチはありません。可能であれば、fsckはこれを行います。

表示されている内容を見ると、ディレクトリが破損している/lost+foundようです。適切な項目を作成してに移​​動して/var問題を解決できます。/var/lost+found/var

# Running as root, of course
umask 022
mkdir /var
mv /lost+found/\#87867 /var/lock
mv /lost+found/\#87868 /var/run
mv /lost+found/\#89866 /var/local
mv /lost+found/\#89868 /var/mail

メタデータ(所有権およびシンボリックリンク先)で上記の項目を見つけました。ディレクトリの内容を見ると、もっと詳しく知ることができます。既存のシステムのインストールと比較してください(同じディストリビューションまたは近いディストリビューションが望ましいが、プロセッサアーキテクチャは重要ではありません)。

/var/libそれはおそらく#89865サブディレクトリが多い傾向があるからです。しかし、これは単なる推測です。システムの他の部分から来ることもできます。

回復に集中しないで、/var/lib/dpkg残りは無視してください。欠乏は/var/lib/dpkgあなたが気づく最初の症状だけです。

PCではRAMテストをお勧めします。記憶力テスト 86+ほとんどのディストリビューションではパッケージとして提供され、少なくともUbuntuにはデフォルトでインストールされます。 Raspberry PiのシステムがSDカードにある場合は、SDカードを交換することをお勧めします。 SDカードはシステムの最も信頼性の低い部分なので、引き続き使用するとデータが破損し続けることがあります。

関連情報