Oplossing tegen corruptie bij SD kaarten met de Raspberry Pi 2

Geplaatst door Kiwi 22-08-2015 2 Reactie(s) Raspberry Pi,

Al sinds de release van de Raspberry Pi 2 ondervinden veel gebruikers problemen met verschillende SD kaarten. Omdat we er de laatste tijd weer meer vragen over krijgen hebben we besloten er een korte blogpost aan te wijden. In het begin werd snel gewezen naar merken als Transcend en Samsung dat deze slechte kaarten zouden maken. Vreemd, voor twee van de grootste producenten van flashgeheugen. Maar ik moet toegeven dat wij in het begin ook onze twijfels kregen over de kaarten welke wij in ons assortiment hebben terwijl wij al sinds de start van de winkel Transcend kaarten leveren.

De bekendste problemen zijn het corrupt raken van data na een herstart en fouten bij het installeren van een OS via NOOBS (versie ten tijde van schrijven 1.4.1). Deze problemen worden veroorzaakt door een bug/incompatibiliteit in de huidige kernel welke in de officiele images gebruikt wordt en doen zich voornamelijk voor bij klasse 10 kaarten met een snelheid van meer dan 20Mb/s. Bij de grote merken zijn tegenwoordig eigenlijk alleen de 8GB kaarten nog 20Mb/s en grotere kaarten minimaal 30Mb/s door nieuwere technieken. Dat verklaart ook meteen waarom 16GB en 32GB kaarten het meest voorbij komen bij klachten over dit probleem.

Oplossingen

Nu hoor ik je denken, allemaal leuk en aardig, maar ik heb een niet werkende microSD! Geen nood! De oplossing is vrij eenvoudig, alleen kun je helaas NOOBS noobs niet gebruiken hiervoor.

OpenELEC

Download en installeer de laatste beta image van OpenELEC (versie 5.95.x). OpenELEC 5.0.8 heeft nog last van deze issue en is daarom niet aan te raden voor snelle/grote microSD kaarten.

Raspbian

Ook bij Raspbian Wheezy geldt dat de huidige image van mei 2015 (kernel 3.18) de fix nog niet bevat. Hiervoor moeten een aantal stappen gevolgd worden om Raspbian te upgraden voordat je herstart.

  • Download en installeer de laatste image van Raspbian.
  • Start je Pi op en sluit direct raspi-config af zonder iets te wijzigen.
  • Voer 'sudo rpi-update' uit om de kernel en firmware te upgraden (internetverbinding nodig).
  • Herstart je Pi nadat de upgrade is voltooid.
  • Voer nu 'sudo raspi-config' uit om je filesystem te resizen en de rest in te stellen.

Conclusie

Het heeft ons en met ons vele gebruikers gefrusteerd, maar er is een oplossing. Het je dus problemen met je microSD kaart in je Raspberry Pi terwijl hij in al je andere apparaten prima werkt? Dan heb je waarschijnlijk een kaartje dat 'te snel' is voor het OS op je Raspberry Pi 2. Veel klanten hebben al baat gehad bij het upgraden en kunnen nu eindelijk zonder problemen projecten maken met hun Pi! Uiteraard is het wel altijd aan te raden een backup van je data te maken.

Het is nu wachten op een nieuwe officiele Raspbian image en versie van NOOBS beschikbaar zodat deze stappen niet meer nodig zijn. Onze voorgeinstalleerde SD kaarten zijn voorzien van een gepatchte OpenELEC versie en kernel 4.x in het geval van Raspbian.

2 Reactie(s)

Harm:
26-02-2017, 16:12:44
Antwoorden

Ik heb een Pi2 draaien als webserver met een 16G class10 kaartje van Kingston. Omdat het een webserver is, staat ie dag en nacht aan. Na enkele maanden merk ik dat er ineens een of meerdere plaatjes op mijn website zijn verdwenen omdat ze corrupt geraakt zijn. Dat zou toch niet moeten kunnen ?

Jeroen:
26-02-2018, 08:30:12
Antwoorden

Het beste werkt om de sd card als readonly te mounten vanaf boottime en op het moment dat er iets gewijzigd moet worden deze tijdelijk op readwrite te zetten met mount -o remount,rw / Data die vaker moet worden geschreven kan beter op een usbstick worden opgeslagen.

Schrijf een reactie


Voer onderstaande code in:
Verzend