9Sep
Ubuntu má v predvolenom nastavení povoliť TRIM pre SSD v Ubuntu 14.04.Inými slovami, Ubuntu ešte nepoužíva nástroj TRIM, takže váš SSD sa časom spomaľuje. Ale prečo už Ubuntu nepoužíva TRIM?
Táto správa pravdepodobne prinesie prekvapenie mnohým ľuďom, ktorí predpokladali, že Ubuntu a ďalšie distribúcie Linuxu už používajú TRIM.Služba TRIM zabraňuje spomaleniu SSD a je nevyhnutnou súčasťou údržby SSD.
Prečo je TRIM dôležitý
Pokryli sme prečo je TRIM dôležitý predtým. Keď odstránite súbor na starom magnetickom pevnom disku, počítač jednoducho označuje tento súbor ako odstránený.Údaje súboru sa držia na pevnom disku - preto je možné obnoviť odstránené súbory. Počítač nakoniec prepíše odstránené súbory, keď prepíše svoje sektory novými údajmi.
SSD disky fungujú inak. Kedykoľvek napíšete súbor na jednotku SSD, počítač musí najprv vymazať všetky dáta v sektoroch, do ktorých sú zapisované dáta. Nemôže jednoducho "prepísať" sektory v jednej operácii - musí ich najprv vymazať a potom zapísať do prázdnych sektorov.
To znamená, že SSD sa časom spomalí.Písanie do sektorov SSD bude rýchlo prvýkrát. Po odstránení niektorých súborov a pokuse o ich opätovné napísanie bude trvať dlhšie. Toto je veľká časť dôvodov, prečo sa pôvodný Nexus 7 spoločnosti Google časom spomalil. Spoločnosť Google to vyriešila implementáciou nástroja TRIM v systéme Android 4.3.(Android tiež používa jadro Linuxu.)
S aktivovanou funkciou TRIM operačný systém informuje SSD vždy, keď vymaže súbor. Jednotka môže potom vymazať sektory obsahujúce obsah súboru, takže písanie do sektorov bude v budúcnosti rýchle.
Inými slovami, ak nepoužívate TRIM, SSD sa časom spomalí.Preto moderné operačné systémy vrátane Windows 7+, Mac OS X 10.6.8+ a Android 4.3+ používajú TRIM.TRIM bol implementovaný v Linuxe už v decembri 2008, ale Ubuntu ho štandardne nepoužíva.
Prečo nie je štandardne Ubuntu TRIM?
Skutočným dôvodom, prečo Ubuntu v predvolenom nastavení neznamená, že je to TRIM SSD, je to, že implementácia TRIM v Linuxovom jadre je pomalá a má za následok slabý výkon pri bežnom používaní.
V systémoch Windows 7 a 8 systém Windows pošle príkaz TRIM zakaždým, keď vymaže súbor, čím požiada jednotku, aby ihneď odstránila bity súboru. Linux to podporuje, keď sú systémy súborov pripojené s možnosťou "Zrušiť".Avšak Ubuntu a iné distribúcie to z dôvodu výkonu nevykonávajú štandardne.
wiki OpenSUSE obsahuje niekoľko podrobných informácií od vývojára, ktorý je lepšie oboznámený s Linuxovým jadrom ako my. Je to trochu datované, ale je pravdepodobné, že stále platí, pokiaľ ide o výkon:
"Implementácia jadra v reálnom čase v 11.2, 11.3 a 11.4 nie je optimalizovaná.Špecifikácia.vyzýva k orezaniu podporujúce vektorizovaný zoznam okrajov, ale odkrytie jadra 3.0 je vyvolané iba jadrom s jedným rozsahom zlikvidovania / orezania a so súčasnými jednotkami SSD v polovici roku 2011 sa ukázalo, že to spôsobilo degradáciu výkonnosti namiesto zvýšenia výkonu. Existuje niekoľko dôvodov, prečo je použitie jadra v reálnom čase zrušené s jadrami pred 3.1.Nie je známe, kedy bude funkcia zlikvidovania jadier optimalizovaná tak, aby bola efektívna práca s existujúcimi generáciami SSD. "[Zdroj]
Inými slovami, jadro Linuxu spracováva príkazy TRIM v reálnom čase pomalým, neoptimalizovaným spôsobom. Povolenie nástroja TRIM podobné tomu, ako systém Windows - to znamená používanie možnosti "Zrušiť" - spôsobí, že systém sa skutočne stáva pomalší, než keby sa TRIM nepoužil vôbec. Ubuntu a ďalšie distribúcie Linuxu neumožňujú predvolené "zbaviť" súborových systémov a nemali by ste ani jeden.
Existuje ďalšia cesta
Pretože operácia TRIM v reálnom čase Linuxového jadra nefunguje dobre, väčšina linuxových distribúcií - vrátane Ubuntu - nepoužíva TRIM automaticky. Android tiež nepoužil TRIM do Android 4.3.
Ale existuje ďalší spôsob, ako použiť TRIM.Namiesto toho, že jednoducho vydáte príkaz TRIM pri každom odstránení súboru, je možné použiť funkciu FITRIM.To sa deje prostredníctvom príkazu fstrim. V podstate príkaz fstrim analyzuje súborový systém a informuje disk o tom, ktoré bloky už nie sú potrebné, aby sa disk mohol zbaviť.Týmto sa TRIM prepne z operácie v reálnom čase na naplánovanú úlohu. Inými slovami, fstrim môže vykonávať TRIM ako cron úlohu. Nie je dôvod, aby to nebolo. Nebude nič spomaliť;je to len ďalšia úloha, ktorú musí systém vykonať podľa plánu.
V skutočnosti ide o prístup, ktorý spoločnosť Google prevzala so systémom Android 4.3.Android jednoducho beží úlohu fstrim príležitostne na TRIM súborový systém, opraviť problém, ktorý spomalil všetky tie pôvodné Nexus 7s.
Ubuntu sa tiež zameriava na umožnenie automatického spustenia systému TRIM tým, že systém pravidelne spustí fstrim. Dúfam, že to bude súčasťou Ubuntu 14.04, takže používatelia Ubuntu nebudú nútení riešiť degradáciu výkonnosti SSD alebo spustiť fstrim na vlastnú päsť.
Ako povoliť TRIM
Nedoporučujeme pripevňovať vaše systémy súborov operáciou "zlikvidovať", pretože to pravdepodobne povedie k pomalšiemu výkonu pri bežnom používaní.Avšak môžete použiť TRIM sami príležitostne spustením príkazu fstrim alebo vytváraním vlastného cronjob, ktorý beží fstrim podľa plánu.
Ak chcete TRD SSD na Ubuntu, jednoducho otvorte terminál a spustite nasledujúci príkaz:
sudo fstrim -v /
Príkaz uvedený vyššie môžete príležitostne spustiť, aby ste predišli degradácii výkonu na SSD.Ako často to potrebujete spustiť, závisí od toho, ako často súbory z vášho SSD odstránené.Ak sa pokúsite spustiť príkaz s jednotkou, ktorá nepodporuje funkciu TRIM, zobrazí sa chyba.
Ak chcete spustiť program TRIM pravidelne, môžete jednoducho vytvoriť cronjob, ktorý pre vás spustí príkaz fstrim. Tu je postup, ako urobiť úlohu barebones cron, ktorá to urobí automaticky.
Najskôr spustite nasledujúci príkaz na otvorenie nano textového editora s oprávneniami root:
sudo nano /etc/cron.daily/ fstrim
Do súboru zadajte nasledujúci kód:
#!/bin/ sh
fstrim /
Uložte súbor stlačením Ctrl + O a stlačením klávesu Enter potvrďte. Stlačením klávesov Ctrl + X zatvorte nano po uložení súboru.
Nakoniec spustite nasledujúci príkaz, aby ste spustili skript:
sudo chmod + x /etc/cron.daily/ fstrim
Ubuntu teraz spustí fstrim podľa plánu, rovnako ako iné úlohy údržby systému.
Všimnite si, že TRIM je podporovaný iba v moderných súborových systémoch, takže budete potrebovať niečo ako ext4 a nie ext3 alebo ext2.Ak neviete, aký súborový systém používate, nebojte sa - v predvolenom nastavení je zvolený ext4.
Veľa z týchto rád sa vzťahuje aj na iné distribúcie Linuxu. Zatiaľ čo Linux implementoval podporu TRIM v jadre už dávno, zdá sa, že jeho podpora TRIM nikdy nebola nikdy povolená pre typických používateľov v distribúciách Linuxu.
Image Credit: Mace Ojala na Flickr( orezané)