쉘을 "찾을 수 없음" 응답의 가능한 원인은 무엇입니까?

쉘을 "찾을 수 없음" 응답의 가능한 원인은 무엇입니까?

실행 파일을 실행하려고 할 때 쉘이 "찾을 수 없음"이라고 응답하는 가능한 이유는 모두 무엇입니까?

  • 실행 파일이 존재하며 실행 권한( chmod +x)이 있습니다.
  • ldd모든 종속성이 존재함을 나타냅니다.
  • 파일은 실행 파일이 올바른 아키텍처에 대해 컴파일되었음을 나타냅니다(그렇지 않아야 할 이유는 없으며 Yocto 빌드의 나머지 시스템과 함께 컴파일되었습니다).

또 어떤 이유가 있을 수 있나요?

답변1

실행 권한이 있는 바이너리가 있는 경우 "찾을 수 없음" 오류 메시지가 나타나는 일반적인 원인은 바이너리에서 요청한 동적 로더가 존재하지 않기 때문입니다. 다음을 사용하여 확인할 수 있습니다 readelf.

$ readelf -l /path/to/binary | grep interpreter
      [Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]

인터프리터가 없으면 실행 파일은 "찾을 수 없음" 오류와 함께 실행되지 않습니다. 바라보다64비트 시스템에서 32비트 바이너리를 실행할 때 "찾을 수 없음" 메시지 수신더 알아보기.

관련 정보