14-10-2020, 14:59:58
Il y a peu, une de mes framboises ne voulait plus démarrer, me signalant que la carte SD était en lecture seule. Étrange car je n'avais rien modifié depuis belle lurette.
En cherchant un peu, j'ai trouvé que c'était une protection lorsque les cartes commencent à dater (obsolescence programmée ?), elles passent en readonly pour éviter de se corrompre.
La solution logique pour ne rien perdre: cloner l'ancienne carte sur une neuve. C'est bête comme chou, il vous faut:
Le processus:
- Brancher la carte défaillante sur votre framboise
- la trouver:
Dans mon cas, c'est la carte sdb (/dev/sdb)
Vérifier que la carte est en bon état:
Normalement, vous ne devriez pas avoir d'erreur, vous pouvez donc lancer la première étape du clonage qui consiste à créer une image de votre carte:
Ceci va créer un fichier mysd.img qui est une image bloc à bloc de votre carte (il vous faut bien sûr assez de place pour l'héberger)
Une fois que c'est fait, vous pouvez faire l'opération inverse vers la carte neuve (que vous aurez inséré à la place de la précédente):
En cherchant un peu, j'ai trouvé que c'était une protection lorsque les cartes commencent à dater (obsolescence programmée ?), elles passent en readonly pour éviter de se corrompre.
La solution logique pour ne rien perdre: cloner l'ancienne carte sur une neuve. C'est bête comme chou, il vous faut:
- une framboise qui fonctionne (sous raspbian ou n'importe quel linux)
- un lecteur de carte SD
- un petit peu de temps
Le processus:
- Brancher la carte défaillante sur votre framboise
- la trouver:
Bash
~# sudo lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 292,5G 0 disk
└─sda1 8:1 0 292,5G 0 part /
sdb 8:16 1 14,4G 0 disk
└─sdb1 8:17 1 14,4G 0 part
mmcblk0 179:0 0 14,9G 0 disk
├─mmcblk0p1 179:1 0 43,2M 0 part /boot
└─mmcblk0p2 179:2 0 14,8G 0 part
Dans mon cas, c'est la carte sdb (/dev/sdb)
Vérifier que la carte est en bon état:
Bash
~# sudo badblocks /dev/sdb1
Normalement, vous ne devriez pas avoir d'erreur, vous pouvez donc lancer la première étape du clonage qui consiste à créer une image de votre carte:
Bash
~# sudo dd if=/dev/sdb of=./mysd.img
Ceci va créer un fichier mysd.img qui est une image bloc à bloc de votre carte (il vous faut bien sûr assez de place pour l'héberger)
Une fois que c'est fait, vous pouvez faire l'opération inverse vers la carte neuve (que vous aurez inséré à la place de la précédente):
Bash
~# sudo dd if=./mysd.img of=/dev/sdb