BBB ベースのカスタム ボード上のルート パーティションの fsck

BBB ベースのカスタム ボード上のルート パーティションの fsck

BeagleBone Black ベースのカスタム組み込み Linux ボードがあります。Linux-3.12、256MB RAM、ext4ファイル システムを備えた 4GB eMMC が搭載されています。

時々、ファイル システム エラーが発生します (まれですが、あり得ないわけではありません)。そのため、起動時にファイル システム エラーをチェックして修正する必要があります。
当然、fsck やその他のユーティリティによってファイル システム上のデータが破壊されることは望ましくありません。

ビジーボックスベースなのでSysVinit動作/forcefsckしません :( そこで、/etc/fstab(5 番目のフィールドを 1 に設定) してから、スクリプトfsck -pから実行しましたrcS

この組み合わせは、パーティション以外のパーティションにも機能しますrootfs。それに関していくつか質問があります。

  1. fsckパーティション上で実行する方法はありますかrootfs?
  2. fsck -pパーティション上のデータを破壊できますか?
  3. この状況に対処するためのより良い方法、つまりファイル システム エラーをチェックして修正するサービスはありますか?

答え1

SysVinit ベースのデスクトップ Linux ディストリビューションの通常の方法は、ルート ファイルシステムでエラーが検出されると、起動時にルート パスワードを要求することです。その後、これを使用してfsckルート ファイルシステムで実行できます。組み込みディストリビューションでこれが実行されるかどうかはわかりませんが、そのように構成することは間違いなく可能です。

起動中にエラーが検出されない場合、別のオプションとして、root としてログインし、実際に必要のないものをすべて停止し、ルート ファイルシステムを読み取り専用で再マウントしてから、fsck を実行します。

これはブロックストレージのルートファイルシステムに関するものであり、ルート. Rootfs は、起動時に使用される最小限の RAM ベースのファイルシステムであり、破損することはありません (起動カーネル イメージが破損しているか、RAM が不良でない限り)。

原則として、fsck -pは「安全な」修復のみを行うことを目的としていますが、本当に何も悪いことが起きないようにしたい場合は、手動で実行して、各アクションごとにプロンプ​​トが表示されるようにします。何らかの理由でルート ファイルシステムに貴重なデータがある場合 (発生するはずはありませんが、発生する可能性があります)、ddまず を使用してバックアップを作成します。

関連情報