BananaPi와 SATA 하드 드라이브를 사용하여 NAS를 구축했습니다. 운영 체제는 Bananian(Debian 8/Jessie)입니다. 하드 드라이브를 대기 모드로 전환하고 싶습니다 hdparm -y
.
어떤 이유로 이는 하드 드라이브(파티션)가 마운트되지 않은 경우에만 작동합니다. 설치 -o noatime
하고 실행해도 hdparm -y
대기상태로 들어가지 않습니다.
hdparm -B
또한 (127, 128, 254, 255)의 다른 값을 시도했지만 운이 없었습니다.
iotop과 dstat를 보면 하드 드라이브에 무언가가 지속적으로 기록되고 있는 것을 볼 수 있습니다.
iotop
:
Total DISK READ : 0.00 B/s | Total DISK WRITE : 0.00 B/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 3.77 M/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
1408 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % getty 38400 tty2
1 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % init [2]
2 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [kthreadd]
3 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [ksoftirqd/0]
1412 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % getty 38400 tty6
내 생각엔 이 쓰기가 즉시 하드 드라이브를 다시 깨울 것입니다. 하드 드라이브에 ext4로 포맷된 파티션이 있고 저널링이 꺼져 있습니다.
덮어쓰기의 원인은 무엇입니까? 이것이 대기 모드를 방해할 수 있다는 것이 맞습니까? 이 문제를 어떻게 해결해야 합니까?
편집하다: NAS의 경우 아직 소프트웨어(Samba, Apache...)가 설치되어 있지 않습니다. 사실 이는 데비안을 새로 설치한 것일 뿐 다른 것은 없습니다. 적어도 내가 아는 한 하드 드라이브에 액세스할 수 있는 소프트웨어는 없습니다.
답변1
나는이 문제를 직접 해결했습니다. 나는 나타나서 /proc/sys/vm/block_dump
살펴보았다 dmesg
.
ext4lazyinit는 여전히 백그라운드에서 하드 드라이브(inode 테이블) 포맷을 완료하고 있는 것으로 나타났습니다.
드라이브를 다시 포맷하여 lazy_itable_init=0
강제로 완료하겠습니다.