- Opdatering af SSD-firmwaren på Linux forbedrer stabilitet og ydeevne, og retter alvorlige controllerfejl.
- Hver producent tilbyder forskellige metoder: bootbare ISO'er, specifikke eksekverbare filer eller dashboards kun til Windows.
- Ud over firmwaren er følgende vigtige: AHCI-tilstand, TRIM, sikker spot-sletning og korrekt monteringskonfiguration.
- Efter opdateringen anbefales det at kontrollere SMART, og hvis fejlene fortsætter, kontakte teknisk support eller garantien.

Hvis du bruger Linux dagligt og har en moderne SSD, bliver du før eller siden nødt til at håndtere Opdateringer af diskfirmwareDet er ikke ligefrem det sjoveste i verden: hver producent laver sine egne ting, mange tilbyder kun værktøjer til Windows, og i tilfælde af nogle mærker udgiver de ikke engang en simpel binær fil, som du kan bruge direkte med typiske Linux-værktøjer som nvme-cli o hdparmAlligevel kan du med lidt knowhow holde din SSD opdateret uden at forlade din yndlingsdistribution.
Opdatering af firmware er ikke en lunefuld løsning. I praksis kan det være forskellen på et stabilt system og en enhed, der fryser. iowait udløst, tilfældige nedbrud og opstartsproblemerDette gælder især for nogle ældre SSD-modeller. Derudover retter mange firmwareopdateringer større fejl i visse filsystemer, forbedrer ydeevnen eller tilføjer korrekt understøttelse af funktioner som TRIM. Vi vil se nærmere på, hvordan dette problem håndteres i Linux af forskellige producenter, og hvilke forholdsregler der bør tages.
Hvorfor er det så vigtigt at opdatere SSD-firmwaren?
Før vi dykker ned i kommandoer og værktøjer, er det vigtigt at forstå, hvad der står på spil. Firmware er SSD'ens "interne operativsystem"Dette omfatter den kode, der styrer, hvordan data skrives og læses, flashhukommelsescontrolleren, de interne bloktabeller, slidudjævning og så videre. En fejl der er ikke nogen triviel sag; den kan forårsage alt fra ydeevnetab til kritiske fejl.
Nogle brugere er begyndt at lide efter et par dages tilfredshed med deres nye SSD ekstremt høje I/O-ventetider (iowait), ekstrem langsomhed og system-semi-locksDette har endda nået et punkt, hvor nyinstallerede Linux-systemer nægter at boote. I mange af disse tilfælde har det første skridt til at afhjælpe situationen været at opdatere firmwaren til en version, der er rettet af producenten.
I specifikke modeller (såsom nogle ældre OCZ Octane- eller Vertex-modeller) har firmwareændringen ikke kun betydet eliminer stabilitetsproblemermen også en mærkbar ydeevneforøgelse. Det er en justering, vi normalt venter med til "en anden dag", men i tilfælde af SSD'er bør det behandles næsten som en integreret del af systemopstart.
Men selvom processen typisk ikke sletter dine data, falder enhver flashing-operation ind under kategorien "hvis noget går galt, vil det ske på det værst tænkelige tidspunkt." Derfor anbefales det kraftigt. have en sikkerhedskopi eller et systembillede før du rører ved noget i firmwaren.
Firmwareproducenter og support på Linux: det virkelige billede
Det største problem, du vil støde på, er ikke teknisk, men økosystemrelateret: hvert mærke håndterer firmwareopdateringer forskelligt, og ofte Officiel support fokuserer næsten udelukkende på Windows.Til Linux skal du ofte bruge bootbare ISO-billeder, specifikke værktøjer eller blot nøjes med at gøre det.
I tilfældet med Samsung er der for eksempel situationer, hvor der ikke leveres en direkte binær fil til brug med. nvme-cliDette tvinger os til at ty til opdater ISO-billeder Disse er designet til at boote i deres eget miljø og flashe derfra. Fra Linux kan vi dog "udpakke" den ISO og køre opdateringsværktøjet direkte.
Andre producenter, såsom OCZ (før opkøbet, meget populær med Vertex og Octane), distribuerede Linux-specifikke værktøjer Disse er eksekverbare filer, der opretter forbindelse til internettet, registrerer modellen og downloader den nyeste firmwareversion. Processen involverer typisk at forberede et USB-drev med en livedistribution og arbejde derfra for at undgå at bruge harddisken.
I den modsatte ende af verden er der mærker, der stort set ikke leverer officielle Linux-værktøjer, eller som kun tillader opdateringer fra Windows eller fra bundkortets eget værktøj. Dette er tilfældet med mange OEM-systemer (Dell, HP, Lenovo osv.), hvor SSD-opgraderinger er integreret i producentens opgraderingsmekanismer. og tilbydes ikke direkte til brugeren som en generisk firmwarefil.
Opdatering af firmwaren på en Samsung NVMe SSD (eksempel med 980 Pro)
Lad os tage eksemplet med en ret almindelig NVMe SSD, såsom en Samsung 980 ProProducenten leverer ISO-billeder af firmwareopdateringer, som i teorien er beregnet til at blive brændt til et USB-drev og startet derfra. Fra Linux kan vi dog bruge den ISO uden at skulle genstarte i et andet miljø.
Den grundlæggende procedure ville være som følger. Find først den ISO, der svarer til din SSD-model, i afsnittet med Samsungs supportværktøjer, omkring deres lagringsværktøjer (den typiske sti er normalt noget i retning af denne): "forbrugerlager / support / værktøjer" (på deres hjemmeside). Når du har identificeret den korrekte ISO, downloader du den ved hjælp af noget i retning af:
wget https://semiconductor.samsung.com/resources/software-resources/Samsung_SSD_980_PRO_5B2QGXA7.iso
Opret derefter et monteringspunkt og monter billedet ved hjælp af loop-indstillingen:
sudo mkdir /mnt/iso
sudo mount -o loop Samsung_SSD_980_PRO_5B2QGXA7.iso /mnt/iso
Inden for den ISO er der normalt en initrd med hele opdateringsmiljøetFra Linux kan du udpakke den med en kommando som denne:
sudo unmkinitramfs /mnt/iso/initrd ~/980
Når den er udpakket, vil du se, at indeni er den binære fil, der er ansvarlig for opdateringen, kendt i denne sammenhæng som fumagicianDu markerer den som eksekverbar og starter den direkte:
sudo chmod +x 980/root/fumagician/fumagician
sudo ./980/root/fumagician/fumagician
Værktøjet vil guide dig og på et tidspunkt bede om bekræftelse. På det tidspunkt skal du sige ja, acceptere processen og lade programmet gøre sit arbejde. Skriv den nye firmware til NVMe-drevet.Afbryd ikke processen under nogen omstændigheder, og sluk især ikke maskinen.
Når du er færdig, anbefales det at slukke eller genstarte enheden for at gennemtvinge en fuldstændig strømcyklus. Efter genstart kan du kontrollere, at firmwareversionen er blevet opdateret korrekt med:
sudo nvme list
I outputtet fra denne kommando vil du se SSD-modellen og feltet for opdateret firmware. Hvis revisionsnummeret matcher det forventede, er handlingen gennemført, og din Samsung 980 Pro er nu opdateret.
Opdatering af firmware på klassiske SATA SSD'er (f.eks. OCZ Octane / Vertex)
Når det kommer til ældre SATA SSD'er, er fremgangsmåden normalt anderledes. Et typisk eksempel er den OCZ Octane eller VertexDisse drev, der var meget populære på det tidspunkt, led af visse stabilitetsproblemer i ældre firmwareversioner. Brugere med disse drev oplevede ekstremt lange opstartstider, delvise frysninger og tilbagevendende fejl ved opstart af forskellige distributioner.
I disse typer enheder tilbød producenten specifikke værktøjer (såsom OCZ Toolbox på Windows) med adskillige begrænsninger: for eksempel, De tillod ikke flashing af disken fra den samme system-SSD.De tvang dig til at have operativsystemet på et separat drev, og det kunne føre til fejl, hvis du havde bestemte drivere installeret (f.eks. specifikke versioner af Intel RST). Et betydeligt besvær, især hvis du allerede bruger SSD'en som dit primære drev.
Den praktiske løsning for de fleste brugere var at ty til en bootbart USB-flashdrev med en live Linux-distribution (for eksempel Ubuntu), kopier den eksekverbare firmwareopdateringsfil fra OCZ til den og udfør hele opstartsprocessen fra det USB-drev. Proceduren ville generelt set være:
Først skal du forberede et USB-drev på mindst 1 GB og skrive et live Ubuntu-billede til det ved hjælp af værktøjer som f.eks. unetbootinDette værktøj giver dig mulighed for både at downloade ISO-filen direkte (hvis du ikke allerede har den) og genbruge en downloadet ISO til at skrive den til et USB-drev, efter at du har formateret den i FAT32. Det er vigtigt at vælge korrekt enhed fra USB-drevet, så du ikke ved et uheld flasher en anden harddisk.
Dernæst downloader du den eksekverbare OCZ-firmwarefil (en fil med navnet noget i retning af fwupd) og placer den i roden af USB-drevet. Når du genstarter computeren, skal du gå ind i BIOS, gendanne standardindstillingerne, hvis du ønsker det, ændre SATA-controllertilstanden til AHCI og vælge at starte fra Ubuntu Live USB.
Når du indlæser live-miljøet, bekræfter du, at du har internetadgang (for eksempel ved at åbne Firefox og bekræfte, at du kan browse) og finder filen. fwupdsom i mange tilfælde vil fremstå monteret under en rutetype /cdromDenne distribution behandler USB-drevet, som om det var et optisk drev, så det er normalt at se indholdet under den mappe.
Fra en terminal kører du værktøjet ved hjælp af sudo og peger på den tilsvarende SATA-enhedfor eksempel:
sudo /cdrom/fwupd /dev/sda
Programmet bør identificere SSD-modellen (f.eks. OCZ-VERTEX2), vise serienummeret, den aktuelle firmwareversion, og hvis alt er korrekt, fortsætte med at flashe den nye revision. Du vil se en succesmeddelelse på skærmen, og når du tjekker igen, vil firmwareversionen være ændret til den nye (f.eks. fra 1.24 til 1.29).
Det er muligt, at SSD'en er i en tilstand "låst" eller "frossen"Dette forhindrer blinkning. I så fald viser værktøjet en fejlmeddelelse, der angiver, at drevet er låst, og foreslår en strømcyklus. En almindelig måde at låse drevet op i denne sammenhæng er at tvinge computeren til at suspendere indefra Ubuntu Live (standbytilstand), vente et par sekunder og genoptage driften. Efter denne cyklus vil mange drev ikke længere være frosset, og du vil kunne køre programmet igen. fwupd med succes.
Når drevet er opdateret, skal du genstarte, vende tilbage til BIOS, gendanne alle tidligere indstillinger (inklusive overclocking), og starte dit sædvanlige operativsystem fra SSD'en. Windows, hvis det er dit primære operativsystem på den pågældende maskine, vil registrere ændringer på enheden og bede dig om at genstarte igen. Fra da af vil drevet fungere med Ny firmware er allerede installeret.
Sikker sletning, AHCI-tilstand og TRIM: vigtige trin omkring firmware
Firmwareopdateringer ledsages normalt af andre vigtige justeringer for at forlænge SSD'ens levetid og forhindre sjældne problemer. Et vigtigt koncept at forstå er, at en SSD ikke behandles som en traditionel mekanisk harddisk: solid-state-drev. De efterligner brugerfladen på en harddisk, men indeni er de en anden historie.Derfor giver det ofte mening at udføre en sikker sletning i stedet for at "formatere" dem.
Sikker sletning er simpelthen en sikker sletning på controllerniveau, der Den nulstiller flashcellerne og efterlader dem som nye.Den kan startes fra producentens egne værktøjer (f.eks. OCZ-værktøjet) eller fra Linux ved hjælp af kommandoer som f.eks. hdparmAltid med stor omhu. Før du starter, er det en god idé at identificere disken korrekt med:
sudo fdisk -l
Der vil du se noget i retning af:
Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
og partitionsdetaljerne. For at finde ud af, om disken er frosset eller understøtter sikker sletning, bruges følgende normalt:
sudo hdparm -I /dev/sda
Ved udgangen er der en "Sikkerhed"-blok, hvor status kan vises "frossen" eller "ikke frossen"Hvis det er frosset, anbefaler nogle guider at frakoble og tilslutte data-/strømkablet igen, mens systemet kører (med ekstrem forsigtighed), indtil status ændres til "ikke frosset", eller at ty til at suspendere og genoptage systemet, svarende til det, der blev diskuteret tidligere med fwupd.
Et andet vigtigt aspekt er, hvordan SATA-controlleren er konfigureret i BIOS. Det er meget vigtigt, at SSD'en fungerer i AHCI-tilstand og ikke i IDE/LegacyMedmindre du af en eller anden grund bruger en forældet kerne. Hvis du skifter fra IDE-tilstand, mister du funktioner som NCQ og i mange tilfælde korrekt TRIM-understøttelse, hvilket i sidste ende fører til forringelse af ydeevnen og potentielle problemer, når disken fyldes op.
Med Linux installeret og kørende på SSD'en i AHCI-tilstand, er næste trin TRIM. På systemer med ext4 Det er almindeligt at aktivere monteringsmuligheden discard så filsystemet fortæller SSD'en, hvilke blokke der ikke længere er i brug. Dette kan gøres ved at redigere filen. /etc/fstab og tilføjer den tilsvarende indstilling til SSD-partitionslinjerne, for eksempel:
UUID=... / ext4 discard,errors=remount-ro,relatime 0 1
UUID=... /home ext4 discard,defaults,relatime 0 2
med Når afvisningen er aktiveret, starter systemet TRIM i realtid Når du sletter filer eller frigør blokke. Muligheden relatime (som allerede er standard i nyere kerner) reducerer hyppigheden, hvormed filadgangstider opdateres, hvilket sænker skrivebelastningen på SSD'en en smule. En anden almindelig strategi er at flytte ting som swap-plads til en traditionel mekanisk harddisk. /var eller browsercacher, især hvis du er bekymret for solid-state-drevets levetid.
Når firmwaren kun opdateres fra Windows eller OEM
Ikke alle scenarier er lige så "venlige" over for Linux. I mange tilfælde, især med SSD'er, der sælges under mærker som SanDisk eller WD, er det officielle værktøj til at administrere drevet og opdatere dets firmware en Dashboard kun tilgængeligt for WindowsDette program registrerer både SanDisk- og WD-drev, kommunikerer direkte med SSD'en, og hvis det finder en nyere firmwareversion, der er hostet i producentens sky, downloader og installerer det den.
I disse miljøer findes Mac- eller Linux-versioner af Dashboard simpelthen ikke. Hvis du har et rent Linux-system, og din SSD er fra et af disse mærker, vil du opdage, at Der er ingen officiel applikation til at flashe fra dit system.Alternativet involverer normalt en af disse muligheder: midlertidig opstart af Windows fra en anden disk eller et andet USB-drev, brug af en anden Windows-computer til at opdatere disken, eller, i tilfælde af OEM-maskiner (Dell, HP, Lenovo osv.), brug af de opdateringsværktøjer, der er integreret af computerproducenten.
I OEM-systemer bliver tingene lidt mere komplicerede: selvom SSD'en fysisk er en SanDisk- eller WD-model, er dens firmware normalt en specifik variant for den pågældende producentFirmwareopdateringer distribueres derefter via værktøjer som "Dell Updates", "HP Support Assistant" og lignende, og "detail"-dashboardet anvender dem ikke, fordi de ikke er beregnet til forbrugerenheder, men til den specifikke OEM-konfiguration.
Meget vigtigt: Hvis dashboardet angiver, at din firmware er opdateret, men du har set andre steder, at der findes en nyere version, kan det være netop denne forskel mellem detailfirmware og OEM-firmwareDet anbefales ikke at forsøge at blande firmware fra forskellige kanaler, da OEM SSD'er kan have forskellige egenskaber eller driftsparametre.
Med hensyn til at modtage standard firmwarefilen til manuel applikation, er producenterne normalt meget klare: den manuelle Dashboard-opdateringsmulighed er beregnet til særlige tilfælde, hvor teknisk support leverer en meget specifik testfil og præcise instruktioner til indlæsning af den. Det er ikke almindeligt, at de gratis stiller den binære fil til rådighed, så du kan køre den fra Linux på egen hånd.
Hvis din SSD allerede er udtjent (EOL), tillader officielle værktøjer dig normalt at anvende den. den seneste firmwareversion, der blev udgivet, mens produktet var til salgMen der vil ikke være yderligere revisioner efter det. Og hvis Dashboard ikke kan flashe drevet, er den eneste mulighed tilbage at åbne en supportsag og se, om de tilbyder alternative løsninger.
Kontrol af SSD-status efter opgraderingen
Efter at have justeret firmwaren, er det en god idé at udføre nogle disktilstandskontroller. Ud over blot at tjekke versionsnummeret med nvme list eller via BIOS, anbefales det at kigge på SMART-data af enheden for at bekræfte, at der ikke registreres usædvanligt flyttede sektorer, kritiske fejl eller noget usædvanligt.
På Linux kan du installere pakken smartmontools og brug smartctl For at læse disse oplysninger. For eksempel:
sudo apt-get install smartmontools
sudo smartctl -a /dev/sda
Dette vil vise dig et stort antal målinger: antal fejl, antal omfordelte blokke, temperatur, tændingstimer osv. Nogle grafiske grænseflader, såsom værktøjet "Diske" i GNOME-miljøer, tilbyder også en fane til SMART-status og grundlæggende benchmarksBemærk venligst, at hvis disken er monteret, kan visse benchmarks mislykkes, hvilket indikerer, at enheden er optaget.
Hvis SSD'en fortsat har alvorlige problemer efter opdatering af firmwaren, konfiguration af AHCI, aktivering af TRIM og kontrol af parametre, er det mest fornuftige at forberede SMART-dataene og kontakt mærkets tekniske supportDet ville ikke være den første eller den sidste enhed, der skal udskiftes under garantien, fordi den kom "beskadiget" fra fabrikken eller har lidt unormal forringelse.
I sidste ende, selvom processen med at opdatere SSD-firmware i Linux kan virke som en prøvelse, der involverer ISO'er, specifikke værktøjer, AHCI-tilstande og "frosne" tilstande, er det værd at have det under kontrol: at have stabil firmware med korrekt konfigureret TRIM, sikker sletning når det er nødvendigt og regelmæssig SMART-overvågning gør en enorm forskel for dit systems ydeevne. SSD og Linux fungerer hurtigt, pålideligt og uden mærkelige overraskelser i løbet af år.
Passioneret forfatter om bytes-verdenen og teknologien generelt. Jeg elsker at dele min viden gennem skrivning, og det er det, jeg vil gøre i denne blog, vise dig alle de mest interessante ting om gadgets, software, hardware, teknologiske trends og mere. Mit mål er at hjælpe dig med at navigere i den digitale verden på en enkel og underholdende måde.

