[Ubuntu] 우분투 의존성 패키지 한번에 다운로드
- Operating System/Linux
- 2024. 3. 6.
■ 배경
보통 폐쇄망이나 기타 인터넷 접속이 안되는 곳에서 특정 패키지를 설치할때 의존성때문에 설치가 안되는 경우가 있습니다. 또한 apt도 지원이 안되기 때문에 당연히 외부에서 패키지를 가져와야 합니다. 이럴때 사용하는 방법입니다.
■ 명령어
해당 명령어는 다음과 같습니다.
$ sudo apt-get reinstall --download-only -y [패키지명]
reinstall 외에 install이란 명령어도 있습니다. 그런데 굳이 reinstall을 쓰는 이유는 다음과 같습니다.
a라는 패키지를 특정 서버에서 다운로드 하게되면 현재 서버에 설치되어 있는 의존성 패키지는 제외하고 기존에 없는 의존성 패키지만을 다운로드 하게 됩니다. 즉 d라는 패키지를 다운로드 할때 a라는 의존성 패키지가 위의 명령을 실행하는 서버에 설치가 되어 있다면 b,c,d만을 다운로드 하게 됩니다. 이 다운로드 받은 패키지를 가지고 폐쇄망에 설치된 서버에 설치하려고 하면 a라는 의존성 패키지가 없기 때문에 설치 진행이 안되게 됩니다. reinstall은 처음부터 필요한 패키지를 모두 다운로드 받기 때문에 폐쇄망에 설치지 더 유용한 방법이라 할 수 있습니다.
■ 패키지 다운로드 경로
다운로드 경로 : /var/cache/apt/archives/*.deb
파일 삭제 명령어 : sudo rm -f /var/cache/apt/archives/*.deb
패키지의 다운로드 경로는 위와 같습니다. archive디렉토리를 모두 압축하여 옮겨 설치하면 됩니다.
■ 패키지 설치 명령어
dpkg -i /절대경로/*.deb
가능하면 절대경로를 사용해서 설치를 권고합니다. 의존성 설치시 경로를 못찾는 경우가 가끔 있는데 위의 절대경로를 이용해 설치하면 이상없이 설치가 됩니다.
'Operating System > Linux' 카테고리의 다른 글
[Linux] Port Forwarding - 포트 포워딩 (0) | 2024.08.15 |
---|---|
[Shell Script] Environment[Shebang-ENV] (0) | 2020.11.29 |
[Linux] CentOS, RHEL - EPEL (0) | 2020.09.15 |
[Linux] history - 이전 명령어 실행 방법 (0) | 2020.08.31 |
[Linux] grep, egrep, fgrep (0) | 2020.05.17 |