Ubuntu 서버를 실행하는 NUC에 USB를 통해 연결된 외부 Seagate 확장 드라이브의 절전 기능을 비활성화할 수 있는지 확인하려고 합니다. hdparm
오류 메시지가 표시되어 이것을 사용하는 데 문제가 있어서 sdparm
이것이 내 특정 드라이브에서 작동하는 것 같습니다.이 게시물.
나는 실행 sudo sdparm -l -a /dev/sda
하고 다음과 같은 결과를 얻습니다.
/dev/sda: Seagate Expansion Desk 0915
Direct access device specific parameters: WP=0 DPOFUA=0
Caching (SBC) [ca] mode page:
IC 0 [cha: n, def: 0, sav: 0] Initiator control
ABPF 0 [cha: n, def: 0, sav: 0] Abort pre-fetch
CAP 0 [cha: n, def: 0, sav: 0] Caching analysis permitted
DISC 1 [cha: n, def: 1, sav: 1] Discontinuity
SIZE 0 [cha: n, def: 0, sav: 0] Size enable
WCE 1 [cha: y, def: 1, sav: 1] Write cache enable
MF 0 [cha: n, def: 0, sav: 0] Multiplication factor
RCD 0 [cha: n, def: 0, sav: 0] Read cache disable
DRRP 0 [cha: n, def: 0, sav: 0] Demand read retention priority
WRP 0 [cha: n, def: 0, sav: 0] Write retention priority
DPTL -1 [cha: n, def: -1, sav: -1] Disable pre-fetch transfer length
MIPF 0 [cha: n, def: 0, sav: 0] Minimum pre-fetch
MAPF -1 [cha: n, def: -1, sav: -1] Maximum pre-fetch
MAPFC -1 [cha: n, def: -1, sav: -1] Maximum pre-fetch ceiling
FSW 0 [cha: n, def: 0, sav: 0] Force sequential write
LBCSS 0 [cha: n, def: 0, sav: 0] Logical block cache segment size
DRA 0 [cha: n, def: 0, sav: 0] Disable read ahead
SYNC_PROG 0 [cha: n, def: 0, sav: 0] Synchronous cache progress indication
NV_DIS 0 [cha: n, def: 0, sav: 0] Non-volatile cache disable
NCS 255 [cha: n, def:255, sav:255] Number of cache segments
CSS 0 [cha: n, def: 0, sav: 0] Cache segment size
Control [co] mode page:
TST 0 [cha: n, def: 0, sav: 0] Task set type
TMF_ONLY 0 [cha: n, def: 0, sav: 0] Task management functions only
DPICZ 0 [cha: n, def: 0, sav: 0] Disable protection information check if protect field zero
D_SENSE 0 [cha: n, def: 0, sav: 0] Descriptor format sense data
GLTSD 0 [cha: n, def: 0, sav: 0] Global logging target save disable
RLEC 0 [cha: n, def: 0, sav: 0] Report log exception condition
QAM 1 [cha: n, def: 1, sav: 1] Queue algorithm modifier
NUAR 0 [cha: n, def: 0, sav: 0] No unit attention on release
QERR 0 [cha: n, def: 0, sav: 0] Queue error management
RAC 0 [cha: n, def: 0, sav: 0] Report a check
UA_INTLCK 0 [cha: n, def: 0, sav: 0] Unit attention interlocks control
SWP 0 [cha: n, def: 0, sav: 0] Software write protect
ATO 0 [cha: n, def: 0, sav: 0] Application tag owner
TAS 0 [cha: n, def: 0, sav: 0] Task aborted status
ATMPE 0 [cha: n, def: 0, sav: 0] Application tag mode page enabled
RWWP 0 [cha: n, def: 0, sav: 0] Reject write without protection
SBLP 0 [cha: n, def: 0, sav: 0] Supported block lengths and protection information
AUTOLOAD 0 [cha: n, def: 0, sav: 0] Autoload mode
BTP 0 [cha: n, def: 0, sav: 0] Busy timeout period (100us)
ESTCT 0 [cha: n, def: 0, sav: 0] Extended self test completion time (sec)
Power condition [po] mode page:
PM_BG 0 [cha: n, def: 0, sav: 0] Power management, background functions, precedence
STANDBY_Y 0 [cha: n, def: 0, sav: 0] Standby_y timer enable
IDLE_C 0 [cha: n, def: 0, sav: 0] Idle_c timer enable
IDLE_B 0 [cha: n, def: 0, sav: 0] Idle_b timer enable
IDLE 0 [cha: n, def: 0, sav: 0] Idle_a timer enable
STANDBY 0 [cha: y, def: 1, sav: 0] Standby_z timer enable
ICT 0 [cha: n, def: 0, sav: 0] Idle_a condition timer (100 ms)
SCT 4294967286 [cha: y, def:9000, sav:4294967286] Standby_z condition timer (100 ms)
IBCT 0 [cha: n, def: 0, sav: 0] Idle_b condition timer (100 ms)
ICCT 0 [cha: n, def: 0, sav: 0] Idle_c condition timer (100 ms)
SYCT 0 [cha: n, def: 0, sav: 0] Standby_y condition timer (100 ms)
CCF_IDLE 0 [cha: n, def: 0, sav: 0] check condition on transition from idle
CCF_STAND 0 [cha: n, def: 0, sav: 0] check condition on transition from standby
CCF_STOPP 0 [cha: n, def: 0, sav: 0] check condition on transition from stopped
저는 하드 드라이브 용어를 처음 접했지만 이것이 STANDBY
드라이브가 대기 모드에서 실행되어야 하는지 여부를 나타내는 부울이 될 것이라고 생각합니다. 1
대신 디스크에 "잠자기"를 하지 않도록 설정하시겠습니까 0
, 아니면 그 반대로 설정하시겠습니까?
목록에 확인해야 할 다른 설정이 있습니까? 아니면 제가 완전히 잘못하고 있는 것인가요?
답변1
나는 최근에 같은 질문에 답하고 싶은 욕구를 우연히 발견했습니다. 쓰기 작업 중에도 절전 모드로 전환되는 WD My Book 25ED가 여러 개 있습니다. 어쨌든, 약간의 조사 끝에 sdparm-disable_sleep.sh
실행 후 문제를 해결하는 스크립트를 작성했습니다 .
#!/bin/bash
# Usage: sdparm-disable_sleep.sh <device>
[[ -n "${1}" && -b "${1}" ]] \
&& sdparm --flexible --page=po -l -a "${1}" \
&& { sdparm --flexible --set=STANDBY_Z=0 -S "${1}" \
&& sdparm --flexible --page=po -l -a "${1}"; }
기본적으로 이 sdparm --set=STANDBY_Z=0 -S <device>
명령은 STANDBY_Z
으로 설정되어 0
타이머를 비활성화하고 설정을 저장합니다.
귀하의 경우 매개변수의 이름은 으로만 지정되었으며 STANDBY
, 붙여넣은 출력에 따르면 비활성화되었습니다(저장된 값은 이므로 0
). 어쩌면 펌웨어에 문제가 있을 수도 있습니다. 어쨌든 명령을 실행해 보고, 아닐 수도 있습니다 -S
. 적어도 드라이브가 재부팅/재초기화될 때까지 명령이 지속되는지 확인합니다.