방금 인터넷 접속 없이 컴퓨터에 새로운 Waldorf(Debian Wheezy 기반 Crunchbang)를 설치했습니다. 이전에 Xubuntu 10.04 VM에서 소프트웨어가 필요할 때 내가 한 일은 다음과 같습니다.
- packages.ubuntu.com으로 이동하세요.
- 관련 패키지와 해당 종속성을 찾고, .deb를 다운로드하세요.
- 달리기
dpkg-scanpackages <download dir> /dev/null | gzip -9c > Packages.gz
- 실행
apt-get update
( 항목이 있는<download dir>
내 그림 은 다음과 같습니다 );/etc/apt/sources.list
deb file:<download dir> ./
- 달리기
apt-get install <top-package>
;- 충족되지 않은 종속성이 있는 경우(즉, packages.ubuntu.com에서 다운로드한 패키지가 너무 새롭고 내 시스템에 이미 존재하는 일부 패키지의 최신 버전에 의존하는 경우) launchpad.net으로 이동하여 이전 버전의 패키지를 찾으세요. ;
- 설치를 재개합니다.
이제 Debian Wheezy를 사용하면 packages.debian.org에서 .deb를 찾을 수 있지만 이러한 패키지에 설치된 패키지의 최신 버전이 필요할 때 문제가 시작됩니다. launchpad.net에 해당하는 데비안을 찾을 수 없습니다...
Ubuntu는 Debian을 기반으로 하기 때문에 launchpad.net에서 필요한 이전 .deb를 계속 찾을 수 있을 것이라고 생각했지만, 뭔가 잘못하고 있는 것 같다는 생각이 들기 시작했습니다. 그렇습니까? 인터넷에 접속할 수 없는 컴퓨터에 패키지를 설치하려면 실제로 어떻게 해야 합니까?
예를 들어 openjdk-6-jre를 설치하려고 합니다. 종속성 트리를 내려가면서 tzdata-java 및 libnss3-1d도 필요하다는 것을 발견했지만 apt-get
버전이 너무 느려서 packages.debian.org에 있는 .deb를 사용하여 설치할 수 없습니다 .
tzdata-java : Depends: tzdata (= 2014a-0wheezy1) but 2013b-2 is installed.
libnss3-1d : Depends: libnss3 (= 2:3.14.5-1) but 2:3.14.3-1 is installed.
("소스에서 컴파일하기" 전)
답변1
인터넷에 접속할 수 없는 컴퓨터에 패키지를 설치하려면 실제로 어떻게 해야 합니까?
인터넷 접속이 가능한 시스템에서 이러한 패키지를 다운로드하고 로컬 캐시를 설정하는 등의 방법이 필요한 것 같습니다.
이제 Debian Wheezy를 사용하면 packages.debian.org에서 .deb를 찾을 수 있지만 이러한 패키지에 설치된 패키지의 최신 버전이 필요할 때 문제가 시작됩니다. launchpad.net에 해당하는 데비안을 찾을 수 없습니다...
자, 여기에 문제가 있습니다. 첫째, Debian 기반 배포판의 패키지를 사용하고 이를 다른 Debian 기반 배포판에 설치하고 있습니다. 누구라도 후회하고 눈물을 흘리게 될 것이다.
시스템에 소프트웨어(특히 소프트웨어 패키지)를 설치할 때 해당 소프트웨어가 다음에서 제공되었는지 확인해야 합니다.동일한 소스. 소스를 혼합하기 시작하면 직면한 것과 같은 문제가 발생하고 두통이 생길 것입니다.
답변2
마침내 두 가지 해결책을 찾았습니다. 하나는 쉽고 위험하며, 두 번째는 똑같이 쉽고 덜 위험해야 합니다(확실하지 않으며 아직 시도하지 않았습니다). 많은 분들께 감사드립니다.크런치뱅 커뮤니티도와주세요.
위험한 솔루션
- pakages.debian.org에서 최신 Wheezy 패키지를 다운로드하여
local dir
; - 실행 중
apt-get upgrade
: apt는 다운로드한 패키지를 질문 없이 최신 패키지로 식별합니다. - 달리기
apt-get install <top-package>
.
이제 문제는 업그레이드된 패키지 자체가 시스템에 있는 다른 패키지의 업그레이드된 버전에 의존할 수 있다는 것인데, 이는 다운로드할 항목 목록이 임의로 길어질 수 있다는 것을 의미합니다. 제 경우에는 libnss3과 tzdata를 다운로드하는 것만으로도 충분했습니다.
덜 위험한 솔루션
사용 apt-offline
. 연결이 끊어진 컴퓨터에서 소프트웨어는 인터넷 액세스가 가능한 두 번째 컴퓨터에서 가져올 종속성을 나타내는 서명을 작성합니다. 이 서명은 실제로 종속성을 다운로드하여 첫 번째 컴퓨터로 다시 전송하고 설치하는 데 사용됩니다.
나는 실제로 이 솔루션을 시도하지 않았으므로 위의 설명이 모호하게 보일 수 있습니다(관심 있는 사람이 있으면 Crunchbang의 사람들이 적절한 문서에 대한 링크를 게시했습니다).