Contents
see List작성일 2015. 03. 11.
CentOS bad ELF interpreter 오류 해결
32비트 바이너리를 64비트 시스템에서 실행할 때 발생하는 오류입니다.
오류 메시지
/lib/ld-linux.so.2: bad ELF interpreter: 그런 파일이나 디렉터리가 없습니다원인
64비트 CentOS에서 32비트 프로그램을 실행하려 할 때, 32비트 라이브러리가 설치되어 있지 않아서 발생합니다.
해결 방법
# 32비트 호환 라이브러리 설치
yum install ld-linux.so.2
# 또는 glibc 32비트 버전 설치
yum install glibc.i686
# CentOS 7 이상에서는
yum install glibc.i686 libstdc++.i686추가 32비트 라이브러리 설치
# 일반적으로 필요한 32비트 라이브러리들
yum install libstdc++.i686
yum install zlib.i686
yum install ncurses-libs.i686
yum install libX11.i686
yum install libXrender.i686
yum install libXext.i686
# 한번에 설치
yum install glibc.i686 glibc-devel.i686 libstdc++.i686 zlib.i686확인 방법
# 바이너리가 32비트인지 확인
file /path/to/binary
# 필요한 라이브러리 확인
ldd /path/to/binary
# 설치된 32비트 패키지 확인
rpm -qa | grep i686주의사항
- yum 대신 dnf 사용시:
dnf install glibc.i686 - Docker 컨테이너에서도 동일한 오류 발생 가능
- Oracle Instant Client 같은 상용 SW에서 자주 발생
os
| No | 작성일 | Title |
|---|---|---|
| 353 | 2016. 03. 04. | [ linux ] tomcat permission change umask |
| 352 | 2016. 02. 26. | [ centos 7 ] oracle service 등록 systemctl |
| 351 | 2016. 02. 26. | [ centos7 ] oracle 11g install centos7에 오라클 설치 |
| 348 | 2016. 02. 15. | [ linux ] 리눅스 centos 자바 버전 (java version) 변경 |
| 338 | 2016. 01. 18. | [ linux ] 리눅스 svn 권한 설정 |
| 333 | 2015. 12. 01. | [ linux ] 하드디스크 추가, 파티션 및 마운트 (hdd partition , mount) |
| 332 | 2015. 11. 20. | [ linux ] 4 TB , 테라 이상 마운트하기 |
| 323 | 2015. 10. 17. | [ linux ] 리눅스 사용중인 포트 확인 |
| 320 | 2015. 10. 16. | [ linux ] tar 및 tar.gz 압축 , 압축해제 |
| 284 | 2015. 05. 29. | [ linux ] ps -ef 프로세서 상태 확인 |