Ubuntu nav TRIM SSD pēc noklusējuma: kāpēc ne, un kā to izdarīt pats

Satura rādītājs:

Ubuntu nav TRIM SSD pēc noklusējuma: kāpēc ne, un kā to izdarīt pats
Ubuntu nav TRIM SSD pēc noklusējuma: kāpēc ne, un kā to izdarīt pats

Video: Ubuntu nav TRIM SSD pēc noklusējuma: kāpēc ne, un kā to izdarīt pats

Video: Ubuntu nav TRIM SSD pēc noklusējuma: kāpēc ne, un kā to izdarīt pats
Video: Ultimate Netgear Nighthawk AX2400 Router Review - Dual Band, Speed, Security and More!!! - YouTube 2024, Aprīlis
Anonim
Ubuntu vēlas, lai Ubuntu 14.04 versijā pēc noklusējuma iespējotu TRIM par SSD. Citiem vārdiem sakot, Ubuntu vēl neizmanto TRIM, tāpēc jūsu SSD laika gaitā palēnināsies. Bet kāpēc Ubuntu jau neizmanto TRIM?
Ubuntu vēlas, lai Ubuntu 14.04 versijā pēc noklusējuma iespējotu TRIM par SSD. Citiem vārdiem sakot, Ubuntu vēl neizmanto TRIM, tāpēc jūsu SSD laika gaitā palēnināsies. Bet kāpēc Ubuntu jau neizmanto TRIM?

Šīs ziņas, visticamāk, būs pārsteigums daudziem cilvēkiem, kuri uzskatīja, ka Ubuntu un citi Linux izplatītāji jau izmanto TRIM. TRIM neļauj SSDs palēnināties laika gaitā un ir nepieciešama SSD tehniskās apkopes daļa.

Kāpēc TRIM ir svarīgs

Mēs esam apsprieduši, kāpēc TRIM ir svarīgs pirms tam. Ja izdzēšat failu vecā, magnētiskā cietā diska, dators vienkārši atzīmē šo failu kā dzēstu. Faila dati tiek novietoti cietajā diskā - tādēļ dzēstos failus var atgūt. Dators galu galā pārrakstīs izdzēstos failus, kad tie pārraksta savas nozares ar jauniem datiem.

Cietvielu diskdziņi (SSD) strādā atšķirīgi. Ikreiz, kad rakstāt failu SSD, vispirms datoram vispirms jāizdzēš visi dati nozarēs, uz kurām dati tiek rakstīti. Tas nevar vienkārši "pārrakstīt" sektorus vienā operācijā - tai vispirms ir jāpārklāj tie, tad rakstiet tukšajos sektoros.

Tas nozīmē, ka laika gaitā SSD palēnināsies. Rakstīšana SSD nozarēs būs ātra pirmoreiz. Pēc tam, kad esat izdzēš dažus failus un mēģinās vēlreiz rakstīt, tas aizņems laiku. Šī ir liela iemesla dēļ Google sākotnējais Nexus 7 laika gaitā palēninājās. Google to fiksēja, ieviešot TRIM Android 4.3 versijā. (Android arī izmanto Linux kodolu.)

Izmantojot TRIM, operētājsistēma parāda SSD katru reizi, kad tiek izdzēsts fails. Pēc tam disks var izdzēst sektorus, kuros ir faila saturs, tādēļ nākotnē rakstīšana nozarēs būs ātra.

Citiem vārdiem sakot, ja jūs neizmantojat TRIM, jūsu SSD laika gaitā palēnināsies. Tāpēc mūsdienu operētājsistēmas, tostarp Windows 7+, Mac OS X 10.6.8+ un Android 4.3+, izmanto TRIM. TRIM tika ieviests Linux 2008. gada decembrī, bet Ubuntu to neizmanto pēc noklusējuma.

Kāpēc Ubuntu trima pēc noklusējuma?

Patiesais iemesls Ubuntu pēc noklusējuma nav TRIM SSD, jo Linux kodola TRIM ieviešana ir lēna un normālā lietošanā ir slikta veiktspēja.

Operētājsistēmās Windows 7 un Windows 8 katru reizi, kad tiek dzēsts fails, sistēma Windows nosūta komandu TRIM, paziņojot diskdzinim, lai nekavējoties izdzēstu faila biti. Linux to atbalsta, ja failu sistēmas tiek montētas ar opciju "atbrīvoties". Tomēr Ubuntu un citiem izplatījumiem tas pēc noklusējuma netiek veikts izpildes dēļ.

OpenSUSE wiki satur detalizētu informāciju no izstrādātāja, kas ir vairāk iepazinies ar Linux kodolu nekā mēs esam. Tas ir nedaudz novecojis, taču, visticamāk, joprojām ir taisnība, kad runa ir par veiktspēju:

“The kernel implementation of realtime trim in 11.2, 11.3, and 11.4 is not optimized. The spec. calls for trim supporting a vectorized list of trim ranges, but as of kernel 3.0 trim is only invoked by the kernel with a single discard / trim range and with current mid 2011 SSDs this has proven to cause a performance degradation instead of a performance increase. There are few reasons to use the kernels realtime discard support with pre-3.1 kernels. It is not known when the kernels discard functionality will be optimized to work beneficially with current generation SSDs.” [Source]

Citiem vārdiem sakot, Linux kodols apstrādā šādas reāllaika komandas TRIM lēni, neoptimizēti. Iespējojot TRIM līdzīgu tam, kā darbojas Windows - tas ir, izmantojot opciju "izmest" - sistēma faktiski kļūst lēnāka nekā tad, ja TRIM vispār netiek izmantots. Ubuntu un citi Linux sadalījumi pēc noklusējuma neļauj "atbrīvoties" jūsu failu sistēmām, un jums tas nevajadzētu.

Image
Image

Tur ir cits ceļš

Tā kā Linux kodola reāllaika "izmešanas" TRIM darbība nedarbojas labi, lielākā daļa Linux sadali, ieskaitot Ubuntu, automātiski neizmanto TRIM. Android arī neizmantoja TRIM, kamēr nav operētājsistēmas Android 4.3.

Bet tur ir vēl viens veids, kā izmantot TRIM. Nevis vienkārši izsniedzot TRIM komandu katru reizi, kad tiek dzēsts fails, var izmantot FITRIM funkciju. Tas notiek, izmantojot komandu fstrim. Būtībā komanda fstrim analizē failu sistēmu un informē disku, kādi bloki vairs nav vajadzīgi, tāpēc disks var tos atbrīvot. Tas izslēdz TRIM no reāllaika operācijas par plānotu uzdevumu. Citiem vārdiem sakot, fstrim var veikt TRIM kā cron darbu. Nav iemesla to nedarīt. Tas netiks palēnināt neko; tas ir tikai vēl viens mājsaimniecības uzdevums, kas sistēmai jāveic pēc grafika.

Patiesībā šī ir pieeja, kuru Google izmantoja, izmantojot Android 4.3. Android vienkārši laiku pa laikam pavada fstrim uzdevumu pārvietot failu sistēmu, novēršot problēmu, kas palēnināja visus sākotnējos Nexus 7s.

Ubuntu arī meklē automātiski iespējot TRIM, regulējot sistēmas darbību fstrim. Tas, cerams, būs daļa no Ubuntu 14.04, tādēļ Ubuntu lietotāji nebūs spiesti rīkoties ar SSD veiktspējas degradāciju vai palaist firstim paši.

Kā iespējot TRIM

Mēs neiesakām instalēt failu sistēmas ar "atmest" darbību, jo tas, iespējams, novedīs pie lēnākas veiktspējas parastā lietošanā. Tomēr jūs varat izmantot TRIM sevi, laiku pa laikam palaižot komandu fstrim vai izveidojot savu cronjob, kas darbojas fstrim pēc grafika.

Lai izdzēstu savu SSD uz Ubuntu, vienkārši atveriet termināli un palaidiet šo komandu:

sudo fstrim -v /

Jūs reizēm varat palaist šo komandu, lai novērstu SSD darbības traucējumus. Cik bieži jums jāstrādā, atkarīgs no tā, cik bieži faili tiek izdzēsti no SSD. Ja mēģināsiet palaist komandu ar disku, kas neatbalsta TRIM, jūs redzēsit kļūdu.
Jūs reizēm varat palaist šo komandu, lai novērstu SSD darbības traucējumus. Cik bieži jums jāstrādā, atkarīgs no tā, cik bieži faili tiek izdzēsti no SSD. Ja mēģināsiet palaist komandu ar disku, kas neatbalsta TRIM, jūs redzēsit kļūdu.

Ja jūs vēlaties regulāri palaist TRIM, jūs varat vienkārši izveidot cronjob, kas jums izpilda komandu fstrim.Lūk, kā padarīt barebones cron darbu, kas to darīs automātiski.

Pirmkārt, palaidiet šādu komandu, lai atvērtu nano teksta redaktoru ar saknes atļaujām:

sudo nano /etc/cron.daily/fstrim

Ievadiet šādu kodu failā:

#!/bin/sh

fstrim /

Saglabājiet failu, nospiežot Ctrl + O un nospiediet Enter, lai apstiprinātu. Nospiediet Ctrl + X, lai aizvērtu nano pēc faila saglabāšanas.
Saglabājiet failu, nospiežot Ctrl + O un nospiediet Enter, lai apstiprinātu. Nospiediet Ctrl + X, lai aizvērtu nano pēc faila saglabāšanas.

Visbeidzot, izpildiet šādu skriptu:

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

Ubuntu tagad palaiž fstrim pēc grafika, tāpat kā citiem sistēmas uzturēšanas uzdevumiem.
Ubuntu tagad palaiž fstrim pēc grafika, tāpat kā citiem sistēmas uzturēšanas uzdevumiem.

Ņemiet vērā, ka TRIM tiek atbalstīts tikai mūsdienu failu sistēmās, tāpēc jums būs nepieciešams kaut kas līdzīgs ext4, nevis ext3 vai ext2. Ja nezināt, kādu failu sistēmu izmantojat, neuztraucieties - pēc noklusējuma tiek atlasīts ext4.

Liela daļa šī padoma attiecas arī uz citiem Linux sadalījumiem. Kamēr Linux jau sen īstenoja TRIM atbalstu kodolā, šķiet, ka tās TRIM atbalsts nekad nav bijis iespējots pēc noklusējuma tipiskiem lietotājiem Linux distribūcijās.

Ieteicams: