인터넷이 안되는 환경에서, 우분투의 패키지 설치 방법
일단 온라인이 되는 우분투 환경이 하나 필요하다.
그리고
1. 온라인/오프라인 환경에 모두 apt-offline 모듈을 설치한다.
온라인쪽은 단순히
on-line$ sudo apt install apt-offline
으로 설치하면 되지만, 오프라인쪽은 해당 패키지(deb) 를 다운받아서 설치해 줘야 한다.
https://pkgs.org/download/apt-offline
위의 사이트에 들어가서 자신의 버전에 맞는것 (18.04 는 Bionic Beaver) 을 다운받는다.
usb 또는 기타 저장 매체를 이용해 오프라인 우분투에 해당 파일을 복사해 주고,
패키지 인스톨러로 설치해 준다.
off-line$ sudo dpkg -I apt-offline_1.8.1_all.deb
혹시 의존성 때문에 설치가 실패하면, 해당파일들도 찾아서 같이 설치 해 준다.
2. 오프라인 쪽에 패키지 리스트 업데이트 및 전체 업그레이드를 진행한다.
우분투 설치후, 최신 패키지를 설치하기위해 update -> upgrade 를 했던것을 오프라인 우분투에도 해줘야 한다.
##업데이트 sig 파일 생성
off-line$ sudo apt-offline set apt-offline-update.sig --update
#오프라인 우분투에서 생성된 sig 파일을 온라인으로 옮긴후, 아래 커맨드 실행
on-line$ sudo apt-offline get apt-offline-update.sig --thread 5 --bundle apt-offline-update.zip
#생성된 zip 파일을 다시 오프라인으로 가져와서 아래 커맨드 실행
off-line$ sudo apt-offline install apt-offline-update.zip
#실제 업그레이드를 인스톨 하기위해 온/오프라인 을 오가며 다음아래로 진행
off-line$ sudo apt-offline set upgrade.sig --upgrade
on-line$ sudo apt-offline get upgrade.sig --thread 5 --bundle upgrade.zip
off-line$ sudo apt-offline install upgrade.zip
off-line$ sudo apt-get upgrade. #오프라인에 패키지 업그레이드 실제 시작!!
2번을 정기적으로 진행해서 오프라인에 있는 우분투의 패키지도 최신버전을 유지 할 수 있다!!
아래에서 이제 필요한 패키지를 선택해서 설치할 수 있다. 방법은 비슷하다.
3. 필요한 패키지들에 대한 sig 파일을 생성하여 온라인에서 다운받아 압축 후, 오프라인에 설치
--> git 서버를 설치하는 예제
#필요한 패키지를 인터넷 검색 또는 온라인 우분투에서 확인하고 메모 한다.
#오프라인 우분투에서 apt-offline 을 이용해 sig 파일을 생성한다.
off-line$ sudo apt-offline set install-20190119.sig --install-packages git gitweb apache2 libapache2-mod-fcgid libcgi-session-perl
#온라인에서 다운받기 ( thread 는 다운받을 때 생기는 쓰레드 . 2정도가 적당함
on-line$ sudo apt-offline get install-20190119.sig --bundle install-20190119.zip --threads 2
#오프라인에서 해당 모듈 파일을 로컬 저장소에 복사
off-line$ sudo apt-offline install install-20190119.zip
#실제 설치
off-line$ sudo apt-get install git gitweb apache2 libapache2-mod-fcgid libcgi-session-perl