PiのSDカードが頻繁に破損するのを防ぐにはどうすればよいですか?


47

ブート時にI / Oエラーが発生し、この「エラー」が表示されます:(最新バージョンのRaspbianを実行しています)

Entering kdb (current=0xca82ac80, pid 1) due to keyboard entry
kdb> _

そして、私はそれを前に見ました、そして、私が正しくシャットダウンしなかったので、私のSDカードが壊れたと説明されました。1週間後、電源が3回オン/オフに点滅し、再び起動できなくなるまで、このエラーに対処しませんでした。私は毎日SDカードを再準備しているようです!!! 私は私のPiの機能が大好きであることは言うまでもなく、これも好きではありません。しかし、この「ブレークポイント」は私を夢中にさせます!これを防止したり、電力が切れても起こらないように何かを強化する方法はありますか?助言がありますか?ありがとう!

PS zipファイルは破損しておらず、抽出サービスはWin32DiskImagerです


2
あなたのカードはこのリストに載っています
バター

UPSについて考えたことはありますか?
レニック

@lenikサージプロテクターのようなものが必要だと言っていますか?
user151324

適切にシャットダウンせずに電源を切るのですか?
ジッピー

1
@ding時間。「Uninterruptable Power Supply」または略してUPSと呼ばれます。
レニック

回答:


48

HWおよび互換性のあるSDカードのリストの確認については説明しません。おそらく、これらすべてを既に確認しているからです。私が書こうとしているのは、永続的な解決策です。これにより、芽の問題を解消し、問題を永続的に修正できます。

電源スイッチを入れたときにSDカードが破損しないようにするには、読み取り専用モードで使用する必要があります。SDカードに何も書き込まれていない場合、何をしても損傷しません。

明らかな(ただし機能しない)ソリューションは、SDカードの側面にある「読み取り専用」スイッチを切り替える試みです。残念ながら、これは機能しません。

別のより微妙な(ただし機能する)アプローチは、/etc/fstabすべてのパーティションを読み取り専用でマウントするように変更することです。このアプローチの欠点は、ログを別の場所(USBスティック、RAMドライブ?)に書き込む必要があり、RAMドライブの場合、再起動中にログが保持されないことです。これをする:

  1. 任意の方法を使用して、RPiイメージをSDカードにコピーします。
  2. SDから起動すると、raspi-config自動的に起動します。「ファイルシステムを拡張する」のではなく、タイムゾーンと国際設定をセットアップするだけです。
  3. 実行しsudo fdisk /dev/mmcblk0、「p」を押して現在のパーティションテーブルを印刷します。次に、次のコマンドを入力します。

    n        Create a new partition
    [enter]  Make a primary partition
    [enter]  Use the default number
    [#]      1 greater than the end of mmcblk0p2
    [enter]  Expand to the end of the SD card
    w        Write the partition table and exit
    
  4. 編集/etc/fstab。次のようになります。

    proc            /proc     proc    defaults 0 0
    /dev/mmcblk0p1  /boot     vfat    ro       0 0
    /dev/mmcblk0p2  /         ext4    ro       0 0
    /dev/mmcblk0p3  /home     ext4    defaults,errors=remount-ro  0  1
    none            /var/run  ramfs   size=1M  0 0
    none            /var/log  ramfs   size=1M  0 0
    
  5. 実行sudo partprobeして新しいパーティションを認識します。

  6. 新しいパーティションをでフォーマットしますsudo mkfs --type ext4 /dev/mmcblk0p3
  7. リブート。

何らかの理由でシステムに変更を加える必要がある場合、書き込みアクセスで読み取り専用パーティションを再マウントできます。

sudo mount -o remount,rw /dev/mmcblk0p2

待って、これを行うとSDカードに書き込むことができませんか?または起動時にのみ
user151324

1
@coding_corgiこれにより、SDカードへの書き込みが完全に停止します。
アプノートン

なぜあなたはあなたのSDカードに書き込む必要がありますか?SDへの書き込み+パワーダウン= FSの破損。データを保存する必要がある場合は、USBスティックを使用するか、SDカードに別のパーティションを作成します。この場合、少なくともシステムが起動して実行され、データが破損していないかどうかを確認できます。
レニック

@anortonは、SDカードの最初の2つのパーティションへの書き込みアクセスを停止しますが、別のパーティションを作成したり、異なるメディアを使用してデータを保存したりすることはできません。たとえば、ネットワーク経由でデータを書き込む読み取り専用のRasPiは、非常に信頼性の高いソリューションです。
レニック

1
raspi camからSDカードにビデオデータを書き込むと、何度も死にました!起動、配線の引き抜き、またはシステムクラッシュに関する問題は一度もありませんでした。プラグアンドプレイの場合、本番環境では読み取り専用が適しています。この問題は開発中に発生することはありません。カーネルが処理できるレベルよりも高いレベルで何かが発生しているため、読み取り専用であってもデータを台無しにすると思われます。
ピョートルクラ

4

RPiの使用目的によっては、IPEに夢中になる場合があります。IPEは、「Raspbianのブラックアウト防止フレーバー」です。

RPiの起動に使用する予定です。データを書き込む必要がある場合は、読み取り専用でマウントするUSB​​ドライブを使用します(SDを修復するよりも、SDを安全にし、USBドライブを破損することを希望します)

IPEホームページをご覧ください

そこで示されているように、「また、「ipe-rw」と「ipe-ro」を使用して、ルートファイルシステムを書き込み可能または読み取り専用モードに切り替えます。」


2

メインパーティションにUSBフラッシュドライブを使用することで、この問題を克服しました。

  1. RaspbianイメージをUSBドライブに復元する

  2. SDカードをファットにフォーマットする

  3. ファットパーティションの内容をUSBドライブからSDカードにコピーする

  4. / dev / sdaから起動するように、SDカードのconfig.txtを変更します

基本的にrpiはSDカードから起動しますが、OSと読み取り/書き込みにはUSBドライブを使用します。



1

RPiがデフォルトの速度(700mhzのCPU)で実行されていることを確認してください。個人的には、さまざまなSDカードでストレージの破損が発生しましたが、24時間稼働している場合のみです。残念ながら、一部のディストリビューション(画像)にはconfig.txtに疑わしい設定が含まれています。


私はCPUをオーバークロックしていません、ありがとう
-user151324

別のRPiを試して、何らかの形で欠陥や破損が発生する可能性を排除してください
ジッタ

1つしかありません
-user151324

オプションを使い果たしてRMAを要求する可能性があります
ジッタ

RMA?あれは何でしょう?
user151324

1

Raspberry Piがフリーズしている場合、正しくシャットダウンできません。これが役立ちます。これを知る前に、私はいくつかのSDカードを壊しました:

Alt + PrintScreenの両方を押し、それらのキーを押しながら、次のキーを順番に1つずつ、その間に数秒の間隔を置いて押します。

Alt+ PrintScreen+R E I S U O

または

Alt+ PrintScreen+ R E I S U B(再起動)

覚えておくと便利なニーモニック、つまり、システムが完全に壊れていても再起動します。

「B」を「O」に置き換えて、システムを再起動する代わりにシャットダウンします(O = off、B = boot)。

ソース:https : //www.raspberrypi.org/forums/viewtopic.php?t=176612#p1126262


0

elinuxサイトにあります。あなたの状況に当てはまるものだけを選択しましたが、詳細についてはそれらをご覧ください...

  • 問題がある場合は、rpi-updateを使用して最新のファームウェアバージョンがあることを確認してください
  • 一部のSDカードはR-Piで動作しないため、既知のSDカードのリストを確認してください。
  • SDカードのセットアップに問題がある場合は、特に他の場所で使用され、データ/パーティションが含まれている場合は、完全に消去することから始めてください。不良セクタを時々見つけて無視リストに追加できるため、FULL(低レベル)フォーマットを実行するのは良い方法です。
    • WindowsおよびMacユーザーは、SD Associationからフォーマットツールをダウンロードできます:https : //www.sdcard.org/downloads/formatter_3/
    • カードの再フォーマットもデジタルカメラで簡単に行えます。
    • LinuxまたはMac OSでddコマンドを使用してSDカードを手動で準備している場合、この操作は既存のデータとパーティションを完全に消去します。既存のパーティション(例:/ dev / sdd1)ではなく、カード全体(例:/ dev / sdd)に書き込むようにしてください。
  • 最新のファームウェアで動作しないSDカードをお持ちの場合は、こちらをご覧ください
  • 十分な電源があることを確認してください。すべてのプラグを抜いてみて、どれくらい続くかを確認してください。安定性をテストするために、アイテムを1つずつ差し込みます。

これらすべての手順を実行した場合、試すことができるのは、互換性リストから慎重に選択された別のSDカードを使用することだけです。また、信頼できる場所から元のカードを購入してください。イーベイチャイナなどとは違います。


私は、私は、サンディスク、キングストンとレキサー(すべてのサポートされている)プロセスで3枚のSDカードを使用していない私はUbuntuのとMac OS X上で試した後Win32DiskImagerを使用し、手動のいずれか私のSDカードを設定する
user151324

fsを読み取り専用にすることで修正されるのは奇妙です。何百万人もの人々のうち、あなたはこの問題を抱えています。たぶん、ファイルシステムを台無しにしたゴミ/ウイルスを手に入れたかもしれません。読み取り専用ルートはお尻の痛みです...待って、見てください。
ピョートルクラ

おかげで、何か奇妙なことが起こっています。
明らかに

0

すべてのアースを覆うために、電源が十分かどうかも確認してください。他の充電器を試すか、RPIをPCのUSBポートに接続してテストします。推奨されるRPI電源は約700mAですが、弱い充電器の中にはこれを安定したレベルで維持できないものがあることに注意してください。

数日間狂ったように動作し始めたルーターがあり、それからOKになり、その後再び狂い、その後再び元気になりました...ルーターの時間に電源が変化する電圧(3Vから5.5V)を出力していることがわかりましたクレイジー。その電源を新しいものに交換すると、すべて問題ありません。そのため、電源を交換して出力電圧を測定してください。

最後に、OSをシャットダウンしてRPIをオフにし、赤色のLEDが1つしか得られない場合にのみRPIを取り外します。1つ以外の赤いLEDがある場合、RPIは実際にはシャットダウンされません。また、プラグから電源を取り外すことでrpiが切断されないようにしてください。RPIから電源を取り外し、プラグから電源をリモート接続した後にのみ電源を切ることをお勧めします。


いいえ、安定した5.1V @ 2100 Aがあり、常に適切にシャットダウンします
-user151324

0

RS Componentsのpiでも同様の問題があります。これは中国で作られた小便の一つです。エレメント14から英国で製造された別のものは、同じSDカードと電源で破損したことはありませんでした。raコンポーネントユニットに何らかのハードウェア欠陥がある可能性があります。もちろんそれは確かではありませんが、すべてがその方向を指しているようです。


0

また、PIでSD障害が発生することもありますが、5日間連続で、場合によっては1か月間動作します。

1年以上信頼できる状態で動作させるには、USBスティックから起動するしかありません。この方法では、SDカードを使用せず(ブート時のみ)、約500MBのSDカード(安価)とUSBスティックが必要です。


0

syncシャットダウンする前にできることのヒントに従いましたが、これまでのところ、このコマンドである程度成功しました。

sync; sudo shutdown -t 9 -r now

上記のソリューションを使用しているラズベリーにまだ問題がありますか?
CuriousMind

私はもう何の問題もありませんでした-しかし、私はそれをシャットダウンするのではなく、むしろpiを残す傾向があることを認めています。しかし、私の推測では、上記の行を使用して50回をはるかに上回って終了し、それ以降は一度も失敗しなかったということです。その統計から-それは動作します。
dirkk0

これで問題が解決するとは思わない。制御されたシャットダウンを実行する場合、設計上、SDカードに損傷は発生しません。腐敗は、デバイスは、単にプラグを抜か(または停電が発生した)である場合には、主に発生するようですあなたには無関係であるsyncか、shutdownあなたが実行しない限り、コマンドsync実行不可能と思われる(予期しない!)抜き差しの直前に。
ニー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.