나는 출판했다하나의 질문이는 내 하드 드라이브가 아무 이유 없이 계속 회전하고 있으며 어떤 프로세스로 인해 하드 드라이브가 회전하는지 알고 싶기 때문입니다.
질문에 대한 의견에서 나는 iosnoop
하드 드라이브 중 하나가 무작위로 회전하는 동안 몇 분 안에 몇 백 라인을 생성하기 위해 어떤 것을 사용해야 하는지(매개변수나 스위치 없이) 설명했습니다. 출력을 복사하고 Emacs에게 SD 카드에 해당하는 장치 번호가 있는 모든 줄을 제거하라고 지시하면(접근에 대해서는 관심이 없습니다) 다음과 같은 결과가 남습니다.
COMM PID TYPE DEV BLOCK BYTES LATms
dumpe2fs 19467 R 8,0 272648 4096 23.25
^C
Ending tracing...
남은 데이터는 1행뿐이므로 범인이 파악됐다고 보는 것이 타당하다. 그런데 왜 dumpe2fs
무작위로 전화가 왔나요? 그보다 더 중요한 것은, 가급적이면 문제를 일으키지 않고 중지시키는 방법입니다(해당 파일의 이름을 바꾸는 더러운 솔루션이 이를 수행할 수 있음).
수동으로 실행하면 sudo dumpe2fs /dev/sda1
해당 HDD가 회전됩니다. 그러나 명령은 출력을 반환하고 HDD가 회전하기 전에 종료됩니다(HDD가 회전하는 동안 파일에 액세스할 때 경험하는 최대 7초의 지연 없이).
우분투 메이트 16.04를 사용합니다.
답변1
실행 중인 이유를 알아보려면 dumpe2fs
로거로 교체할 수 있습니다. 이름을 바꾸고 Contains라는 스크립트를 /sbin/dumpe2fs
만듭니다./sbin/dumpe2fs.real
/sbin/dumpe2fs
#!/bin/sh
echo dumpe2fs "$@" >> /var/log/dumpe2fs-search.log
date >> /var/log/dumpe2fs-search.log
pstree >> /var/log/dumpe2fs-search.log
exec dumpe2fs.real "$@"
그런 다음 로그 파일을 보고 무엇이 실행되고 있는지 확인합니다 dumpe2fs
.