it-swarm-vi.com

Ubuntu có hỗ trợ lệnh TRIM để sử dụng với SSD không?

Ổ đĩa SSD cần được "xóa/đặt lại" sau khi ổ đĩa đầy để duy trì hiệu suất. Điều này được thực hiện thông qua lệnh TRIM cho các ổ SSD mới. Ubuntu có hỗ trợ lệnh TRIM (thông qua hdparm, v.v.) để xóa/đặt lại các ổ đĩa này không?

34
ssanj

Có vẻ như có hỗ trợ cho chức năng TRIM trong phiên bản 10.10 và mới hơn:

Ngoài ra, công cụ TRIM sẽ tự động xảy ra - các khối trống sẽ tự động được giải phóng khi không còn cần thiết (ví dụ: bạn xóa một tệp), nếu đĩa báo cáo rằng nó hỗ trợ TRIM. Bạn không phải tự phát lệnh hdparm để làm việc này.

24
Jeremy Kerr

Câu trả lời của Jeremy không hoàn toàn chính xác AFAIK. Tôi đã chạy các hạt nhân ổn định mới nhất trên Lucid một thời gian rồi và đã theo dõi trạng thái TRIM khá sắc sảo khi tôi có OCZ Agility làm đĩa chính.

Đây là những gì (tôi nghĩ) tôi biết:

  • Hạt nhân có hỗ trợ TRIM kể từ 2.6.33 (Maverick là 2.6,35).

  • EXT4 có hỗ trợ TRIM nhưng chỉ khi ghi nhật ký bị tắt.

  • Cách TRIM hoạt động trong kernel rất cơ bản và khá chậm. Các đĩa theo thông số kỹ thuật có thể chấp nhận nhiều phạm vi nhưng hạt nhân hiện chỉ có thể thực hiện một phạm vi tại một thời điểm. Điều này đến từ một cái gì đó tôi đọc có lẽ một tháng trước. Tôi ước tôi có nguồn vì điều này có thể không đúng hoặc có thể không áp dụng nữa.

Nhật ký là những gì giết chết nó cho tôi. Tham nhũng dữ liệu là một PITA.

Tuy nhiên, các phiên bản mới hơn của hdparm (v9.25 - Maverick ở phiên bản 27,27) đi kèm với một tập lệnh có tên wiper.sh, thực hiện phân tích nhanh một ổ đĩa và sau đó cắt tất cả không gian trống. Thay vì mất các tính năng, tôi thấy việc cron wiper.sh dễ dàng hơn nhiều để chạy một lần một tuần (hoặc một lần một ngày/tháng/bất cứ điều gì). Sự xuống cấp SSD cho ổ đĩa hệ điều hành không xảy ra nhanh như vậy trừ khi bạn liên tục xé nát mọi thứ. Bạn không cần TRIMming thời gian thực.

Ngoài ra còn có một giao diện GUI được gọi là DiskTRIM mà không xuất hiện trong repos. Người dùng ít kinh nghiệm có thể thấy điều này dễ sử dụng hơn là thiết lập các công việc định kỳ.

Có PPA cho hdparm và đĩaprim và tất cả đều có thể chạy trên Lucid (và trở lại) mà không cần hạt nhân 2.6,33+.

20
Oli

Linux đã hỗ trợ TRIM tự động với hệ thống tệp ETX4 kể từ kernel 2.6.33.

Bản phát hành Ubuntu đầu tiên có hỗ trợ TRIM tự động là 10.10 (Maveric), nhưng nó phải được kích hoạt trong fstab (như được mô tả ở đây ).

8
Uli

Tôi đang chạy 11.04 và có vẻ như TRIM không hoạt động.

Tôi đã thử nghiệm sử dụng các hướng dẫn ở đây để tạo tệp, xóa tệp đó và xem liệu các thành phần có bị xóa/xóa không .

Tôi đã cố gắng bật TRIM sử dụng các hướng dẫn ở đây, nhưng không có xúc xắc

Tôi chạy wiper.sh, tôi nhận được

[.__.]/sbin/wiper.sh --verbose --commit /dev/sda1[.__.[wiper.sh: Tiện ích TRIM SSD SSD Linux, phiên bản 3.3, bởi Mark Lord. [.__.] rootdev = /dev/sda1[.__.[fsmode2: fsmode = read-write [.__.] /: fstype = ext4 [.__.] freesize = 13785252 KB, reserved = 137852 KB [.__.] Chuẩn bị cho TRIM trực tuyến không gian trống trên/dev/sda1 (ext4 gắn đọc-ghi tại /).[.__.[[.__.[ Hoạt động này có thể âm thầm phá hủy dữ liệu của bạn. Bạn có chắc chắn (y/N)? y [.___.] Tạo tệp tạm thời (13647400 KB) .. [.__.] Đồng bộ hóa đĩa .. [.__.] Bắt đầu hoạt động TRIM .. [.__.] get_trimlist =/sbin/hdparm --fibmap WIPER_TMPFILE. 9689 [.__.] [.__.]/Dev/sda: [.__.] Cắt tỉa 27294800 ngành từ 462 phạm vi [.__.] Đã thành công [.__.] Xóa tệp tạm thời .. [.__.] ..
Làm xong.

Tuy nhiên, nếu tôi chạy lại nó, nó sẽ hiển thị cùng một số lĩnh vực/phạm vi cần được cắt bớt và báo cáo thành công một lần nữa. Tôi nhận được chính xác điều tương tự mỗi lần. Nó không giống như các lĩnh vực đã từng bị xóa/giải phóng. Đọc chúng vẫn hiển thị cùng một dữ liệu.

Tò mò nếu bất cứ ai khác có nó để làm việc.

2
user10292