Spin-down ổ cứng USB (hd-idle)

Định nghĩa

Spin-down là cho ổ cứng cơ ngừng quay khi không dùng, để đỡ ồn, đỡ nóng và đỡ hao tuổi thọ. Với ổ cắm trong (SATA trực tiếp), hdparm -S đặt được ngưỡng standby ngay trong firmware ổ. Với ổ ngoài qua USB, cách này thường thất bại vì cầu USB-SATA không chuyển tiếp lệnh ATA (không hỗ trợ ATA passthrough).

Bẫy: hdparm báo thành công giả

Khi passthrough không được hỗ trợ, hdparm in dòng lỗi SG_IO: bad/missing sense data rồi vẫn in tiếp những dòng trông như thành công (setting standby to ..., drive state is: standby). Tin vào output đó là hiểu sai hoàn toàn trạng thái ổ. Dấu hiệu kiểm chứng thêm: hdparm -I trả về thông tin rỗng (0 cylinders, device size 0 MBytes).

Giải pháp: hd-idle

hd-idle không đi đường ATA mà gửi lệnh SCSI START STOP UNIT qua tầng SCSI/USB — đúng đường mà ổ USB hiểu — đồng thời tự theo dõi bộ đếm I/O để biết ổ có thực sự rảnh hay không. Cấu hình ở /etc/default/hd-idle.

Thứ tự tham số có nghĩa: -i 0 đặt trước -a là tắt idle mặc định cho mọi đĩa khác (quan trọng, nếu không sẽ áp cả cho thẻ nhớ chạy hệ điều hành); -i <giây> đặt sau -a <device> chỉ áp cho ổ vừa nêu. Nên trỏ thiết bị qua /dev/disk/by-id/... kèm -s 1 để resolve symlink lúc chạy.

Điều kiện để spin-down thực sự có tác dụng

Bất kỳ tiến trình nào quét thư mục của ổ định kỳ — media server scan, cron backup, indexer — sẽ reset đồng hồ idle và ổ không bao giờ ngủ. Muốn spin-down có tác dụng phải chỉnh lịch quét bên đó, không phải chỉnh tham số idle.

Nguồn chính

Khái niệm liên quan

Ghi chú