This is only tangentially related to debian.

I have a really old rpi (2B model I think) running stock bullseye acting
as an access point and also a backup route to another wifi AP.

This all works beautifully and has run smoothly for a long time.

It had a 16GB sandisk microSD card although I was only using c 3GB at
the beginning.

On 21st December the kernel remounted the card ro - but (almost)
everything continued to work - my daily backups take a snapshot (which
failed) and the daily 'I'm alive' email also failed. Both of these
generated an 'URGENT' email from my monitoring scripts. As the AP and
routing were both fine I investigated at the weekend.

What I found was the beginning of the card was unwriteable, I've not
investigated exactly how much, while the rest of the card seems
perfectly OK. I cannot, for example, change the partition table, nor can
e2fsck clear the dirty journal flag, nor could I change cmdline.txt but
my quick sampling didn't find anything else that was unwriteable.

Do these cards have wear levelling? Have I just got unlucky that it's
the start of the card that is unwriteable and so I cannot continue on
the 12GB of space that has never been part of a partition?

I think the only bits of the FS that see regular writes are /var/log and
the journal. I'd prefer to keep that to maximize the chance that I have
logs when things go wrong. Is there some way to distribute these writes
around the card if there isn't wear levelling?

And is there a way to detect pending failures like this before they
bite?

Reply via email to