Trim (fstrim / discard) jest domyślnie włączony co tydzień w 18.04.
Jest ustawiony do działania dla wszystkich zamontowanych systemów plików na urządzeniach obsługujących operację odrzucania.
Jest to systemd
usługa zarządzana za pośrednictwem systemctl
, a nie CRON.
Wyświetl status fstrim.timer :
$ systemctl status fstrim.timer
● fstrim.timer - Discard unused blocks once a week
Loaded: loaded (/lib/systemd/system/fstrim.timer; enabled; vendor preset: enabled)
Active: active (waiting) since Thu 2018-07-05 05:45:11 BST; 4h 42min ago
Trigger: Mon 2018-07-09 00:00:00 BST; 3 days left
Docs: man:fstrim
Start / Stop / Restart fstrim.timer :
(nie zmienia statusu uruchamiania)
$ sudo systemctl [start/stop/restart] fstrim.timer
Włącz / wyłącz plik fstrim.timer :
(dodaj / usuń ze startu, nie zmienia obecnego statusu)
$ sudo systemctl [enable/disable] fstrim.timer
Wyświetl konfigurację fstrim.timer :
$ systemctl cat fstrim.timer
# /lib/systemd/system/fstrim.timer
[Unit]
Description=Discard unused blocks once a week
Documentation=man:fstrim
[Timer]
OnCalendar=weekly
AccuracySec=1h
Persistent=true
[Install]
WantedBy=timers.target
Wyświetl konfigurację fstrim.service :
$ systemctl cat fstrim.service
# /lib/systemd/system/fstrim.service
[Unit]
Description=Discard unused blocks
[Service]
Type=oneshot
ExecStart=/sbin/fstrim -av
Uwaga : ExecStart = / sbin / fstrim -av
Gdzie:
-a , Przytnij wszystkie zamontowane systemy plików na urządzeniach obsługujących operację odrzucania .
-v , pełne wykonanie. Wyjście liczby bajtów przekazanych z systemu plików w dół stosu bloków do urządzenia w celu potencjalnego odrzucenia.
Zobacz powiązane wpisy dziennika systemowego :
$ journalctl -u fstrim.timer
Jul 04 14:18:41 user-laptop systemd[1]: Started Discard unused blocks once a week.
Jul 04 21:59:26 user-laptop systemd[1]: Stopped Discard unused blocks once a week.
etc...
$ journalctl -u fstrim.service
Jun 25 10:59:44 user-laptop systemd[1]: Starting Discard unused blocks...
Jun 25 10:59:48 user-laptop fstrim[955]: /: 92.5 GiB (99335237632 bytes) trimmed
Jun 25 10:59:48 user-laptop systemd[1]: Started Discard unused blocks.
-- Reboot --
Jul 02 04:27:41 user-laptop systemd[1]: Starting Discard unused blocks...
Jul 02 04:27:46 user-laptop fstrim[1032]: /: 92.3 GiB (99150807040 bytes) trimmed
Jul 02 04:27:46 user-laptop systemd[1]: Started Discard unused blocks.
etc...
/lib/systemd/system/fstrim.timer
(OnCalendar=weekly
), a co przez/lib/systemd/system/fstrim.service
(ExecStart=/sbin/fstrim -av
).Edycja: Proszę przeczytać komentarze, ta odpowiedź łączy dwa mechanizmy!
Stara odpowiedź
istnieje ważny punkt, który należy dodać do odpowiedzi @Broadsworde, aby była kompletna.
Podczas gdy na moim laptopie wszystkie timery i usługi były włączone, brakowało wpisu dziennika fstrim (tylko:
starting… stopping… reboot… starting…
itp.).Brakujący krok
Konieczne może być oznaczenie systemów plików jako odrzucalnych . Jeśli system plików nie jest oznaczony jako odrzucalny, przycinanie go pominie [1].
Aby oznaczyć system plików jako odrzucalny, masz dwie opcje:
1. Opcja:
tune2fs
sudo tune2fs -o discard /dev/mapper/ubuntu--vg-root
Spowoduje to ustawienie opcji odrzucania jako domyślnej dla mojego urządzenia ext4. Jeśli nie używasz szyfrowania, spróbuj
/dev/sda
zamiast tego.2. Opcja:
/etc/fstab
Pamiętaj, aby dodać lub dołączyć opcję
discard
do istniejących opcji montowania. Na przykład tak:/dev/mapper/ubuntu--vg-root / ext4 discard,relatime,errors=remount-ro 0 1
Dopiero potem usługa timera naprawdę coś zrobi.
Przypisy
TRIM
operację. Ale w systemie Linux jest to flaga systemu plików. Mimo to urządzenie, na którym działa system plików, musi obsługiwać tęTRIM
operację. Aby sprawdzić, czy urządzenie obsługuje tę funkcję, przeznaczenie:sudo hdparm -I /dev/sda | grep -i TRIM
.źródło
mount
„s strona mężczyzna stwierdza, że « Kwestie funkcyjne odrzutów częste komendy pozwolić przestrzeń reklamacji urządzenie blokowe uwolniony przez system plików. [...] może mieć znaczący wpływ na wydajność . (Polecenie fstrim jest także dostępne do inicjowania przycinania partii z przestrzeni użytkownika.) »