일부 명령 후에 bash는 알 수 없는 이유로 "Segmentation Fault(core dumped)"를 인쇄합니다.

일부 명령 후에 bash는 알 수 없는 이유로 "Segmentation Fault(core dumped)"를 인쇄합니다.

최근에 Arch Linux 빌드에서 이상한 문제를 발견했습니다. 셸에서 특정 프로그램을 실행하면 "세그먼테이션 오류(코어 덤프)"라는 메시지가 표시됩니다.

이에 대한 몇 가지 예는 다음과 같습니다.셔터를 닫고, 크롬을 실행하고, 숭고한 텍스트를 실행하고, Emacs를 닫으세요.

내가 알 수 있는 한, 세그폴트는 프로그램에 영향을 미치지 않지만 지속적으로 나타나며 짜증이 나기 시작합니다.

원인이 무엇인지 전혀 모르겠으며 한동안 검색한 후에도 이에 대한 정보를 찾을 수 없습니다.

내 쉘은 bash이고 터미널은 urxvt입니다.

답변1

이러한 종류의 문제에는 두 가지 일반적인 원인이 있습니다(즉, 관련되지 않은 여러 프로그램에 영향을 미침).

  1. 메모리에 결함이 있습니다. 사용멤테스터또는멤테스트86당신의 기억력을 테스트하기 위해. 불량 DIMM을 교체하십시오. 마더보드가 이를 지원하는 경우 ECC RAM을 구입하십시오. 일반적으로 10-30% 더 비쌉니다.

memtest86일부 배포판(예: debian)은 패키지를 설치할 때 실행할 grub 항목을 추가하도록 편리하게 구성되어 있습니다 memtest86. memtester재부팅하지 않고도 실행할 수 있습니다.

  1. 영향을 받는 모든 프로그램에 공통적으로 적용되는 잘못된 라이브러리입니다. 최근에 업그레이드하셨나요? 짐작컨데, 당신이 언급한 모든 프로그램이 gnome/gtk 라이브러리에 의존하거나 이를 사용하기 위해 컴파일될 수 있기 때문에 나는 의심스럽게 gnome/gtk 라이브러리를 살펴보기 시작할 것입니다. 다른 잠재적 용의자에는 libc6이 포함됩니다. 이를 사용하면 ldd각 프로그램이 사용하는 lib를 정확히 찾아내고 이를 비교하여 공통 lib를 찾을 수 있습니다.

관련 정보