I/O 급증의 원인을 추적하는 방법은 무엇입니까?

I/O 급증의 원인을 추적하는 방법은 무엇입니까?

저는 Linux를 데스크탑으로 사용하고 있는데 무작위로 I/O가 급증하는 것처럼 보이는 현상이 계속 발생하고 있습니다. 기계를 사용할 수 없게 됩니다. 처음에는 기억력이 부족하다고 생각했어요. 그러나 의 출력을 살펴보면 특이한 점을 찾지 못했습니다 free. topCPU 로드도 마찬가지입니다.

문제가 되는 프로세스를 즉시 종료하지 않으면 시스템이 완전히 멈출 때까지 매우 빠르게(약 10분) 정지되며 하드 리셋을 수행해야 합니다.

한 동료가 비슷한 문제가 있어서 I/O 급증을 발견했다고 말했습니다. 그건 그렇고, 우리는 동일한 기계를 가지고 있습니다 (회사에서 제공합니다).

또한 Chrome에서 새 탭을 열 때 이러한 스파이크가 자주 발생하는 것으로 나타났습니다. 하지만 그것은생각하다이런 일이 다른 경우에도 일어났습니다. Firefox에서 탭을 열거나 임의의 탭을 여는 것과 같습니다.

실행하여 출력을 확인하기로 결정했지만 변경 사항을 더 쉽게 볼 수 있다는 이유로 dstat마음을 바꿔 사용했습니다 .ksysguard

모니터 스크린샷:

스크린샷

보시다시피 시스템 로드의 급증과 동시에 디스크 I/O의 급증이 있습니다. 이상하게 메모리 사용량이아래에그 순간. 이것이 교환과 관련이 있을 수 있습니까?

스파이크가 2개 있습니다. 내가 느낀 첫 번째 일은 Chrome에서 링크를 클릭하는 것과 동시에 발생했습니다(탭을 열지 않고 JavaScript 코드를 실행함). 즉시 탭의 "닫기" 버튼을 클릭했는데 기기가 다시 응답했습니다. 두 번째는 뚜렷한 효과가 없었습니다. 메모리 사용량이 줄어든 것은 살짝 발생해서 탭을 닫았기 때문일 수도 있습니다.뒤쪽에I/O 스파이크.

전체 피크(첫 번째 피크)는 약 10초 동안 지속되었습니다.

무엇을 주의해야 하는지 알고 있나요?

답변1

범인을 찾았습니다.

이는 실제로 잘못된 스왑 설정으로 인한 것입니다. 나는 그것을 스왑 공간 fstab으로 나열했습니다 . /dev/mapper/cryptswap이것은 존재하지 않습니다. 내 생각에는 시스템에 스왑이 필요하면 정의된 스왑 공간이 표시되지만 장치는 어디에도 존재하지 않는 것 같습니다.

테스트를 위해 방금 빈 파일을 스왑 공간으로 만들었습니다. 그 이후로 기계는 훨씬 더 안정적으로 작동하는 것 같습니다. 그 이후로는 스파이크/충돌이 발생하지 않았습니다. 하지만 나는하다사용 중인 새 스왑 파일을 봅니다.

관련 정보