인프라/오류 해결

[리눅스 오류] bash: /usr/local/bin/helm: 이진 파일을 실행할 수 없음: Exec 형식 오류 (cannot execute binary file: exec format error)

HSY_mumu 2022. 10. 12. 10:33
728x90

1. 문제 상황

Helm 압축 파일을 다운로드 받고 설치 후, helm 실행을 하려고 하니 이진 파일을 실행할 수 없다는 오류가 떴다.

yum install wget -y
mkdir ~/tmp
cd ~/tmp
wget https://get.helm.sh/helm-v3.10.0-linux-amd64.tar.gz

tar zxvf helm-v3.10.0-linux-amd64.tar.gz

mv linux-amd64/helm /usr/local/bin/helm

cd /
rm -rf ~/tmp

# 오류 발생 지점
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx

 

보통 이러한 오류가 나는 원인은 아래와 같다.

1) 다운을 받은 tar.gz 파일의 버전이 OS랑 다른 경우

2) 32비트에서 64비트 모듈을 돌리는 경우 

 

현재 OS 는 ARM64 인데, AMD64 버전으로 Helm 을 다운받아 설치했던게 문제였다.

 

2. 해결방법

아래와 같은 명령어로 ARM64 버전으로 Helm 을 설치한다

yum install wget -y
mkdir ~/tmp
cd ~/tmp
wget https://get.helm.sh/helm-v3.10.0-linux-arm64.tar.gz

tar zxvf helm-v3.10.0-linux-arm64.tar.gz

mv linux-arm64/helm /usr/local/bin/helm

cd /
rm -rf ~/tmp

# 오류 발생 지점
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx

helm 다운로드 주소는 여기에서 확인할 수 있다.

 

https://nine01223.tistory.com/123

 

리눅스에서 cannot execute binary file 에러가 날 때

리눅스에서 cannot execute binary file 에러가 날 때 가장 흔한 원인은 OS가 32비트인데 64비트 bin 파일을 돌린다던지 등의 경우이다. 제대로 설치를 했는지 확인이 필요하다!(예를 들어 다운을 받은 tar.g

nine01223.tistory.com

 

728x90