it-swarm-id.com

Apakah Ubuntu memiliki dukungan untuk perintah TRIM untuk digunakan dengan SSD?

Drive SSD perlu "dihapus/direset" setelah drive terisi untuk mempertahankan kinerja. Ini dilakukan melalui perintah TRIM untuk drive SSD baru. Apakah Ubuntu mendukung perintah TRIM (melalui hdparm dll) untuk membersihkan/mengatur ulang drive ini?

34
ssanj

Sepertinya ada dukungan untuk fungsi TRIM di rilis 10.10 dan yang lebih baru:

Juga, hal-hal TRIM terjadi secara otomatis - blok kosong secara otomatis dilepaskan ketika mereka tidak lagi diperlukan (misalnya, Anda menghapus file), jika disk melaporkan bahwa ia mendukung TRIM. Anda tidak harus mengeluarkan perintah hdparm secara manual agar ini berfungsi.

24
Jeremy Kerr

Jawaban Jeremy tidak sepenuhnya akurat, AFAIK. Saya telah menjalankan kernel stabil terbaru di Lucid untuk beberapa waktu sekarang dan telah mengikuti status TRIM cukup tajam karena saya memiliki Kelincahan OCZ sebagai disk utama saya.

Inilah yang (saya pikir) saya tahu:

  • Kernel memiliki dukungan TRIM pada 2.6.33 (Maverick 2.6.35).

  • EXT4 memiliki dukungan TRIM tetapi hanya ketika penjurnalan dimatikan.

  • Cara TRIM bekerja di kernel sangat mendasar dan cukup lambat. Disk yang mengikuti spesifikasi dapat menerima beberapa rentang tetapi kernel saat ini hanya dapat melakukan satu rentang pada satu waktu. Ini berasal dari sesuatu yang saya baca mungkin sebulan yang lalu. Saya berharap memiliki sumber karena ini mungkin tidak benar atau mungkin tidak berlaku lagi.

Journalling adalah apa yang membunuhnya bagi saya. Korupsi data adalah PITA.

Namun versi hdparm yang lebih baru (v9.25 - Maverick ada di v9.27) hadir dengan skrip bernama wiper.sh yang melakukan analisis cepat drive dan kemudian memangkas semua ruang kosong. Daripada kehilangan fitur, saya merasa lebih mudah untuk menjalankan cron wiper.sh untuk dijalankan seminggu sekali (atau sekali sehari/bulan/apa pun). Degradasi SSD untuk drive OS tidak terjadi secepat itu kecuali Anda terus-menerus merusaknya. Anda tidak perlu PEMAIN realtime.

Ada juga antarmuka GUI yang disebut DiskTRIM yang tampaknya tidak ada dalam repo. Pengguna yang kurang berpengalaman mungkin menemukan ini lebih mudah digunakan daripada mengatur pekerjaan cron.

Ada PPA untuk hdparm dan disktrim dan semua dapat dijalankan di Lucid (dan lebih jauh ke belakang) tanpa perlu kernel 2.6.33+.

20
Oli

Linux memiliki dukungan untuk TRIM otomatis dengan sistem file ETX4 sejak kernel 2.6.33.

Rilis Ubuntu pertama dengan dukungan TRIM otomatis adalah 10.10 (Maveric), tetapi harus diaktifkan di fstab (seperti yang dijelaskan di sini ).

8
Uli

Secara umum, ya, karena ada banyak cara untuk mendapatkan kernel yang lebih baru. Jika kami memperjelas pertanyaan Anda untuk membaca, "Apakah 10,04 LTS memiliki dukungan di luar kotak untuk perintah?" maka jawabannya adalah tidak. Namun, kernel Maverick dan Natty (-generic, -generic-pae, -server, dan -virtual flavours) telah di-backport ke 10,04 LTS dan tersedia dari $ release-update di repositori Ubuntu, misalnya, linux-image-generic-lts-backport-maverick adalah Backport Maverick ke Lucid .

4
Daniel T Chen

Saya menjalankan 11,04 dan sepertinya TRIM tidak bekerja sesuai dengan aturan.

Saya menguji menggunakan instruksi di sini untuk membuat file, menghapusnya, dan melihat apakah sektor mendapatkan nol/dihapus .

Saya mencoba mengaktifkan TRIM menggunakan instruksi di sini, tetapi tidak ada dadu

Saya menjalankan wiper.sh, saya mengerti

/sbin/wiper.sh --verbose --commit /dev/sda1[.____.[wiper.sh: Linux SATA SSD TRIM utility, versi 3.3, oleh Mark Lord. 
 rootdev = /dev/sda1[.____.[fsmode2: fsmode = baca-tulis 
 /: fstype = ext4 
 freesize = 13785252 KB, dipesan = 137852 KB 
 Mempersiapkan untuk TRIM online dari ruang kosong di/dev/sda1 (ext4 mount read-write di /).[.____.[[.____.[Operasi ini dapat secara diam-diam menghancurkan data Anda. Apakah Anda yakin (y/T)? y 
 Membuat file sementara (13647400 KB) .. 
 Menyinkronkan disk .. 
 Memulai operasi TRIM .. 
 get_trimlist =/sbin/hdparm --fibmap WIPER_TMPFILE. 9689 
 
/Dev/sda: 
 Memangkas 27294800 sektor dari 462 rentang 
 Berhasil 
 Menghapus file sementara .. 
 Menyinkronkan disk .. 
 Selesai. 

Namun jika saya menjalankannya lagi, ini menunjukkan jumlah sektor/rentang yang sama harus dipangkas, dan melaporkan keberhasilan lagi. Saya mendapatkan hal yang persis sama setiap saat. Sepertinya sektor tidak pernah dihapus/dibebaskan. Membacanya masih menunjukkan data yang sama.

Penasaran apakah ada orang lain yang menggunakannya.

2
user10292