때때로 컴퓨터를 시작한 후 일부 응용 프로그램이 시작되지 않고 충돌이 발생합니다. 일반적으로 Firefox, Thunderbird 또는 Virtualbox와 같이 가장 큰 것입니다. 일반적으로 캐시를 다시 시작하거나 지우면 문제가 해결됩니다. 예를 들어:
me@localhost:~$ thunderbird &
Segmentation fault
me@localhost:~$ echo 3 > /proc/sys/vm/drop_caches
me@localhost:~$ thunderbird &
[1] 6709
또한 이러한 애플리케이션 바이너리 또는 관련 라이브러리에는 캐시 삭제 전후의 md5sum이 다른 것으로 나타났습니다. 나는 바이너리의 16진수 덤프를 비교하고 그들 사이에 1바이트 차이를 발견했습니다.
이는 다양한 Linux 배포판 및 버전에서 발생합니다. memtest를 여러 번 실행하고 하드 드라이브를 다른 드라이브(그러나 동일한 모델)로 교체했지만 아무런 변화가 없습니다. 이 하드웨어는 몇 년 된 것이고 매우 일반적이지만, 구입한 이후로 이런 일이 발생했기 때문에 지원되지 않는다고 생각하지 않습니다.
이 문제의 원인을 찾으려면 어떻게 해야 합니까? 미리 감사드립니다.
답변1
이것은 나에게 메모리 오류처럼 들립니다. 다음과 같은 메모리 테스터를 실행하는 것이 좋습니다.http://www.memtest.org/하루나 이틀 정도 기다려 오류가 나타나는지 확인하세요.
답변2
이것은 OOM 킬처럼 보입니다.
당신은 무엇을 할 수 있나요:
프로그램이 충돌하기 시작할 때까지 주기적으로 메모리 사용량을 확인하십시오. 메모리 사용량이 한계에 도달한 것을 보게 될 것입니다.
스왑 공간을 늘리십시오. 스왑을 늘리면 일부 응용 프로그램 응답 시간이 느려질 수 있지만 응용 프로그램이 종료되거나 컴퓨터가 정지되는 것을 방지할 수 있습니다.
스왑 공간을 늘려 문제가 해결된다면 물리적 RAM을 늘리는 것이 원치 않는 부작용이 없는 영구적인 솔루션입니다.