GNU/Linux >> Belajar Linux >  >> Linux

Perpanjang masa pakai drive SSD Anda dengan fstrim

Selama dekade terakhir, solid-state drive (SSD) telah menghadirkan cara baru dalam mengelola penyimpanan. SSD memiliki manfaat seperti pengoperasian yang senyap dan lebih dingin serta spesifikasi antarmuka yang lebih cepat, dibandingkan dengan pendahulunya yang lebih tua. Tentu saja, teknologi baru membawa serta metode pemeliharaan dan manajemen baru. SSD memiliki fitur yang disebut TRIM. Ini pada dasarnya adalah metode untuk mengklaim kembali blok yang tidak digunakan pada perangkat, yang mungkin telah ditulis sebelumnya, tetapi tidak lagi berisi data yang valid dan oleh karena itu, dapat dikembalikan ke kumpulan penyimpanan umum untuk digunakan kembali. Don Watkins dari Opensource.com pertama kali menulis tentang TRIM dalam artikelnya tahun 2017 "Solid-state drive di Linux:Mengaktifkan TRIM untuk SSD."

Lebih banyak sumber daya Linux

  • Lembar contekan perintah Linux
  • Lembar contekan perintah Linux tingkat lanjut
  • Kursus online gratis:Ikhtisar Teknis RHEL
  • Lembar contekan jaringan Linux
  • Lembar contekan SELinux
  • Lembar contekan perintah umum Linux
  • Apa itu container Linux?
  • Artikel Linux terbaru kami

Jika Anda telah menggunakan fitur ini di sistem Linux Anda, maka Anda mungkin akrab dengan dua metode yang dijelaskan di bawah ini.

Cara lama

Buang

Saya awalnya mengaktifkan ini dengan opsi buang ke perintah mount. Konfigurasi ditempatkan ke dalam /etc/fstab file untuk setiap sistem file.

# cat /etc/fstab
UUID=3453g54-6628-2346-8123435f  /home  xfs  defaults,discard   0 0

Opsi buang memungkinkan TRIM online otomatis. Baru-baru ini ada perdebatan tentang apakah ini adalah metode terbaik karena kemungkinan dampak kinerja negatif. Menggunakan opsi ini menyebabkan TRIM dimulai setiap kali data baru ditulis ke drive. Ini dapat menimbulkan aktivitas tambahan yang mengganggu kinerja penyimpanan.

Cron

Saya menghapus opsi buang dari fstab mengajukan. Kemudian saya membuat tugas cron untuk memanggil perintah secara terjadwal.

# crontab -l
@midnight /usr/bin/trim

Ini adalah metode yang terakhir saya gunakan di sistem Linux Ubuntu saya sampai saya mempelajari cara lain.

Layanan TRIM baru

Saya baru-baru ini menemukan bahwa layanan systemd untuk TRIM ada. Fedora memperkenalkan ini ke dalam distribusi mereka di versi 30, dan, meskipun tidak diaktifkan secara default di versi 30 dan 31, itu direncanakan di versi 32. Jika Anda bekerja di Fedora Workstation 31 dan Anda ingin mulai menggunakan ini fitur, Anda dapat mengaktifkannya dengan sangat mudah. Saya juga akan menunjukkan cara mengujinya di bawah. Layanan ini tidak unik untuk Fedora. Keberadaan dan status akan tergantung pada basis distribusi individu.

Uji

Saya suka menguji terlebih dahulu, untuk lebih memahami apa yang terjadi di balik layar. Saya melakukan ini dengan membuka terminal dan mengeluarkan perintah yang dikonfigurasi untuk dipanggil oleh layanan.

/usr/sbin/fstrim --fstab --verbose --quiet

–bantuan argumen ke fstrim akan menjelaskan argumen ini dan argumen lainnya.

$ sudo /usr/sbin/fstrim --help

Usage:
 fstrim [options] <mount point>

Discard unused blocks on a mounted filesystem.

Options:
 -a, --all           trim all supported mounted filesystems
 -A, --fstab         trim all supported mounted filesystems from /etc/fstab
 -o, --offset <num>  the offset in bytes to start discarding from
 -l, --length <num>  the number of bytes to discard
 -m, --minimum <num> the minimum extent length to discard
 -v, --verbose       print number of discarded bytes
     --quiet         suppress error messages
 -n, --dry-run       does everything, but trim

 -h, --help          display this help
 -V, --version       display version

Jadi, sekarang saya dapat melihat bahwa layanan systemd dikonfigurasi untuk menjalankan trim pada semua sistem file terpasang yang didukung di /etc/fstab saya file –fstab dan cetak jumlah byte yang dibuang –verbose tetapi tutup semua pesan kesalahan yang mungkin terjadi –quiet . Mengetahui opsi ini sangat membantu untuk pengujian. Misalnya, saya bisa mulai dengan yang paling aman, yaitu lari kering. Saya juga akan mengabaikan argumen silent sehingga saya dapat menentukan apakah ada kesalahan yang akan terjadi dengan penyiapan drive saya.

$ sudo /usr/sbin/fstrim --fstab --verbose --dry-run

Ini hanya akan menunjukkan apa yang fstrim perintah akan dilakukan berdasarkan sistem file yang ditemukan dikonfigurasi di /etc/fstab . Anda berkas.

$ sudo /usr/sbin/fstrim --fstab --verbose

Ini sekarang akan mengirim operasi TRIM ke drive dan melaporkan jumlah byte yang dibuang dari setiap sistem file. Di bawah ini adalah contoh setelah saya menginstal Fedora baru-baru ini pada SSD NVME baru.

/home: 291.5 GiB (313011310592 bytes) trimmed on /dev/mapper/wkst-home
/boot/efi: 579.2 MiB (607301632 bytes) trimmed on /dev/nvme0n1p1
/boot: 787.5 MiB (825778176 bytes) trimmed on /dev/nvme0n1p2
/: 60.7 GiB (65154805760 bytes) trimmed on /dev/mapper/wkst-root

Aktifkan

Fedora Linux mengimplementasikan layanan pengatur waktu systemd, dijadwalkan untuk berjalan setiap minggu. Untuk memeriksa keberadaan dan status saat ini, jalankan systemctl status .

$ sudo systemctl status fstrim.timer

Sekarang, aktifkan layanan.

$ sudo systemctl enable fstrim.timer

Verifikasi

Kemudian Anda dapat memverifikasi bahwa pengatur waktu diaktifkan dengan mencantumkan semua pengatur waktu.

$ sudo systemctl list-timers --all

Baris berikut mengacu pada fstrim.timer akan muncul. Perhatikan bahwa timer sebenarnya mengaktifkan fstrim.service . Dari sinilah fstrim yang sebenarnya disebut. Bidang terkait waktu menunjukkan t/a karena layanan baru saja diaktifkan dan belum berjalan.

NEXT   LEFT    LAST   PASSED   UNIT           ACTIVATES
n/a    n/a     n/a    n/a      fstrim.timer   fstrim.service

Kesimpulan

Layanan ini sepertinya cara terbaik untuk menjalankan TRIM di drive Anda. Jauh lebih sederhana daripada harus membuat entri crontab Anda sendiri untuk memanggil fstrim memerintah. Juga lebih aman tidak harus mengedit fstab mengajukan. Sangat menarik untuk menyaksikan evolusi teknologi penyimpanan solid-state dan senang mengetahui bahwa tampaknya Linux bergerak menuju cara standar dan aman untuk mengimplementasikannya.


Linux
  1. Amankan wadah Anda dengan SELinux

  2. Cara memperluas fungsionalitas desktop Linux Anda dengan PlexyDesk

  3. Memecahkan masalah jaringan Anda dengan tcpdump

  1. Kelola kalender Anda dari terminal Linux dengan perintah konsolekalendar

  2. Optimalkan pengalaman GNOME Anda dengan editor teks Gedit

  3. Bagaimana cara memanfaatkan objek VDSO dengan bahasa pemrograman Anda sendiri?

  1. Hidupkan kembali umpan RSS Anda dengan Newsboat di terminal Linux

  2. Sesuaikan desktop Linux Anda dengan Trinity Desktop Environment

  3. Belajar Linux dengan Raspberry Pi