Linux SSD-n - de hogyan? - Tippek nagyon kezdőknek is - Frissítve!

NVME SSD meghajtók - ellenőrzés Linux alatt

2020. 03. 01. - NVME SSD téma fenti linken külön kerül szóba.

******************************************************************************

Ez az írás 14.04.x alapon készült, mindenki ennek tudatában olvasgassa!

Hirdetés

***********************************************************************
FRISS!

Ubuntu 18.04 alapú disztribúcióktól kezdve változott a helyzet, nem a Cron-nal van megoldva a TRIM, hanem a systemctl-lel (systemd):

systemctl list-timers -a terminal parancs kiadásával meg tudod nézni milyen időzített feladatok futnak le.

sudo journalctl -u fstrim.timer terminal parancs ellenőrzi a TRIM végrehajtását.

Be lehet állítani a napi rendszerességgel történő fstrim futtatást is.

Én még fentiek miatt is, de egyébként is, látom létjogosultságát a discard opciónak az FSTAB-ba rakva. Alap felhasználásnál abszolút semmi hátránya nincs, előnye viszont, hogy mivel online TRIM-melést végez, soha nem marad trimmeletlen az SSD. :)

Egyes SSD tipusoknál nem célszerű használni a discard-ot, max ennyit lehet megjegyezni. Ezeket az alább látható blacklist felsorolja.

Ezeknél a tipusoknál a kernelben tiltva van az ún. queued TRIM, emiatt a TRIM valós azonnali módban fut le. Ez azonban csak akkor okozhat lassulást, ha a discard használata eddig is ellenjavallt volt. Normál felhasználói módban történő használatban nincs észrevehető lassulás!

FRISS!
********************************************************************************

A mai modern Linux kiadások jól kezelik az SSD-ket.

Készült egy cikk Linux és SSD gyorstalpaló címmel hozzáértőknek Ubuntu 12.04 alapon.
Ha ez nehéz kicsit vagy más alapú Linuxot használsz, az alábbi ellenőrző parancsokkal tudunk pár szükséges infóhoz jutni.

Ez az írás 14.04.x alapon készült, ez talán annyiban változás, hogy az Ubuntu alapokon nyugvó disztrók már auto módban kezelik a TRIM- et, de ez így eddig még csak Intel és Samsung SSD-re igaz!

FIGYELEM ! Aki az alábbi fekete listás SSD tipusokkal rendelkezik, ne használja a discard opciót!!!

forrás

Ha a Samsung SSD-ken a discard opciót használod, akkor az ütemezett TRIM nem hajtódik végre normálisan (adatvesztést okozhat), ezért a kernel kikényszeríti az azonnali végrehajtást, ez teljesítményromláshoz, ill. a meghajtó fokozottabb elhasználódásához vezet. !!!

#!/bin/sh
# call fstrim-all to trim all mounted file systems which support it
set -e

# This only runs on Intel and Samsung SSDs by default, as some SSDs with faulty
# firmware may encounter data loss problems when running fstrim under high I/O
# load (e. g. https://launchpad.net/bugs/1259829). You can append the
# --no-model-check option here to disable the vendor check and run fstrim on
# all SSD drives.
exec fstrim-all

Samsung és a a képen látható SSD tipusok esetén az alábbi scriptet érdemes használni,mivel a "NULL" érték alapján az összes firmware érintett ill. a többi érintett tipus közül azoknál, melyek a "MU01" firmware-t használják.

script forrás

#!/bin/sh

# Az SSD_MOUNT_POINTS változóban sorold fel a csatolási pontokat.
# Elválasztónak használj szóközt.

LOG=/var/log/fstrim.log
SSD_MOUNT_POINTS='/ /home'

for mount_point in $SSD_MOUNT_POINTS
do
echo "* $(date -R) *" >> $LOG
fstrim -v $mount_point >> $LOG
done

Arch alapon másképp oldották meg, mint egy példából láthatjuk is. Debian 8- at még nem éri az idők szele annyira, így mindenképpen célszerű magunknak megcsinálni az optimalizálást, de aki Jessie-t használ, annak ez nem gond. :)

★★★ Ellenőrzések előtt szükséges tisztázni, hogy a /dev után lévő meghajtó betűjelet jól kell megadni, ha csak egy meghajtó van, akkor biztosan sda lesz, általában az SSD-t első portra csatlakoztatjuk, így akkor is sda lesz, ha több meghajtó van. ★★★

● Ha meg akarod állapítani, működik-e a TRIM az SSD-n, akkor azt az alábbi terminal parancs kiadásával ellenőrizheted:

sudo hdparm -I /dev/sda | grep "TRIM supported"
-ez ellenőrzi, hogy a TRIM támogatott-e
-egy tipikus válasz:
* Data Set Management TRIM supported (limit 1 block)

-a válasz supported, tehát minden OK! A block limit értékkel nem érdemes foglalkozni, tipustól függ, hogy 1, 4, vagy 8 block

● Ubuntu alapú disztrók általában /etc/cron.weekly-ből hetente lefuttatják az fstrim parancsot, ellenőrizheted ennek a működését is:

sudo run-parts -v /etc/cron.weekly
eredmény, ha benne van
run-parts: executing /etc/cron.weekly/fstrim

● Arch alapú disztrók inkább a discard opciót használják alapból, az Antergos 4.0.5 kernellel fstab-ja:

# <file system> <mount point> <type> <options> <dump> <pass>
#
UUID=343c06ab-93d4-40f7-8734-a538888a45e2 / ext4 defaults,rw,noatime,discard 0 1
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0

● Manuálisan is kiadhatjuk a TRIM-re vonatkozó parancsot:

fstrim -v / vagy fstrim -v /home , külön a /home partícióra

fontos ellenőrizni az alignálást is :

sudo blockdev --getalignoff /dev/sda
-ez a parancs terminalból leellenőrzi, hogy az alignálás rendben van- e. Itt a nulla az érték, ha jó az alignálás, de ez a másik módszer is jelzi, ha rendben van:

sudo fdisk -l /dev/sda | grep -E sda[0-9]+ | sed s/*// | awk '{printf ("%s %f ",$1,$2/512); if($2%512){ print "ROSSZ" }else {print "OK"} }' | column -t

Ha azt írja a partíciókra, hogy OK, akkor jó, de ha nem, akkor rendbe kell tenni az alignálást. Kivétel, ha a kiterjesztett partícióra jelzi, hogy ROSSZ, ez egy hiba, nem kell vele foglalkozni.

további ellenőrző parancsok:

sudo dmesg | grep -i sata | grep 'link up'
-SATA link ellenőrzése, ebből megtudod, hogy SATA1, 2 vagy 3 átvitelt alkalmaz a Linux.

sudo hdparm -Tt /dev/sda
-lemezolvasás ellenőrzése

dmesg | grep -i --color ahci
-AHCI ellenőrzése

sudo smartctl --all /dev/sda
-SMART adatok ellenőrzése

cat /sys/block/sda/queue/scheduler
az eredmény a zárójelben lévő:
noop [deadline] cfq
-I/O ütemező ellenőrzése, a bejelöltet használja a meghajtó, home userként nem sok jelentősége van szerintem ! - itt most érdemes elolvasni fentebb is linkelt cikk ide vonatkozó részét !

● Ha a TRIM ellenőrzése során azt látjuk, hogy nem fut auto módban, több módon is segíthetünk a dolgon. A legegyszerűbb az fstab szerkesztése.

ALT+F2 lenyomásával előjön egy kis ablak, abba beírod, hogy
xed admin:///etc/fstab itt a xed a szövegszerkesztő neve, aki mást használ, értelemszerűen azt a neved adja meg
beírod a jelszavad és felugrik a root joggal szerkeszthető fstab

MINTA fstab
ubyegon@ubyF2A85-M ~ $ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
UUID=77c25673-61fa-4a22-b7c5-dac3295027b3 / ext4 discard,noatime,errors=remount-ro 0 1

Utolsó sor számít, lehetnek még további bejegyzések, de azokat kihagytam most!

Beírod a discard-ot és mented a fájlt. Az utána lévő noatime opciót is beírhatod, ezzel azt a parancsot adod ki, hogy ne frissítse a meghajtón az utolsó fájl hozzáférés időpontját.
Ha van külön /home partíció, annak a sorába is be kell írni ezeket, de ha van külön /boot partíció, abba ne írd be semmiképpen!

reboot

A tmpfs, swapiness, böngésző ramból futtatása a fent linkelt cikkben van leírva, azokat nem tudom egyszerűbben leírni.

Bodor szaki fontos írásai:

Milyen SSD-t vegyek?
Az SSD kondíciója, tények és tévhitek

Egy igényes teszt King Unique fórumtársunktól:

SSD tesztelése külső USB 3.0 házban (TRIM, BOT vs. UASP)

További hasznos linkek SSD optimalizálás témában:

How to check hard disk performance
Enable TRIM On SSD (Solid-State Drives) In Ubuntu For Better Performance
SSDOptimization Debian
Solid State Drives Arch
How to Tweak Your SSD in Ubuntu for Better Performance
How to enable TRIM?
Linux optimalizálása SSD-hez
TRIM wikipédia
HOWTO: Configure Ext4 to Enable TRIM Support for SSDs on Ubuntu and Other Distributions
HOWTO: Check If TRIM On Ext4 Is Enabled And Working On Ubuntu And Other Distributions
How to Enable TRIM For SSD in Ubuntu
How to properly activate TRIM for your SSD on Linux: fstrim, lvm and dm-crypt
Easy tips for Linux Mint and Ubuntu, both for beginners and for advanced users.

Még van hozzászólás! Tovább