Làm cách nào để ngăn nhân Linux đánh thức ổ cứng thứ cấp khỏi giấc ngủ


11

Có cách nào để hướng dẫn kernel (Linux) không đánh thức hdd thứ cấp sau chu kỳ ngủ / thức dậy của hệ thống không? Tôi đang hỏi bởi vì trong máy tính xách tay của tôi, tôi có một ổ SSD là ổ đĩa chính chứa gốc hệ thống và ổ cứng thứ cấp nơi tôi giữ một hệ thống sao lưu và các tệp tôi truy cập không thường xuyên. Vì máy tính xách tay thường trải qua nhiều chu kỳ ngủ / thức dậy hàng ngày (ý tôi là Tạm dừng RAM, không ngủ đông) trong nhiều ngày, tôi muốn đặt ổ cứng thứ cấp để ngủ thủ công và hướng dẫn nhân giữ cho nó ngủ qua hệ thống. / chu kỳ đánh thức.


1
Nếu bạn muốn gửi ổ cứng của mình bằng tay để ngủ, bạn có thể sử dụng hdparm -Y /dev/sdb. Nếu hệ thống của bạn truy cập vào đĩa của bạn, nó sẽ tự động quay trở lại. Bạn cũng có thể xác định điều này /etc/hdparm.confvới /dev/disk/by-label/DATA4 { spindown_time = 180 } tôi khuyên bạn nên sử dụng nhãn cho các đĩa của mình vì bạn không bao giờ có thể dựa vào đĩa nào được phát hiện đầu tiên bởi hệ thống của bạn. lưu ý rằng bạn cần một phiên bản mới hơn của hdparm (của tôi là 9,43) để gửi các đĩa có nhãn đi ngủ.
syss

Câu trả lời:


1

vì bạn chỉ sử dụng hdd thứ cấp để sao lưu, tôi khuyên bạn nên bảo fstab không tự động gắn ổ đĩa và tạo tập lệnh sao lưu gắn ổ đĩa, tạo bản sao lưu và ngắt kết nối ổ đĩa một lần nữa.

ví dụ về dòng fstab với tùy chọn noauto:

/dev/sdb1 /media/backup ext4 user,noauto 0 0

bash script để sao lưu sẽ bắt đầu bằng mount /media/backupvà kết thúc bằngumount /media/backup


Điều này không ngăn cản kernel phát hiện đĩa khi khởi động.
Marc.2377

0

Tôi không nghĩ rằng điều đó là có thể. Ổ đĩa được BIOS / UEFI thăm dò khi khởi động, không chỉ kernel.

Mặc dù vậy, những gì tôi làm là hướng dẫn hệ thống đặt ổ đĩa ở chế độ ngủ ngay sau khi hệ thống khởi động. Kiểm tra https://wiki.archlinux.org/index.php/Hdparm#Pinating_a_drive_to_s ngủ_directly_after_boot .

Trong trường hợp của tôi, tôi có:

/usr/local/lib/systemd/system/rsleephdd.service

[Unit]
Description="Ranolfi's script to sleep hard drives on boot"

[Service]
Type=oneshot
ExecStart=/usr/bin/hdparm -q -S 120 -Y /dev/sdc

[Install]
WantedBy=multi-user.target

Không có sự khác biệt cho dù ổ đĩa hoặc phân vùng của nó được gắn bởi fstab (hoặc crypttab, cho vấn đề đó) hay không.

(chỉnh sửa) nói đúng, có vẻ như có thể lấy kernel bỏ qua đĩa bằng cách vá nó . Tuy nhiên, điều đó sẽ không ngăn ổ đĩa thức dậy - hoàn toàn ngược lại, bản vá mà tôi đã liên kết sẽ ngăn bạn truy cập vào ổ đĩa, bạn sẽ không thể truy cập các tệp của mình ngay cả khi không thường xuyên và cũng không thể đặt ổ đĩa vào ngủ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.