인터넷에 연결된 시스템이 아닌 우분투 서버에 net-tools를 설치하는 방법을 모르고 어떤 이유로든 설치하고 싶지 않습니다.
일시적으로 호스트로만 설정된 가상 머신입니다.
다음과 같이 .deb 패키지를 전송하는 방법이 있습니까?https://debian.pkgs.org/11/debian-main-arm64/net-tools_1.60+git20181103.0eebece-1_arm64.deb.html
내 가상 머신으로 가서 sudo dpkg -i packet_name
인터넷을 전혀 사용하지 않고 설치를 실행하시겠습니까?
답변1
물론 파일을 가상 머신에 복사한 scp
다음(ssh가 작동하는 경우) 설치할 수 있습니다.
문제는 패키지에 종속성이 있는데 이를 복사하지 않는다는 것입니다.
두 가지 옵션:
1. 필요한 소프트웨어로 새 가상 머신을 구성합니다.
첫 번째 옵션도 제가 추천하는 옵션입니다.
VM은 일반적으로제공한, 배포하고 다시는 건드리지 마세요. 선호하는 구성 도구를 사용하여 필요한 모든 소프트웨어가 포함된 가상 머신을 얻은 다음 여기에 특정 구성을 추가하기만 하면 됩니다. 가장 큰 장점은 모든 소프트웨어를 설정하는 작업을 모두 온라인으로 수행한 다음, 인터넷에 연결된 컴퓨터에 있어서는 안 되는 모든 항목을 연결 해제하고 복사할 수 있다는 것입니다.
cloud-init
인기있는 도구입니다. 하지만 저는 개인적으로 주로 ansible
일반 가상 머신에서 사용합니다. 따라서 이 소프트웨어를 추가하는 것은 yaml 파일에 한 줄을 추가하는 것 이상으로 이루어지지 않습니다.
2. 사용apt-offline
apt-offline
원하는 소프트웨어를 설치하기 위해 설치해야 하는 패키지 목록을 준비한 다음 해당 목록을 인터넷 액세스가 가능한 머신으로 전송하고, 필요한 패키지를 다운로드하고, 오프라인 가상 머신으로 다시 전송한 다음 설치할 수 있습니다 . 거기.
- apt-offline 설치: 다음으로 이동https://packages.ubuntu.com아키텍처에 적합한 .deb 파일을 다운로드합니다.
apt-offline
(특별한 종속성이 없으므로 그냥 필요합니다.) - scp를 사용하여 deb 파일을 오프라인 서버에 복사
sudo dpkg -i apt-offline*something.deb
서버에서- 패키지 인덱스 업데이트 요청을 생성한 후 오프라인 시스템에 패키지를 설치합니다.
sudo apt-offline set --install-packages PACKAGENAME --update apt-offline.sig
- apt-offline.sig 파일을 온라인 컴퓨터에 복사하세요.
- 온라인 머신에서 다음 요청을 실행합니다.
apt-offline get --bundle bundle.zip apt-offline.sig
- Bundle.zip을 오프라인 컴퓨터에 복사하세요.
- 오프라인 머신
sudo apt-offline install bundle.zip
에서 - 마지막으로 오프라인 컴퓨터에 패키지를 설치할 수 있습니다
sudo apt install PACKAGENAME
.