HWおよび互換性のあるSDカードのリストの確認については説明しません。おそらく、これらすべてを既に確認しているからです。私が書こうとしているのは、永続的な解決策です。これにより、芽の問題を解消し、問題を永続的に修正できます。
電源スイッチを入れたときにSDカードが破損しないようにするには、読み取り専用モードで使用する必要があります。SDカードに何も書き込まれていない場合、何をしても損傷しません。
明らかな(ただし機能しない)ソリューションは、SDカードの側面にある「読み取り専用」スイッチを切り替える試みです。残念ながら、これは機能しません。
別のより微妙な(ただし機能する)アプローチは、/etc/fstab
すべてのパーティションを読み取り専用でマウントするように変更することです。このアプローチの欠点は、ログを別の場所(USBスティック、RAMドライブ?)に書き込む必要があり、RAMドライブの場合、再起動中にログが保持されないことです。これをする:
- 任意の方法を使用して、RPiイメージをSDカードにコピーします。
- SDから起動すると、
raspi-config
自動的に起動します。「ファイルシステムを拡張する」のではなく、タイムゾーンと国際設定をセットアップするだけです。
実行し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
編集/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
実行sudo partprobe
して新しいパーティションを認識します。
- 新しいパーティションをでフォーマットします
sudo mkfs --type ext4 /dev/mmcblk0p3
。
- リブート。
何らかの理由でシステムに変更を加える必要がある場合、書き込みアクセスで読み取り専用パーティションを再マウントできます。
sudo mount -o remount,rw /dev/mmcblk0p2