Linux에서 임의 IO HDD 및 시스템 정지를 조사하거나 수정하는 방법은 무엇입니까?

Linux에서 임의 IO HDD 및 시스템 정지를 조사하거나 수정하는 방법은 무엇입니까?

내 홈 데스크탑 시스템은 Ubuntu 18.04.1이고 커널은 현재 5.3.0으로 정기적으로 업데이트됩니다. 반드시 그런 것은 아니지만 주로 검색할 때 IO 시 시스템이 느려지는 경우가 있습니다. - HDD LED가 계속 켜져 있습니다. - 모든 디스크 요청에서 시스템이 느려집니다. 예를 들어 콘솔 로그인 또는 ls ~/몇 분 정도 소요됨 - 시스템이 다른 작업(마우스 이동, 가상 콘솔 전환)에서 빠름 - iotop은 99%가 IO를 기다리고 있는 여러 애플리케이션을 표시함 - iostat는 높은 wrqm, 낮은 wrkb/s를 표시함

몇 분 후 시스템이 완전히 정지되어 하드 재부팅을 해야 했습니다.

문제를 더 잘 조사하려면 어떻게 해야 합니까? 어떤 스케줄러를 추천하시겠습니까? 단일 응용 프로그램으로 인해 하드 드라이브가 작동하지 않는 경우 이를 비활성화할 수 있는 방법이 있습니까?

고쳐 쓰다: 디스크는 회전 디스크인 HDD입니다. IO 대기를 표시하는 애플리케이션은 실제로 IO를 수행하고 있는 것입니다. 교체할 필요가 없으며 메모리가 충분합니다. syslog에는 관련 줄이 없습니다. 다음에 나타날 때 /var/log/messages가 표시됩니다.

답변1

top또는 같은 도구를 사용하는 것 외에 glances첫 번째 옵션입니다 journalctl.

비슷한 문제가 있었는데 journalctl -b -f터미널에서 시작해서 거기에 두었습니다. 문제가 발생하면 메시지를 표시합니다.커널: i915 0000:00:02.0: GPU 정지: 에코코드 9:1:0x00000000, rcs0에 정지, 결과는허점적어도 커널 5.3 및 5.4에서는.

답변2

또한 디스크 상태도 확인해야 합니다. 일부 디스크는 블록을 읽지 못하면 꽤 오랜 시간 동안 계속 재시도할 수 있습니다. 읽기가 최종적으로 성공하면 I/O 오류가 보고되지 않을 수 있습니다. 그러나 디스크 재시도 시간이 너무 오래 걸리면 커널로 인해 결국 작업 시간 초과가 발생할 수 있습니다.

그런 식으로 하면 sudo smartctl -a /dev/sda꽤 포괄적인 보고서가 생성될 것입니다. 디스크 제조업체, 모델 및 기타 식별 정보를 제공하는 첫 번째 부분 뒤에는 다음 줄이 표시됩니다.

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

그렇지 않은 것으로 판명되면 PASSED백업이 올바른지 확인해야 합니다. 컴퓨터를 중요한 용도로 사용하는 경우, 고장난 디스크가 완전히 닳을 때까지 기다리기보다는 가능한 한 빨리 교체하는 것이 좋습니다.

대부분의 경우 SMART 속성과 해당 값이 포함된 테이블도 있어야 합니다. 값은 확장된 형식으로 표현됩니다. 각 값이 보고된 임계값을 초과하는 한 디스크의 내부 진단은 여전히 ​​디스크가 "충분하다"고 간주합니다. 따로 있는 것도 있어요원래 값"정시"와 같은 속성이 있으면 흥미로울 수 있는 열입니다.

특정 디스크 모델의 SMART 기능에 따라 더 자세한 오류 로그 및/또는 자체 테스트 결과가 표시될 수도 있습니다.

디스크 상태가 양호해 보인다면 다른 SATA 케이블을 사용해 볼 수도 있습니다. 최근 몇 년간 시장에 불량품 SATA 케이블이 많이 나온 것 같습니다.

관련 정보