9Sep

"Ubuntu" nėra "TRIM" SSD pagal numatytuosius nustatymus: kodėl ne, ir kaip tai padaryti pats

Ubuntu nori įgalinti TRIM SSD pagal nutylėjimą Ubuntu 14.04.Kitaip tariant, "Ubuntu" dar nenaudoja "TRIM", taigi jūsų SSD laikui bėgant sulėtėja. Bet kodėl Ubuntu jau nenaudoja TRIM?

Ši naujiena, greičiausiai, bus nustebinta daugeliui žmonių, kurie manė, kad "Ubuntu" ir kiti "Linux" platintojai jau naudojosi TRIM.TRIM neleidžia SSD slopinti laiko ir yra būtina SSD techninės priežiūros dalis.

Kodėl TRIM yra svarbus

Mes apžvelgėme, kodėl TRIM svarbu anksčiau. Kai ištrinate failą ant senojo magnetinio standžiojo disko, kompiuteris paprasčiausiai pažymi tą failą kaip ištrintą.Duomenų rinkmenos duomenys kietajame diske - todėl ištrinti failai gali būti atkurti. Galiausiai kompiuteris perrašys ištrintus failus, kai perrašys jų sektorius naujais duomenimis.

kietojo kūno diskai( SSD) veikia skirtingai. Kiekvieną kartą, kai jūs įrašote failą į SSD, kompiuteris pirmiausia turi ištrinti visus duomenis sektoriuose, į kuriuos jie įrašo duomenis. Jis negali "perrašyti" sektorių vienoje operacijoje - pirmiausia juos reikia išvalyti, tada rašyti tuštiems sektoriams.

Tai reiškia, kad SSD laikas sulėtės. Rašymas SSD sektoriams bus greitas pirmą kartą.Kai ištrinsite kai kuriuos failus ir bandysite vėl parašyti, tai užtruks ilgiau. Tai yra didelė priežastis, dėl kurios "Google" originalus "Nexus 7" laikui bėgant sulėtėjo."Google" ištaisė tai, įgyvendindama "TRIM" 4.3 versijoje "Android".("Android" taip pat naudoja "Linux" branduolį.)

Įjungus TRIM, operacinė sistema kiekvieną kartą, kai ištrina failą, nurodo SSD.Tada diskas gali ištrinti sektorius, kuriuose yra failo turinys, todėl ateityje rašymas sektoriams bus greitas.

Kitaip tariant, jei nenaudosite TRIM, jūsų SSD laikui bėgant sulėtės.Štai kodėl šiuolaikinės operacinės sistemos, įskaitant "Windows 7", "Mac OS X 10.6.8+" ir "Android 4.3+", naudoja TRIM."TRIM" buvo įdiegtas Linux 2008 m. Gruodžio mėn., Tačiau "Ubuntu" jo nenaudoja pagal nutylėjimą.

SUSIJĘ ĮRANGA
Kas yra kietieji diskai( SSD), ir ar man reikia?
Ar man reikia optimizuoti mano SSD su trečiosios šalies programine įranga?

Kodėl Ubuntu TRIM pagal nutylėjimą?

Tikroji priežastis, kodėl Ubuntu nėra TRIM SSD pagal nutylėjimą, nes "Linux" branduolio "TRIM" įdiegimas yra lėtas ir dėl prasto našumo, esant normaliam naudojimui.

"Windows 7" ir "Windows 8" sistemoje "Windows" kiekvieną kartą, kai ji ištrina failą, "Windows" siunčia TRIM komandą, nurodydama, kad diske iš karto ištrinami failo bitai."Linux" palaiko tai, kai failų sistemos yra sumontuotos su "discard" parinktimi. Tačiau "Ubuntu" ir kiti paskirstymai neveikia pagal numatytuosius nustatymus.

"OpenSUSE" wiki yra išsami informacija iš kūrėjo, kuris labiau susipažinęs su "Linux" branduoliu, nei mes. Tai šiek tiek pasenęs, bet tikėtina, kad vis tiek tikėtinas, kai kalbama apie našumą:

"Realizuoto 11,5, 11,3 ir 11,4 realiojo laiko įvedimo branduolys nėra optimizuotas. Spec.reikalauja apkarpyti, palaikydama vektorizuotą trim plokščių sąrašą, tačiau nuo branduolio 3.0 apdailos tik branduolys naudoja tik vieną išmetimo / apdailos diapazoną, o dabartinėmis 2011 m. SSD plokštėmis tai rodo, kad veikimo blogėjimas, o ne našumo padidėjimas. Yra keletas priežasčių, kodėl naudojant branduolius realiuoju laiku išmesti paramą su išankstiniais 3.1 branduoliais. Neaišku, kada branduolių išmetimo funkcionalumas bus optimizuotas, kad jis veiktų naudingai su dabartinės kartos SSD. "[Šaltinis]

Kitaip tariant," Linux "branduolys tvarko tokius TRIM komandas realiu laiku lėtai, neoptimizuotai.Įjungus TRIM panašią į tai, kaip "Windows" veikia - tai yra, naudojant "discard" parinktį - sistema iš tikrųjų tampa lėtesnė, nei TRIM nebūtų naudojamas. Ubuntu ir kiti "Linux" paskirstymai neleidžia "išmesti" pagal numatytuosius nustatymus jūsų failų sistemoms, o jūs taip pat neturėtumėte.

Yra dar kelias būdas

Kadangi "Linux" branduolio realaus laiko "išmesti" TRIM operacija nėra gerai, dauguma "Linux" paskirstymų, įskaitant "Ubuntu", automatiškai nenaudoja TRIM."Android" taip pat nenaudojo "TRIM", kol "Android 4.3".

Tačiau yra ir kitas būdas naudoti TRIM.Kiekvieną kartą, kai failas bus ištrintas, vietoj to, kad išduodant TRIM komandą, gali būti naudojamas FITRIM funkcija. Tai atsitinka naudojant komandą fstrim. Iš esmės komanda fstrim analizuoja failų sistemą ir informuoja diską, kurių blokai nebėra reikalingi, todėl diskas gali juos atmesti. Tai išjungia TRIM iš realaus laiko operacijos į numatytą užduotį.Kitaip tariant, fstrim gali atlikti TRIM kaip cron darbą.Nėra jokios priežasties to nedaryti. Tai nieko neduos;tai tik kita housecleaning užduotis sistema turi atlikti pagal tvarkaraštį.

Iš tikrųjų tai yra požiūris, kurį "Google" gavo su 4.3 versijos "Android"."Android" tiesiog paleidžia "fstrim" užduotį kartais trinti failų sistemą, užfiksuodamas problemą, sulėtinančią visus tuos originalius "Nexus 7s".

"Ubuntu" taip pat žiūri automatiškai įgalinti "TRIM", sistemoje reguliariai paleidžiant "fstrim".Tikimės, kad tai bus "Ubuntu 14.04" dalis, taigi Ubuntu vartotojai nebus priversti elgtis su SSD veikimo blogėjimu arba paleisti "fstrim" savarankiškai.

Kaip įjungti TRIM

Mes nerekomenduojame įdiegti failų sistemų "išmetimo" operacijoje, nes tai gali sukelti lėtesnį našumą įprasto naudojimo metu. Tačiau galite naudoti TRIM patys, kartais vykdydami komandą fstrim arba sukurdami savo cronjob, kuris paleidžia fstrim pagal tvarkaraštį.

Norėdami išbandyti savo SSD į Ubuntu, tiesiog atidarykite terminalą ir paleiskite šią komandą:

sudo fstrim -v /

Jūs galite paleisti pirmiau nurodytą komandą kartais, kad būtų išvengta našumo pablogėjimo SSD.Kaip dažnai reikia paleisti, priklauso nuo to, kaip dažnai failus iš SSD ištrinami. Jei bandysite paleisti komandą naudodami diską, kuris nepalaiko "TRIM", pamatysite klaidą.

Jei norite reguliariai paleisti TRIM, galite tiesiog sukurti cronjob, kuris paleidžia jums komandą fstrim.Štai kaip atlikti barebone cron darbą, kuris tai padarys automatiškai.

Visų pirma paleiskite šią komandą, kad atidarytumėte nano teksto redaktorių su root teisėmis:

sudo nano /etc/cron.daily/ fstrim

Įrašykite šį kodą į failą:

#!/bin/ sh

fstrim /

Išsaugokite failą paspausdami Ctrl + O ir paspauskite Enter, kad patvirtintumėte. Paspauskite Ctrl + X, jei norite išsaugoti failą, uždarykite nano.

Vėliau paleiskite šią komandą, kad atliktumėte scenarijų:

sudo chmod + x /etc/cron.daily/ fstrim

Ubuntu dabar paleis fstrim pagal tvarkaraštį, kaip ir kitos sistemos techninės priežiūros užduotys.

Atkreipkite dėmesį, kad TRIM palaikoma tik šiuolaikinėse failų sistemose, todėl jums reikės kažko panašaus į ext4, o ne į ext3 arba ext2.Jei nežinote, kokia failų sistema naudojate, nesijaudinkite - pagal nutylėjimą pasirenkamas ext4.

Didelė šio patarimo dalis taikoma ir kitiems "Linux" paskirstams. Nors "Linux" jau seniai įgyvendino "TRIM" palaikymą branduolyje, "TRIM" palaikymas, atrodo, niekada nebuvo įjungtas pagal numatytuosius nustatymus tipiniams Linux distribucijos naudotojams.

Image Credit: Mace Ojala "Flickr"( apkarpyta)