9Sep

Ubuntu ne TRIM SSD po defaultu: zašto ne i kako to omogućiti

click fraud protection

Ubuntu želi omogućiti TRIM za SSD po defaultu u Ubuntu 14.04.Drugim riječima, Ubuntu već ne koristi TRIM, tako da vaš SSD usporava tijekom vremena. Ali zašto Ubuntu već ne koristi TRIM?

Ova vijest vjerojatno će doći kao iznenađenje za mnoge ljude koji su pretpostavili da su Ubuntu i druge Linux distribucije već koristile TRIM.TRIM sprječava usporavanje SSD-a tijekom vremena i nužan je dio održavanja SSD-a.

Zašto je TRIM važan

Pokazali smo zašto je TRIM važan prije. Kada izbrišete datoteku na stari, magnetski tvrdi disk, računalo jednostavno označava tu datoteku kao izbrisanu. Podatci o datoteci stisnuli su se na tvrdom disku - zato se izbrisane datoteke mogu vratiti. Računalo će na kraju prebrisati izbrisane datoteke kada prebrisaju svoje sektore s novim podacima.

Pogoni čvrstog stanja( SSD) rade drugačije. Kad god napišete datoteku na SSD, računalo prvo mora izbrisati sve podatke u sektorima u kojima piše podatke. Ne može samo "prebrisati" sektore u jednoj operaciji - najprije ih mora očistiti, a zatim pisati u praznim sektorima.

instagram viewer

To znači da će SSD usporiti tijekom vremena. Pisanje u sektoru SSD-a bit će brzo po prvi put. Nakon što izbrišete neke datoteke i ponovo pokušate pisati, to će potrajati duže. Ovo je veliki dio razloga što je Googleov izvorni Nexus 7 tijekom vremena usporio toliko. Google je to fiksirao implementiranjem TRIM-a na Androidu 4.3.(Android također koristi Linux kernel.)

S TRIM omogućenim, operativni sustav kaže SSD-u svaki put kad briše datoteku. Pogon tada može izbrisati sektore koji sadrže sadržaj datoteke, tako da pisanje u sektorima će biti brže u budućnosti.

Drugim riječima, ako ne koristite TRIM, SSD će se usporiti tijekom vremena. Zato su moderni operacijski sustavi, uključujući Windows 7+, Mac OS X 10.6.8+ i Android 4.3+, upotrebljavali TRIM.TRIM je implementiran u Linuxu u prosincu 2008., ali Ubuntu ga ne koristi prema zadanim postavkama.

RELATED ARTICLES
Što je SSD( Solid State Drive) i trebam li?
Trebam li "optimizirati" moj SSD s softverom treće strane?

Zašto Ubuntu TRIM po defaultu?

Stvarni razlog Ubuntu ne TRIM SSD-ovi po defaultu je zbog toga što je implementacija TRIM-a Linux kernela spora i rezultira lošom izvedbom u normalnoj upotrebi.

Na Windowsima 7 i 8, Windows šalje TRIM naredbu svaki put kad briše datoteku, rekavši pogonu da odmah briše bitove datoteke. Linux to podržava kada se datotečni sustavi montiraju s opcijom "odbaciti".Međutim, Ubuntu - i druge distribucije - to ne napravi prema zadanim postavkama zbog razloga za izvedbu.

OpenSUSE wiki sadrži neke detaljne informacije od developera koji je više upoznat s Linux kernelom nego mi. To je malo datirano, ali je vjerojatno još uvijek točno kada je u pitanju izvedba:

"Implementacija kernela u realnom vremenu u 11.2, 11.3 i 11.4 nije optimizirana. Spek.pozivi za podrezivanje podržavaju vektorizirani popis raspona raspona, ali od jezgre kernela 3.0 samo se poziva na kernel s jednim odbačenim / trim rasponom i s tekućim srednjim 2011 SSD-ima to je dokazano da uzrokuje degradaciju performansi umjesto povećanja performansi. Postoji nekoliko razloga za korištenje zrna u stvarnom vremenu odbaciti podršku s pred-3.1 kernelima. Nije poznato kada funkcionalnost odbacivanja jezgri će biti optimizirana kako bi korisno radila s trenutnim SSD generacijama. "[Izvor]

Drugim riječima, Linux kernel upravlja takvim TRIM naredbama u stvarnom vremenu na sporo, neoptimiziran način. Omogućavanje TRIM-a sličnog načinu rada sustava Windows - tj. Korištenjem opcije "odbacivanje" - rezultat je da sustav zapravo postane sporiji nego da se TRIM uopće ne koristi. Ubuntu i druge Linux distribucije ne omogućuju "odbacivanje" prema zadanim postavkama za vaše datotečne sustave, a ne biste trebali.

Postoji još jedan način

Budući da u stvarnom vremenu Linux kernel "odbaci" TRIM operaciju ne radi dobro, većina Linux distribucija - uključujući Ubuntu - ne koristi TRIM automatski. Android također nije upotrebljavao TRIM sve do Android 4.3.

Ali postoji još jedan način korištenja TRIM-a. Umjesto jednostavno izdavanja naredbe TRIM svaki put kad se datoteka briše, može se koristiti značajka FITRIM.To se događa preko naredbe fstrim. U osnovi, fstrim naredba analizira datotečni sustav i obavještava pogon koji blokovi više nisu potrebni, pa ih pogon može odbaciti. Time TRIM iz operacije u stvarnom vremenu pretvara u rasporedu. Drugim riječima, fstrim može izvesti TRIM kao posredan posao. Nema razloga da to ne učinim. Neće ništa usporiti;to je samo još jedan zadatak čišćenja koji sustav mora obaviti na rasporedu.

Zapravo, to je pristup koji je Google uzeo s Androidom 4.3.Android jednostavno izvodi fstrim zadatak povremeno da TRIM datotečni sustav, popravljajući problem koji je usporio sve one izvorne Nexus 7s.

Ubuntu također gleda na omogućavanje TRIM-a automatski tako što sustav redovito izvodi fstrim. Nadamo se da će to biti dio Ubuntu 14.04, pa Ubuntu korisnici neće biti prisiljeni da se bave slabljenjem performansi SSD-a ili sami pokrenu fstrim.

Kako omogućiti TRIM

Ne preporučujemo montažu datotečnih sustava s postupkom "odbacivanja", jer će to vjerojatno rezultirati sporije u normalnoj upotrebi. Međutim, možete koristiti TRIM sebe povremeno trčanje fstrim naredbu ili stvaranje vlastite cronjob koji pokreće fstrim na rasporedu.

Za TRIM vaš SSD na Ubuntu jednostavno otvorite terminal i pokrenite sljedeću naredbu:

sudo fstrim -v /

Povremeno možete pokrenuti navedenu naredbu kako biste spriječili degradaciju performansi na SSD-ovima. Koliko često trebate pokrenuti ovisi o tome koliko često se datoteke brišu s vašeg SSD-a. Ako pokušate pokrenuti naredbu s pogonom koji ne podržava TRIM, vidjet ćete pogrešku.

Ako želite redovito pokrenuti TRIM, možete jednostavno stvoriti cronjob koji pokreće fstrim naredbu za vas. Evo kako napraviti barebones cron posao koji će to učiniti automatski.

Prvo, pokrenite sljedeću naredbu za otvaranje nano uređivača teksta s root dozvolama:

sudo nano /etc/cron.daily/ fstrim

Upišite sljedeći kod u

#!/bin/ sh

fstrim /

Spremite datoteku pritiskom na Ctrl + O i pritisnite Enter za potvrdu. Pritisnite Ctrl + X da biste zatvorili nano nakon spremanja datoteke.

Zadnji, pokrenite sljedeću naredbu da izvršite skriptu:

sudo chmod + /etc/cron.daily/ fstrim

Ubuntu će sada pokrenuti fstrim na rasporedu, baš kao i druge zadatke održavanja sustava.

Imajte na umu da je TRIM podržan samo na suvremenim datotečnim sustavima, tako da ćete trebati nešto poput ext4 i ne ext3 ili ext2.Ako ne znate koji sustav datoteka koristite, ne brinite se - ekst4 je prema zadanim postavkama odabran.

Velik dio ovog savjeta odnosi se i na druge Linux distribucije. Iako je Linux odavno proveo TRIM podršku u jezgri, njegova podrška TRIM-a nikada nije bila omogućena prema zadanim postavkama za tipične korisnike u Linux distribucijama.

Image Credit: Mace Ojala na Flickr( ošišan)