답변:
를보십시오 hdparm
.
에서 수동 ( man hdparm
명령 행에서) :
-S 드라이브의 대기 (스핀 다운) 시간 초과를 설정합니다. 이 값은 드라이브에서 전력을 절약하기 위해 스핀들 모터를 끄기 전에 대기 시간 (디스크 활동없이)을 결정하는 데 사용됩니다. 이러한 상황에서는 대부분의 드라이브가 훨씬 빠르지 만 드라이브가 후속 디스크 액세스에 응답하는 데 30 초가 걸릴 수 있습니다.
시간 종료 값의 인코딩은 다소 독특합니다. 값이 0이면 "시간 초과가 비활성화 됨"을 의미합니다. 장치가 자동으로 대기 모드로 들어 가지 않습니다. 1에서 240 사이의 값은 5 초의 배수를 지정하여 5 초에서 20 분의 시간 초과를 생성합니다. 241에서 251 사이의 값은 30 분에서 1에서 11까지 30 분에서 5.5 시간으로 제한 시간을 지정합니다. 252 값은 21 분의 시간 초과를 나타냅니다. 값 253은 공급 업체 정의 시간 종료 기간을 8 시간에서 12 시간 사이로 설정하며 값 254는 예약되어 있습니다. 255는 21 분 + 15 초로 해석됩니다. 일부 구형 드라이브는 이러한 값에 대한 해석이 매우 다를 수 있습니다.
그래서 sudo hdparm -I /dev/sdb | grep level
예를 들어 현재의 스핀 다운 값을 표시합니다 :
Advanced power management level: 254
매뉴얼에서 : 254는 예약되어 있으므로 우분투의 기본값이 될 것으로 기대합니다 (누군가는 이것을 확인 / 확장 할 수 있습니까?)
예:
sudo hdparm -S 25 /dev/sdb
= 25 * 5 초 후 스핀 다운
sudo hdparm -S 245 /dev/sdb
= (245-240) * 30 분 후 스핀 다운
grep
는 APM ( -B
parm) 에 대한 것처럼 보이지만 스핀 다운에 대해 이야기 -S
하십시오. APM에 대해서도 알고 있습니까?
-B
설정이 위에 표시된대로 표시됩니다. 현재 -S
설정을 어떻게 볼 수 있습니까?
sudo hdparm -y /dev/sdb
는 짐승을 즉시 죽인다
디스크 유틸리티-> HDD 드라이브 선택-> 오른쪽 상단 모서리에있는 "추가 작업 ..."아이콘을 클릭-> 드라이브 설정 ...
광산은 다음과 같습니다
gnome-disk-utility
.
hdparm의 설정을 crontab에 추가하는 대신 재부팅 사이에 지속적으로 설정하려면을 사용하십시오 /etc/hdparm.conf
. 나는 소문자가 아닌 대문자 S의 사용에 주목한다.
command_line {
hdparm -S 25 /dev/disk/by-uuid/f6c52265-d89f-43a4-b03b-302c3dadb215
}
UUID를 대신하여 해당 줄을 추가하거나 /dev/sdX
형식을 사용하여 장치를 지정할 수도 있습니다 . 명령을 사용하여 디스크의 UUID를 찾을 수 있습니다 sudo blkid
.
command_line
요즘 사용하는 것이 맞 습니까? 내 다른 예가 /etc/hdparm
있습니까?
sudo lsblk --output NAME,FSTYPE,LABEL,UUID,MODE
편집하다 /etc/hdparm.conf
sudo -H gedit /etc/hdparm.conf # Be careful from now on
spindown-time
또는 디스크 설정 섹션을 찾으십시오 .
/dev/disk/by-label/4TB {
spindown_time = 1200
}
다른 설치에서도 동일하게 유지되는 UUID로 디스크를 참조하는 것이 좋습니다 (HW 자체에서 변경하지 않는 한).
/dev/disk/by-uuid/91e32677-0656-45b8-bcf5-14acce39d9c2 {
spindown_time = 1200
}
init 스크립트가 부팅 문제를 일으키는 경우 nohdparm
커널 명령 행을 전달 하면 스크립트가 실행되지 않습니다.
man hdparm.conf
.
몇 시간과 몇 시간을 보낸 후 WDC 드라이브가 idle3 속성 값 (google : idle3ctl)에 관계없이 hdparm -S 명령을 지원하지 않는 것을 발견했습니다. WD 드라이브의 일반적인 문제입니다. 그러나 hd-idle ( http://hd-idle.sourceforge.net/ )이 완벽하게 작동 한다고 발표하게되어 기쁩니다 . dpkg 빌드 패키지에서 설치하면 (설치 정보 참조) 데비안과 데비안에서 데몬을 생성합니다 (config는 / etc / default / hd-idle에 있습니다). 최대 절전 모드에서 다시 시작한 후에도 잘 작동합니다.
mc 기본값 # ps aux | grep hd-idle | grep -v grep | 컷 -c 66-; [ad]에서 f에 대해; hdparm -C / dev / sd $ f | grep -v "^ $"; 끝난 / usr / sbin / hd-idle -i 1800 -a sdc -i 600 -a sdd -i 60 -l /var/log/hd-idle.log / dev / sda : 드라이브 상태 : 활성 / 유휴 / dev / sdb : 드라이브 상태 : 대기 / dev / sdc : 드라이브 상태 : 대기 / dev / sdd : 드라이브 상태 : 대기
Samsung HD204UI의 스핀 다운 동작은 APM 수준 ( hdparm -B
) 에 따라 다릅니다 . APM 수준이 127 인 경우 스핀 다운 시간 초과는 10 초입니다. APM 수준이 150 인 경우 스핀 다운 시간 초과는 -S
옵션으로 정의됩니다 .
-S
옵션을 설정할 수는 있지만 얻을 수는 없습니다 ( 디스크 스핀 다운 시간 결정 방법 참조 ). "디스크"GUI 소프트웨어를 사용하십시오. 스크린 샷으로 다른 답변 을 참조하십시오 .
나는 다음과 같은 것을 추가한다 :
@reboot sudo hdparm -S244 /dev/disk/by-uuid/71492809-e463-41fa-99e2-c09e9ca90c8e > /dev/null 2> /dev/null
루트의 crontab에. uuid를 사용하는 것이 좋습니다 . 재부팅 할 때마다 sda
/ sdb
등이 변경되는 것처럼 보입니다.
hdparm.conf
않습니까?
우분투 14.04에서
디스크> 드라이브 하이라이트> 오른쪽 상단 모서리에있는 기어 클릭> 드라이브 설정> 이제 사용하기 쉬운 GUI에 대기, APM, AAM 및 쓰기 캐시 설정이 있습니다!
USB 인클로저에 장착 된 외장 HDD의 hdparm을 사용하여 운이 없었습니다 .minidlna로 미디어를 제공하는 데 사용합니다.
나는 여기에서 아이디어를 발견했다 : https://serverfault.com/questions/562738/keeping-usb-backup-drive-from-sleeping-while-mounted
디스크 UUID를 사용하면 최상의 결과를 얻을 수 있습니다.
sudo blkid
다음 방법은 루트 액세스가 필요하지만 hdparm도 필요합니다. crontab을 사용하여 5 분마다 드라이브에서 임의 블록을 읽고 모든 메시지를 무시합니다. 올바른 UUID가 있는지 확인하려면 다음과 같이 명령 행에서 테스트하십시오 (원하는 UUID가 아닌 원하는 UUID를 사용해야 함).
sudo dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM
다음과 같은 출력이 표시되어야합니다.
1+0 records in
1+0 records out
512 bytes copied, 0.000738308 s, 693 kB/s`
어딘가에 작성 될 수있는이 메시지를 억제하기 위해 / 파일 시스템 (내 경우에는 SSD에 있음)은 루트 crontab에서 사용하는 것입니다. 당신은 거기에 도착
sudo crontab -e
그런 다음 주석 아래에서
*/5 * * * * bash -c 'dd if=/dev/disk/by-uuid/f01df4b5-6865-476a-8d3b-597cbd886d41 of=/dev/null count=1 skip=$RANDOM' >/dev/null 2>&1
이것이 비슷한 문제를 가진 다른 사람에게 도움이되기를 바랍니다. 불행히도 이것은 여전히 syslog에 기록되지만이를 억제 할 수있는 방법이 있습니다. 이 ServerFault 게시물을 참조하십시오 .
[편집] 2017-01-07 09:02 :
이 행을 변경하기 위해 /etc/rsyslog.d/50-default.conf를 편집하여 이러한 메시지를 억제 할 수있었습니다.
*.*;auth,authpriv.none -/var/log/syslog
이에:
*.*;cron,auth,authpriv.none -/var/log/syslog
불행히도, 이것은 모든 cron 메시지를 억제합니다. cron이 루트 파일 시스템 (내 경우에는 노화 SSD에 있으므로 쓰기를 제한하고 싶습니다)에서 로깅을 리디렉션하도록 할 수는 없지만 이것이 홈 서버이므로 많은 부분을 놓치지 않을 것입니다. 확실히겠습니까 하지 생산 기계를 위해이 전략을 추천한다.