- Het bijwerken van de SSD-firmware op Linux verbetert de stabiliteit en prestaties en verhelpt ernstige controllerfouten.
- Elke fabrikant biedt verschillende methoden aan: opstartbare ISO's, specifieke uitvoerbare bestanden of dashboards die alleen voor Windows beschikbaar zijn.
- Naast de firmware zijn de volgende zaken van belang: AHCI-modus, TRIM, veilige spot-erase en de juiste montageconfiguratie.
- Na de update is het raadzaam om SMART te controleren en, als de fouten aanhouden, contact op te nemen met de technische ondersteuning of de garantieafdeling.

Als je dagelijks Linux gebruikt en een moderne SSD hebt, krijg je vroeg of laat te maken met de volgende problemen: schijffirmware-updatesHet is niet bepaald het leukste wat er is: elke fabrikant doet zijn eigen ding, veel bieden alleen hulpprogramma's voor Windows aan, en in sommige gevallen brengen ze zelfs geen eenvoudig binair bestand uit dat je direct kunt gebruiken met typische Linux-tools zoals nvme-cli o hdparmToch kun je met een beetje kennis je SSD up-to-date houden zonder je favoriete distributie te verlaten.
Het bijwerken van de firmware is geen bevlieging. In de praktijk kan het het verschil maken tussen een stabiel systeem en een apparaat dat vastloopt. iowait wordt geactiveerd, er treden willekeurige crashes op en er zijn opstartproblemen.Dit geldt met name voor sommige oudere SSD-modellen. Bovendien verhelpen veel firmware-updates belangrijke bugs in bepaalde bestandssystemen, verbeteren ze de prestaties of voegen ze de juiste ondersteuning toe voor functies zoals TRIM. We zullen in detail bekijken hoe verschillende fabrikanten dit probleem in Linux aanpakken en welke voorzorgsmaatregelen genomen moeten worden.
Waarom is het zo belangrijk om de SSD-firmware bij te werken?
Voordat we dieper ingaan op commando's en tools, is het belangrijk te begrijpen wat er op het spel staat. Firmware is de Het interne besturingssysteem van de SSDDit omvat de code die regelt hoe gegevens worden geschreven en gelezen, de flashgeheugencontroller, de interne bloktabellen, wear leveling, enzovoort. Een fout daarin is geen kleinigheid; het kan leiden tot alles van prestatieverlies tot kritieke storingen.
Sommige gebruikers, na een paar dagen van tevredenheid met hun nieuwe SSD, beginnen problemen te ondervinden. extreem hoge I/O-wachttijden (iowait), extreme traagheid en systeem-semi-locksDit is zelfs zo ver gekomen dat nieuw geïnstalleerde Linux-systemen weigeren op te starten. In veel van deze gevallen is de eerste stap om de situatie te verhelpen het bijwerken van de firmware naar een door de fabrikant gecorrigeerde versie.
Bij specifieke modellen (zoals sommige oudere OCZ Octane- of Vertex-modellen) heeft de firmware-update niet alleen het volgende betekend: stabiliteitsproblemen oplossenMaar het levert ook een merkbare prestatieverbetering op. Het is een aanpassing die we normaal gesproken voor "een andere keer" uitstellen, maar in het geval van SSD's zou het bijna als een integraal onderdeel van het opstarten van het systeem moeten worden beschouwd.
Hoewel het proces doorgaans uw gegevens niet wist, valt elke flashbewerking in de categorie "als er iets misgaat, gebeurt dat op het slechtst mogelijke moment". Daarom wordt het ten zeerste afgeraden. Zorg voor een back-up of systeemimage. voordat je iets aan de firmware verandert.
Firmwarefabrikanten en ondersteuning op Linux: de werkelijke situatie
Het grootste probleem waar je tegenaan loopt is niet technisch, maar gerelateerd aan het ecosysteem: elk merk gaat anders om met firmware-updates, en vaak is dat niet het geval. De officiële ondersteuning is vrijwel uitsluitend gericht op Windows.Voor Linux moet je vaak opstartbare ISO-images, specifieke hulpprogramma's gebruiken of het gewoon met andere middelen doen.
Bij Samsung bijvoorbeeld zijn er situaties waarin geen direct bruikbaar binair bestand beschikbaar is. nvme-cliDit dwingt ons om onze toevlucht te nemen tot ISO-images bijwerken Deze zijn ontworpen om op te starten in hun eigen omgeving en van daaruit te flashen. Vanuit Linux kunnen we die ISO echter "uitpakken" en de updatetool direct uitvoeren.
Andere fabrikanten, zoals OCZ (voordat het werd overgenomen, erg populair bij Vertex en Octane), distribueerden Linux-specifieke hulpprogramma's Dit zijn uitvoerbare bestanden die verbinding maken met internet, het model detecteren en de nieuwste firmwareversie downloaden. Het proces omvat doorgaans het voorbereiden van een USB-stick met een live-distributie en van daaruit verder werken om het gebruik van de harde schijf te vermijden.
Aan het andere uiterste bevinden zich merken die vrijwel geen officiële Linux-tools leveren, of die alleen updates toestaan via Windows of via het eigen hulpprogramma van het moederbord. Dit is het geval bij veel OEM-systemen (Dell, HP, Lenovo, enz.), waar de SSD-upgrades zijn geïntegreerd in de upgrade-mechanismen van de fabrikant. en worden niet rechtstreeks aan de gebruiker aangeboden als een generiek firmwarebestand.
De firmware van een Samsung NVMe SSD bijwerken (voorbeeld met de 980 Pro)
Laten we het voorbeeld nemen van een vrij gangbare NVMe SSD, zoals een Samsung 980 ProDe fabrikant levert ISO-images voor firmware-updates die in theorie bedoeld zijn om op een USB-stick te branden en vanaf daar op te starten. Vanuit Linux kunnen we die ISO echter gebruiken zonder opnieuw op te starten in een andere omgeving.
De basisprocedure is als volgt. Zoek eerst het ISO-bestand dat overeenkomt met uw SSD-model in de sectie met Samsung-ondersteuningstools, bij hun opslaghulpprogramma's (het gebruikelijke pad is meestal zoiets als dit): “Opslag / ondersteuning / tools voor consumenten” (op hun website). Zodra je de juiste ISO hebt gevonden, download je deze met behulp van iets als:
wget https://semiconductor.samsung.com/resources/software-resources/Samsung_SSD_980_PRO_5B2QGXA7.iso
Maak vervolgens een koppelpunt aan en koppel de afbeelding met behulp van de loop-optie:
sudo mkdir /mnt/iso
sudo mount -o loop Samsung_SSD_980_PRO_5B2QGXA7.iso /mnt/iso
Binnen die ISO-norm is er meestal een initrd met de volledige updateomgevingVanuit Linux kun je het uitpakken met een commando als dit:
sudo unmkinitramfs /mnt/iso/initrd ~/980
Na het uitpakken zul je zien dat je daarin het binaire bestand vindt dat verantwoordelijk is voor de update, in deze context bekend als fumagicianJe markeert het als uitvoerbaar en start het direct:
sudo chmod +x 980/root/fumagician/fumagician
sudo ./980/root/fumagician/fumagician
De tool zal je begeleiden en op een gegeven moment om bevestiging vragen. Op dat moment moet je 'ja' zeggen, het proces accepteren en het programma zijn werk laten doen. Schrijf de nieuwe firmware naar de NVMe-schijf.Onderbreek het proces in geen geval en schakel de machine vooral niet uit.
Na afloop is het raadzaam het apparaat uit te schakelen of opnieuw op te starten om een volledige stroomcyclus af te dwingen. Na het opnieuw opstarten kunt u controleren of de firmwareversie correct is bijgewerkt met:
sudo nvme list
In de uitvoer van deze opdracht ziet u het SSD-model en het veld met de bijgewerkte firmware. Als het revisienummer overeenkomt met het verwachte nummer, is de bewerking succesvol voltooid en is uw SSD klaar. De Samsung 980 Pro is nu bijgewerkt..
Firmware bijwerken van klassieke SATA SSD's (bijv. OCZ Octane / Vertex)
Bij oudere SATA SSD's is de aanpak meestal anders. Een typisch voorbeeld is dat van de OCZ Octane of VertexDeze schijven, die destijds erg populair waren, kampten met stabiliteitsproblemen in oudere firmwareversies. Gebruikers met deze schijven ondervonden extreem lange opstarttijden, gedeeltelijke vastlopers en terugkerende fouten bij het opstarten van verschillende distributies.
Bij dit soort apparaten bood de fabrikant specifieke tools aan (zoals OCZ Toolbox voor Windows) met diverse beperkingen: bijvoorbeeld, Het was niet toegestaan om de schijf te flashen vanaf dezelfde SSD als het systeem zelf.Ze verplichtten je om het besturingssysteem op een aparte schijf te installeren, en het systeem kon vastlopen als je bepaalde stuurprogramma's had geïnstalleerd (zoals specifieke versies van Intel RST). Een aanzienlijk ongemak, vooral als je de SSD al als primaire schijf gebruikt.
De praktische oplossing voor de meeste gebruikers was om hun toevlucht te nemen tot een opstartbare USB-flashdrive met een live Linux-distributie (bijvoorbeeld Ubuntu), kopieer het door OCZ geleverde uitvoerbare bestand voor de firmware-update ernaartoe en voer het hele proces uit door vanaf die USB-schijf op te starten. De procedure zou in grote lijnen als volgt zijn:
Bereid eerst een USB-stick van minimaal 1 GB voor en schrijf er een live Ubuntu-image op met behulp van hulpprogramma's zoals... unetbootinMet deze tool kunt u de ISO direct downloaden (als u deze nog niet hebt) en een gedownloade ISO hergebruiken om deze naar een USB-schijf te schrijven, nadat u deze in FAT32 hebt geformatteerd. Het is essentieel om de juiste optie te selecteren. juiste eenheid vanaf de USB-stick, zodat je niet per ongeluk een andere harde schijf flasht.
Vervolgens download je het uitvoerbare bestand van de OCZ-firmware (een bestand met een naam zoals...). fwupden plaats het in de hoofdmap van de USB-schijf. Wanneer je je computer opnieuw opstart, ga je naar de BIOS, herstel je desgewenst de standaardinstellingen, wijzig je de SATA-controllermodus naar AHCI en selecteer je om op te starten vanaf de Ubuntu live-USB.
Wanneer je de live-omgeving laadt, bevestig je dat je internettoegang hebt (bijvoorbeeld door Firefox te openen en te controleren of je kunt browsen) en zoek je het bestand op. fwupddie in veel gevallen onder een routetype gemonteerd zal lijken /cdromDeze distributie behandelt de USB-schijf alsof het een optische schijf is, dus het is normaal om de inhoud in die map te zien.
Vanuit een terminal kunt u het hulpprogramma uitvoeren met sudo en verwijzen naar het bijbehorende SATA-apparaat, bijvoorbeeld:
sudo /cdrom/fwupd /dev/sda
Het programma moet het SSD-model herkennen (bijvoorbeeld OCZ-VERTEX2), het serienummer en de huidige firmwareversie weergeven en, als alles correct is, doorgaan met het flashen van de nieuwe versie. U ziet een succesbericht op het scherm en wanneer u opnieuw controleert, is de firmwareversie gewijzigd naar de nieuwe (bijvoorbeeld van 1.24 naar 1.29).
Het is mogelijk dat de SSD zich in een bepaalde toestand bevindt. “vergrendeld” of “bevroren”Dit voorkomt flashen. In dat geval geeft de tool een foutmelding weer die aangeeft dat de schijf vergrendeld is en adviseert om de stroom uit en weer aan te zetten. Een gebruikelijke manier om de schijf in dit geval te ontgrendelen, is door de computer vanuit Ubuntu Live in de slaapstand te zetten (standby-modus), een paar seconden te wachten en de computer weer te hervatten. Na deze cyclus zullen veel schijven niet langer vergrendeld zijn en kunt u het programma weer uitvoeren. fwupd met succes.
Nadat de schijf is bijgewerkt, start u de computer opnieuw op, gaat u terug naar de BIOS, herstelt u alle eerdere instellingen (inclusief overklokken) en start u uw gebruikelijke besturingssysteem op vanaf de SSD. Windows, als dat uw primaire besturingssysteem op die computer is, detecteert de wijzigingen aan het apparaat en vraagt u om nogmaals opnieuw op te starten. Vanaf dat moment werkt de schijf met de SSD. Nieuwe firmware is al geïnstalleerd.
Veilig wissen, AHCI-modus en TRIM: belangrijke stappen rondom firmware
Firmware-updates gaan meestal gepaard met andere belangrijke aanpassingen om de levensduur van de SSD te verlengen en zeldzame problemen te voorkomen. Een belangrijk concept om te begrijpen is dat een SSD niet op dezelfde manier wordt behandeld als een traditionele mechanische harde schijf: solid-state drives. Ze bootsen de interface van een harde schijf na, maar vanbinnen is het een heel ander verhaal.Daarom is het vaak verstandiger om ze veilig te wissen in plaats van ze te "formatteren".
Beveiligd wissen is simpelweg een beveiligde wisactie op controllerniveau. Het reset de flashgeheugencellen en maakt ze weer als nieuw.Het kan worden gestart vanuit de hulpprogramma's van de fabrikant zelf (bijvoorbeeld de OCZ-tool) of vanuit Linux met behulp van commando's zoals hdparmAltijd met grote zorgvuldigheid. Voordat u begint, is het raadzaam de schijf correct te identificeren met:
sudo fdisk -l
Daar zie je zoiets als:
Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
en de partitiegegevens. Om te achterhalen of de schijf bevroren is of veilige wisbewerkingen ondersteunt, wordt doorgaans het volgende gebruikt:
sudo hdparm -I /dev/sda
Aan het eind bevindt zich een "Beveiliging"-blok waar de status kan worden weergegeven. "bevroren" of "niet bevroren"Als het systeem vastloopt, raden sommige handleidingen aan om de data-/stroomkabel los te koppelen en opnieuw aan te sluiten terwijl het systeem draait (met uiterste voorzichtigheid) totdat de status verandert naar "niet vastgelopen", of om het systeem in de slaapstand te zetten en vervolgens weer te hervatten, vergelijkbaar met wat eerder is besproken. fwupd.
Een ander belangrijk aspect is hoe de SATA-controller in de BIOS is geconfigureerd. Het is erg belangrijk dat de SSD correct werkt. AHCI-modus en niet in IDE/Legacy-modus.Tenzij je om de een of andere reden een verouderde kernel gebruikt. Als je overschakelt van IDE-modus, verlies je functies zoals NCQ en in veel gevallen ook de juiste TRIM-ondersteuning, wat uiteindelijk leidt tot prestatievermindering en mogelijke problemen naarmate de schijf vol raakt.
Nadat Linux is geïnstalleerd en draait op de SSD in AHCI-modus, is de volgende stap TRIM. Op systemen met ext4 Het is gebruikelijk om de montageoptie in te schakelen. discard zodat het bestandssysteem de SSD laat weten welke blokken niet meer in gebruik zijn. Dit kan worden gedaan door het bestand te bewerken. /etc/fstab en het toevoegen van de bijbehorende optie aan de SSD-partitieregels, bijvoorbeeld:
UUID=... / ext4 discard,errors=remount-ro,relatime 0 1
UUID=... /home ext4 discard,defaults,relatime 0 2
met Geactiveerd verwijderen, start het systeem TRIM in realtime. Wanneer je bestanden verwijdert of blokken vrijmaakt. De optie relatime (wat in recente kernels al de standaardinstelling is) verlaagt de frequentie waarmee de toegangstijden van bestanden worden bijgewerkt, waardoor de schrijfbelasting op de SSD iets afneemt. Een andere veelgebruikte strategie is om zaken zoals swapruimte naar een traditionele mechanische harde schijf te verplaatsen. /var of browsercaches, vooral als u zich zorgen maakt over de levensduur van de solid-state drive.
Wanneer de firmware alleen via Windows of de OEM wordt bijgewerkt
Niet alle scenario's zijn even "vriendelijk" voor Linux. In veel gevallen, vooral bij SSD's van merken als SanDisk of WD, is de officiële tool voor het beheren van de schijf en het bijwerken van de firmware een Dashboard alleen beschikbaar voor WindowsDit programma detecteert zowel SanDisk- als WD-schijven, communiceert rechtstreeks met de SSD en downloadt en installeert een nieuwere firmwareversie als deze beschikbaar is in de cloud van de fabrikant.
In deze omgevingen bestaan er simpelweg geen Mac- of Linux-versies van het Dashboard. Als je een puur Linux-systeem hebt en je SSD van een van deze merken is, zul je merken dat... Er is geen officiële applicatie die je vanaf je systeem kunt flashen.Het alternatief omvat doorgaans een van de volgende opties: Windows tijdelijk opstarten vanaf een andere schijf of USB-stick, een andere Windows-computer gebruiken om de schijf bij te werken, of, in het geval van OEM-machines (Dell, HP, Lenovo, enz.), vertrouwen op de updateprogramma's die door de computerfabrikant zijn geïntegreerd.
In OEM-systemen wordt het iets ingewikkelder: zelfs als de SSD fysiek een SanDisk- of WD-model is, is de firmware meestal een specifieke variant voor die fabrikantFirmware-updates worden vervolgens verspreid via tools zoals "Dell Updates", "HP Support Assistant" en vergelijkbare programma's. Het dashboard voor consumenten past deze updates niet toe, omdat ze niet bedoeld zijn voor consumentenapparaten, maar voor de specifieke OEM-configuratie.
Heel belangrijk: als het dashboard aangeeft dat uw firmware up-to-date is, maar u elders hebt gezien dat er een nieuwere versie beschikbaar is, kan het precies dit verschil zijn dat de oorzaak is. Firmware voor de detailhandel en OEM-firmwareHet is niet aan te raden om firmwares van verschillende kanalen te combineren, omdat SSD's van OEM's verschillende eigenschappen of operationele parameters kunnen hebben.
Wat betreft het ontvangen van het standaard firmwarebestand voor handmatige installatie, zijn fabrikanten doorgaans heel duidelijk: de handmatige Dashboard-updateoptie is bedoeld voor speciale gevallen waarin de technische ondersteuning een zeer specifiek testbestand en nauwkeurige instructies voor het laden ervan verstrekt. Het is niet gebruikelijk dat ze u dat binaire bestand gratis ter beschikking stellen om zelf vanuit Linux uit te voeren.
Als je SSD de status 'End of Life' (EOL) heeft bereikt, kun je met officiële hulpprogramma's meestal nog steeds updates toepassen. de nieuwste firmwareversie die werd uitgebracht toen het product te koop wasMaar daarna zullen er geen verdere aanpassingen meer plaatsvinden. En als het Dashboard de schijf niet kan flashen, is de enige optie die overblijft een supportaanvraag in te dienen en te kijken of ze alternatieve oplossingen bieden.
De status van de SSD controleren na de upgrade.
Na het aanpassen van de firmware is het verstandig om de schijfstatus te controleren. Naast het simpelweg controleren van het versienummer, is het raadzaam om ook de schijfstatus te controleren. nvme list Of via de BIOS, het is raadzaam om even te kijken naar de SMART-gegevens van de eenheid om te bevestigen dat er geen ongebruikelijke verplaatste sectoren, kritieke fouten of iets anders ongewoons worden gedetecteerd.
Op Linux kun je het pakket installeren. smartmontools en gebruik smartctl Om deze informatie te lezen. Bijvoorbeeld:
sudo apt-get install smartmontools
sudo smartctl -a /dev/sda
Dit toont u een groot aantal meetwaarden: aantal fouten, aantal opnieuw toegewezen blokken, temperatuur, bedrijfsuren, enz. Sommige grafische interfaces, zoals het hulpprogramma "Schijven" in GNOME-omgevingen, bieden ook een tabblad hiervoor. SMART-status en basisbenchmarksHoud er rekening mee dat als de schijf is aangekoppeld, bepaalde benchmarks mogelijk mislukken, wat erop wijst dat het apparaat bezet is.
Als de SSD na het bijwerken van de firmware, het configureren van AHCI, het inschakelen van TRIM en het controleren van de parameters nog steeds ernstige problemen vertoont, is het verstandigst om de SMART-gegevens voor te bereiden. Neem contact op met de technische ondersteuning van het merk.Het zou niet het eerste of het laatste apparaat zijn dat onder garantie vervangen moet worden omdat het "beschadigd" uit de fabriek kwam of abnormale slijtage heeft vertoond.
Hoewel het bijwerken van de SSD-firmware in Linux misschien een hele klus lijkt met ISO's, specifieke tools, AHCI-modi en "bevroren" toestanden, is het uiteindelijk de moeite waard om het onder controle te hebben: stabiele firmware, met correct geconfigureerde TRIM, veilige wissen wanneer nodig en regelmatige SMART-monitoring maken een enorm verschil voor de prestaties van je systeem. SSD en Linux werken snel, betrouwbaar en zonder vreemde verrassingen. gedurende jaren.
Gepassioneerd schrijver over de wereld van bytes en technologie in het algemeen. Ik deel mijn kennis graag door te schrijven, en dat is wat ik in deze blog ga doen: je de meest interessante dingen laten zien over gadgets, software, hardware, technologische trends en meer. Mijn doel is om u te helpen op een eenvoudige en onderhoudende manier door de digitale wereld te navigeren.

