리눅스 환경에서 새로운 패키지를 설치할 때에 "yum을 통해 손쉽게 다운로드할 수 있지만,
현재 구축하려는 서버는 사내망에 있어서 인터넷이 불가능한 환경이라 yum명령어를 사용할 수 없었습니다..

yum을 사용하지 못할경우에는 설치하려는 rpm 파일을 하나씩 설치해야 하는데,
해당 rpm 파일을 설치하기 위해서는 이에 해당하는 의존성 패키지 또한 같이 설치해줘야 하는 번거로움이 존재합니다.
인터넷이 안 되는 서버에 패키지를 쉽게 설치하는 방법은
인터넷이 되는 환경의 서버에서 yumdownloader를 사용해서 필요한 패키지. rpm파일을 다운로드하는 것입니다.
yumdownloader 명령어에 --resolve 옵션을 추가하면 의존성 있는 패키지도 같이 다운로드할 수 있습니다.
# yumdownloader --resolve [패키지 명]
해당. rpm 파일이 다운됐으면 인터넷이 안 되는 서버에 옮긴 후,
# rpm -ivh [패키지 파일명].rpm
명령어를 통해, 패키지를 설치합니다.
하지만, 이상하게도 패키지를 설치하는 도중 다른 패키지가 없어 설치가 안된다는 에러 문구를 발견할 수 있는데.. 🤣
구글링 해본 결과,
yumdownloader 명령어를 통해 패키지를 다운로드할 때 이미 서버에 설치된 dependency의 경우 다운로드를 하지 않는다고 하더라구요..ㅠㅠㅠ
그래서 다운받을 rpm을 폐쇄망 서버에 옮겨서 설치했을 때 위와 같은 오류가 발생하는 것이었습니다..
그래서 저는 repotrack을 사용해 rpm패키지를 다운로드하였습니다.
repotrack은 yumdownloader --resolve과 매우 유사하지만, yumdownloader는 종속성을 해결할 때 이미 설치되어 있으면 해당 종속성을 설치하지 않고 건너뛰고 repotrack의 경우 모든 종속성을 다운로드할 수 있는 차이점이 있습니다.
repotrack -p [다운로드 파일 경로] [다운받을 패키지 명]
해당 명령어를 통해 모든 종속성 패키지와 함께 rpm을 다운받을 수 있었습니다!
repotrack으로도 위와 동일하게 패키지가 없어 설치가 안된다는 에러 문구가 보일 경우에는
yum install [패키지 명] --downloadonly --downloaddir=[다운받을 경로]
로 설치해보세요!
'정리 > Linux' 카테고리의 다른 글
[CentOS 7] yum 설치 에러 - "Could not resolve host: mirrorlist.centos.org; Unknown error" (0) | 2024.07.08 |
---|---|
Docker run 실행 시 OCI runtime create failed 에러 (1) | 2022.08.18 |
Kafka-Manager(CMAK) 설치 및 연동하기 (0) | 2022.07.27 |
Nginx WebSocket Connection to failed (2) | 2021.11.17 |
Jenkins contextLoads() FALIED (0) | 2021.11.09 |