답변:
Keryx를 확인하십시오 . 오프라인 저장소 관리자입니다.
어떻게 작동합니까? 업데이트 및 새 프로그램 (종속성 포함)을 플래시 드라이브에 다운로드 할 수 있습니다 .
인터페이스는 시냅틱과 비슷하지만 pendrive에서 작동 합니다 (설치가 필요하지 않음). 불행히도, GUI에는 wxwidgets가 필요합니다. wxwidgets는 Ubuntu에 사전 설치되어 있지 않습니다 ( 여기 에서 크로스 플랫폼으로 설치 가능하며 여기 에서 Ubuntu 저장소로 설치할 수 있습니다 ). Ubuntu 시스템에만 소프트웨어를 설치할 수 있지만 Linux, Windows 또는 OS X에서 업데이트 또는 새 패키지를 다운로드 할 수 있습니다.
여기 에서 튜토리얼을 찾을 수 있습니다 .
또 다른 자세한 단계별 자습서는 이 답변에 있습니다.
런치 패드는 다운로드 가능한 파일 도 호스팅 합니다 .
스크린 샷 :
keryx
추가 개발과 개선이 분명히 필요하지만 여전히 문제없이 사용 하고 있습니다.
빠른 해킹은 설치를 위해 다운로드 한 모든 패키지를 자신의 컴퓨터에 복사하는 것입니다 ( 자세한 지침은 여기 참조 ). .deb 파일은에 저장된 /var/cache/apt/archives
다음 다른 컴퓨터에서 Synaptic을 시작 File -> Add Package Downloaded
하고 파일을 넣은 폴더를 선택 하고 검색하여 엽니 다 sudo dpkg -i DEB_PACKAGE_NAME
.
참고 :
이는 패키지 관리자가 설치 직후 패키지를 삭제하도록 설정되어 있지 않다고 가정합니다. 또한 동일한 버전의 Ubuntu (10.10, 12.04 등) 및 아키텍처 버전 (32b 또는 64b)을 실행한다고 가정합니다 .
DVD 저장소
최신 버그 수정 및 보안 패치를 사용하려면 이 자습서를 살펴보십시오. 이 자습서 에서는 고유 한 DVD 저장소 작성에 대해 다룹니다.
sudo apt-get update
이 실행할 수 없다면 이것은 잘 작동하지 않습니다, 새로운 시스템을 설정할 때 여전히 좋은 시간 절약 :)
/var/cache/apt/archives
두 번째 컨텐츠를 복사하면 ~ 250Mb 만 다운로드했습니다. 여전히 설치를 실행하려면 연결이 필요합니다.
apt-get update
복사하는 경우 필요하지 않습니다. /var/lib/apt/lists
이 디렉토리에는 다운로드 한 저장소 정보가 포함되어 있습니다 apt-get update
.
.deb
까지 내 usb
를 복사 했습니다 /var/cache/apt/archives
. 다른 컴퓨터에서는 USB 드라이브를 열고 .deb
Ubuntu GUI를 시작한 두 번 클릭 했습니다 Software Updater
. 쉬운 페기.
/var/cache/apt/archives
있는 패키지를 피할 수있는 방법이 있습니까?. 4.8GB를 요구하는 이유는 USB 드라이브가 4GB 인 너무 큰 것입니다.
USB 저장소
적당한 크기의 USB 스틱이 있다면 약 4-8Gb (또는 외장 하드 드라이브)를 가정하면 Ubuntu 저장소의 사용자 정의 사본을 설정하고 help.ubuntu의 AptGet / Offline / Repository 에서 다루는 것처럼 로컬 저장소로 구성 할 수 있습니다 .com.
실제 패키지 파일 (.deb 파일)을 얻으려면을 사용하는 것이 좋습니다 apt-mirror
.
apt-mirror
패키지는 전체 저장소의 30GB보다 작아야합니다 사용자 정의 거울을 만드는 데 도움이됩니다. 패키지를 설치하십시오 :
sudo apt-get install apt-mirror
구성 파일을 편집하십시오.
gksudo gedit /etc/apt-mirror/mirror.list
또는 우분투 14.04 이후
gksudo gedit /etc/apt/mirror.list
원하는 저장소 섹션 만 포함하십시오. 다음은 최신 버그 수정뿐만 아니라 4 개 섹션 (메인, 제한, 유니버스 및 멀티 버스) 모두에서 이진 .deb 파일을 복사하는 간단한 예입니다.
# apt-mirror configuration file
##
## The default configuration options (uncomment and change to override)
##
#
set base_path /tmp/ubuntumirror
#
## Repositories to copy from -
## use a mirror so you don't overload the main server!!!
# Lucid binaries - no source files
deb http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu lucid-updates main restricted universe multiverse
## Clean up older .deb files no longer in the archive
clean http://archive.ubuntu.com/ubuntu
소스없이 4 개 섹션 모두에 약 15Gb의 공간이 필요할 것으로 추측됩니다.
모든 .deb 파일의 경로를 지정했습니다. /tmp
하드 드라이브가 가득 차지 않도록 충분한 공간이 있는지 확인하십시오 (하드 드라이브가 가득 차서 컴퓨터가 정지 된 /tmp
경우 재부팅해야합니다).
기본 파일 만 원하면 구성 파일에서 제한된 유니버스 및 다중 유니버스 이름을 제거하십시오.
다른 아키텍처 (64 비트는 있지만 친구는 32 비트)를 사용하는 경우 mirror.list 구성 파일 의 시작 부분에 다음을 추가 하십시오.
set defaultarch i386
apt-mirror
원하는 구성 을 갖추 apt-mirror
었다면 저장소를 가져 오는 데 몇 시간 또는 며칠이 걸리므로 (실행중인 Ubuntu 미러 및 사용중인 Ubuntu 미러에 따라) 재미 있고 삶의 변화를 실행하십시오.
.deb 파일이 있으면 파일을 USB 메모리 스틱 (또는 외장 하드 드라이브)에 복사하고 앞에서 언급 한 기사에 따라 로컬 저장소를 설정하십시오.
친구에게 가져 가기 전에 작동하는지 테스트하십시오!
sudo apt-get install apt-mirror
Ubuntu 16.10 (Yakkety Yak), 데스크톱 에디션 / Rufus / USB 스틱 / 평가판 모드에서 바로 시도했을 때 " E: Unable to locate package apt-mirror
"를 받았습니다 . 인터넷 연결이에 의해 확인되었습니다 ping
.
sudo apt-get update
해도 문제가 해결되지 않았습니다.
"--print-uris"옵션과 함께 apt-get을 사용합니다. 또한 "-qq"를 추가하여 조용히하였습니다.
sed를 사용하여 일부 파일 이름에 추가 된 추가 문자 (3 % 2a와 같은 것)를 제거하고 파일의 URL, 파일 이름 및 md5sum을 가져옵니다. wget을 사용하여 파일을 다운로드하십시오. md5sum을 사용하여 파일이 제대로 다운로드되었는지 확인하십시오.
이것을 사용하여 Linux 또는 Mac OS 용 셸 스크립트를 만들 수 있습니다 (.sh의 명령에서 ".cmd"를 대체하고 "chmod a + x (파일 이름)를 사용하여 스크립트 실행 권한을 추가)) 또는 Windows 명령 배치 파일 및 MD5Sum 파일을 사용하여 파일이 올바르게 다운로드되었는지 확인하십시오.
스크립트 작성 :
sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd
예 :
sudo apt-get install anjuta --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install-anjuta.cmd
sudo apt-get upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > upgrade.cmd
sudo apt-get dist-upgrade --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > dist-upgrade.cmd
md5sum 파일을 작성하십시오.
sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4 .\/\2/p" > md5sum.txt
예 :
sudo apt-get install anjuta --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4 .\/\2/p" > md5sum.txt
sudo apt-get upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4 .\/\2/p" > md5sum.txt
sudo apt-get dist-upgrade --print-uris -qq | sed -n -e "s/_[0-9]%[0-9a-f][0-9a-f]/_/" -e "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/\4 .\/\2/p" > md5sum.txt
해당 운영 체제를 사용하여 파일을 다운로드하는 경우 Windows 용 md5sum이 필요합니다.
저장소 목록을 다운로드하는 스크립트를 작성하십시오.
sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd
md5sum을 확인하기 위해 스크립트 끝에 추가 할 수 있습니다.
리눅스 :
md5sum --quiet -c md5sum.txt
Windows (이전 md5sum을 사용하고 --quiet을 지원하지 않음) :
md5sum -c md5sum.txt
스크립트에 자동으로 추가하려면
echo -e "md5sum -c md5sum.txt\npause" >> script.cmd
대상 컴퓨터에서이 명령을 실행하십시오.
저장소 목록 파일을 추출하려면 bunzip2를 사용해야합니다.
bunzip2 *.bz2
그런 다음 리스팅 폴더로 복사하십시오 (현재 폴더에는리스트 파일 만 포함됨).
sudo cp * /var/lib/apt/lists/
위의 결합 (현재 폴더에는 다른 파일이 포함될 수 있음) :
for listfile in `ls *.bz2`; do bunzip2 $listfile; sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done
파일을 더 빨리 다운로드하려면 Axel을 사용해보십시오.
교체 wget -c ... -O ...
와 함께 axel ... -o ...
.
나는 보통 다음과 같은 폴더를 만듭니다.
다음 변경 wget
위의 라인 ..\\bin\\wget.exe
, md5sum
행 ..\\bin\\md5sum.exe
등
* .deb 파일과 목록 파일이 다른 폴더로 분리됩니다.
sudo cp *.deb /var/cache/apt/archives/
sudo apt-get upgrade
또는sudo apt-get dist-upgrade
Windows 용 Wget : http://gnuwin32.sourceforge.net/packages/wget.htm
Windows 용 md5sum : http://gnuwin32.sourceforge.net/packages/coreutils.htm 또는 http://www.etree.org/cgi-bin/counter.cgi/software/md5sum.exe
내가 사용하는 MinGW 의 것을 사용할 수도 있습니다. wget.exe, md5sum.exe 및 필요한 공유 라이브러리 만 있으면됩니다. "폴더 계층"섹션을 확인하십시오.
-qq
의 모든 출력을 억제하는 옵션이 나타납니다 apt-get update
. 나는 당신이 정말로이 옵션을 원하지 않는다고 가정합니다.
필요한 .deb 파일을 다운로드 할 수있는 인터넷에 연결된 PC를 먼저 확보해야합니다. 모든 파일을 다운로드 한 후에는 오프라인 PC에 다운로드 한 소프트웨어를 설치하는 데 사용할 수있는 CD / DVD ROM 또는 ISO 파일을 만들 수 있습니다.
새로 설치 또는 VM으로 시작하십시오.
sudo apt-get install aptoncd
하나의 PC에 원하는 패키지 설치
sudo apt-get install gbrainy
aptoncd 실행
만들기를 클릭
굽기를 클릭하고 설정 옵션은 다음 적용
을 제작하거나 저장
aptoncd는 현재 apt-cache의 항목 만 백업합니다.
그렇기 때문에 클린 VM / 새 설치로 시작하여이 모든 작업을 한 번에 수행했습니다.
오프라인 저장소를 작성하는 방법은 여기 에 설명되어 있습니다 . archive.ubuntu.com 에서 적절한 파일을 다운로드하기 만하면 됩니다. 또는을 사용할 수 있습니다 apt-medium
.
편집 : *.deb
파일 의 로컬 아카이브를 기반으로 한 다른 접근 방식 은 다른 블로그 항목에 설명되어 있습니다 ( here 및 here 참조 ). Sarath Chandra 는 다음과 같이 요약합니다.
디렉토리에 접근 가능하게 만들기 (루트별로)
sudo mkdir /var/my-local-repo
모든 deb 파일을이 디렉토리에 복사하십시오.
디렉토리를
sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
또는
sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
소스에 로컬 저장소 추가
echo "deb file:/var/my-local-repo ./" > /tmp/my-local.list
sudo mv /tmp/my-local.list /etc/apt/sources.list.d/my-local.list
sudo apt-get update
1 단계 : 파일로 다운로드 URL 가져 오기 :
패키지 이름을 공백으로 구분하여 필요한 이름으로 바꾸어 다음 명령을 실행하십시오.
apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls
2 단계 :이 파일 (apturls)을 고속 인터넷 액세스가 가능한 시스템에 복사하고 다음 명령을 실행하여 패키지를 다운로드하십시오.
wget -i path-to-apturls-file
3 단계 : 이제 다운로드 한 패키지를 컴퓨터로 가져 와서 다음을 사용하여 설치하십시오.
cd path-to-the-downloaded-packages-directory
sudo dpkg -i *.deb
끝난!
--print-uris
시스템에 이미 설치된 종속성도 인쇄 합니까 ?
Cube 를 사용할 수 있습니다 . 인터넷에 연결된 다른 컴퓨터에서 패키지를 다운로드하여 원래 Linux 컴퓨터에 오프라인으로 다시 설치할 수있는 휴대용 패키지 관리자입니다.
앱 다운로드 (Windows)
앱 설치 (Linux)
Cube 의 웹 사이트 에서 다운로드 할 수 있습니다 .
시냅틱에서는 설치하려는 패키지를 선택할 수 있으며 첫 번째 메뉴에는 다른 컴퓨터로 가져 가서 실행할 수있는 스크립트를 생성하는 옵션이 있습니다. 이 스크립트는 컴퓨터에서 실행 당신은 당신이 원하는 (및 그 종속) 것을 지정 (예 : "다운로드") 모든 패키지 "은 wget"것이다 않는 인터넷 접속이 있습니다.
일단 실행되면 연결이 끊긴 컴퓨터에 필요한 모든 패키지 파일이 생깁니다. CD / USB 스틱에 넣고 운반하여 설치하십시오 sudo dpkg -i *.deb
.
curl
/ wget
복사본 ...
당신은 사용할 수 있습니다 apt-offline
또는 apt-offline-gui
.
사전 요구 사항 : 인터넷에 연결된 친구의 시스템. 두 시스템 모두에 설치된 apt-offline.
오프라인 설치는 간단한 3 단계로 수행됩니다.
1 단계 :
집
apt-offline set /tmp/apt-offline.sig
의 연결이 끊긴 데비안 상자에 서명 파일 생성 위 명령은 데이터베이스 업데이트에 필요한 모든 정보를 생성합니다.
2 단계 :
이전에 생성 된 서명 파일을 기반으로 데이터 다운로드
apt-offline get C:\apt-offline.sig --threads 5
위 명령은 서명 파일에 언급 된대로 데이터를 다운로드합니다. 다운로드 속도를 높이기 위해 (여러 개의 적절한 리포지토리에서 제공 될 수 있음)이 예에서는 5 개의 다운로드 스레드를 생성합니다.
완료되면 데이터 (--bundle 옵션을 사용한 경우 아카이브 파일)를 이동식 매체로 다시 복사하여 오프라인 호스트로 다시 복사하면됩니다.
3 단계 :
홈 데비안 머신으로 돌아 오면 이동식 매체에서 적절한 오프라인으로 데이터를 공급합니다
apt-offline install /media/USB/apt-offline.zip
. 연결이 끊긴 머신의 APT 데이터베이스가 완벽하게 업데이트됩니다.
Apt-offline은 Windows 시스템에서도 사용할 수 있습니다. 제 생각에는 apt-offline
오프라인 설치에 가장 적합한 옵션입니다.
위에 나열된 몇 가지 훌륭하고 효과적인 답변이 있습니다. 그러나 이것이 개인적으로 사용하는 메커니즘 인 apt-ftparchive 입니다. 나중에 다시 필요할 경우를 대비하여 여기에 문서화하고 있습니다. 아마도 당신에게 도움이 될 것입니다.
아카이브 스냅 샷 생성
sudo apt-get clean
sudo apt-get update
sudo apt-get dist-upgrade --download-only
sudo apt-get install --download-only byobu run-one bikeshed dotdee powernap
sudo apt-get install apt-utils
(cd /var/cache/apt/archives/ && sudo apt-ftparchive packages . ) | sudo tee /var/cache/apt/archives/Packages
sudo tar cvf snapshot.tar -C /var/cache/apt archives/
오프라인 대상 시스템에서 아카이브 스냅 샷 사용
tar xvf snapshot.tar
echo "deb file:/home/ubuntu/archives /" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
sudo apt-get install byobu run-one bikeshed dotdee powernap
오프라인 설치의 경우 패키지가 필요합니다. 데비안 시스템을 사용하는 경우
.deb
파일 확장자를 가진 패키지 파일 dpkg -i package_name
을 받아서 설치하십시오 .tar.gz
또는 .tar.bz2
파일 확장자를 가진 소스 tarball을 가져온 후 다음을 사용하여 압축을 풀고 설치하십시오.
tar -zxvf your_pack.tar.gz` or tar `-jxvf your_pack.tar.bz2
make
sudo make install
make clean (optional, and may prevent uninstallation)
종속성에 문제가있을 수 있습니다. 성공적인 오프라인 설치를 위해서는 모든 것을 먼저 설치해야합니다.
예. DVD iso를 다운로드하여 DVD에 굽고 DVD에서 소프트웨어를 설치할 수 있습니다. 여기를 참조하십시오 CD 및 DVD는 온라인 아카이브와 같은 방법으로 관리자를 포장하는 소스로 제공 될 수있다.
오프라인 패키지 설치 전에 가장 먼저 할 일은 필요한 리포지토리 / 리포지토리를 업데이트하는 것입니다. 업데이트 된 메인 리포지토리 (무료 및 공식적으로 지원되는 소프트웨어 용) 를 반드시 확인해야합니다 .
설치하려는 응용 프로그램은 Universe (무료이지만 공식 지원은 없음), Restricted (비공식, 공식 지원) 또는 Multiverse (비공식 , 비공식 지원) 리포지토리와 같은 다른 리포지토리에있을 수 있습니다. . 따라서이 중 하나 이상을 원할 수도 있습니다.
프로세스의 첫 번째 단계는 업데이트 된 오프라인 저장소를 빌드하는 것입니다. 그런 다음 "다운로드"목록을 생성하고 다운로드 한 다음 마지막으로 설치합니다. 여기에 당신이 일을 끝낼 방법은 다음과 같습니다 소스
URL을 입력 : http://archive.ubuntu.com/ubuntu/dists/ suiteCodename 곳 suiteCodename가 적절하게 substituded해야 말을 정밀 [우분투 12.04 (정확한 천산갑)에 대한 utopic 우분투 14.10 (Utopic 유니콘)에 대한] 당신이 거라고 그렇게 이제 http://archive.ubuntu.com/ubuntu/dists/precise/ 또는 귀하가 보유한 제품군과 관련된 기타 항목에 있습니다.
파일 다운로드 자료 , Release.gpg 및 내용 -. ???? GZ의 파일을 당신의 아키텍처 (예 : 내용 - i386.gz , 아키텍처 I386을 가정하고). 이 세 파일을 suiteCodename ( Precise Pangolin의 정확한 이름)의 이름을 가진 디렉토리 / 폴더에 저장하십시오 .
다음으로 원하는 각 리포지토리 ( Main, Universe, Restricted, Multiverse 중)마다 다음을 수행해야합니다 .
에이. 대상 리포지토리 디렉토리로 이동하십시오 (예 : main 다음 아키텍처 디렉토리로. 예. 바이너리 -i386 을 사용하면 http://archive.ubuntu.com/ubuntu/dists/suiteCodename/repositoryName/binary-????/에 있게됩니다.
비. Packages.bz2, Packages.gz, Release 컨텐츠를 다운로드하여 repositoryName의 이름을 딴 디렉토리에 저장하십시오 (예 : 주 및 이전에 만든에서이 디렉토리를 배치 suiteCodename의 디렉토리.
씨. 반복 a. 그리고 b. 원하는 각 리포지토리에 대해
마지막으로 다음과 같은 구조가 있어야합니다.
precise ├── Contents-i386.gz ├── main │ └── binary-i386 │ ├── Packages.bz2 │ ├── Packages.gz │ └── Release.txt ├── Release.gpg ├── Release.txt └── universe └── binary-i386 ├── Packages.bz2 ├── Packages.gz └── Release.txt
(suiteCodename = 정확한 것으로 가정하면 아키텍처는 i386이며 기본 및 유니버스 리포지토리가 필요합니다)
다음으로 업데이트 된 리포지토리를 다운로드 한 후 다운로드 한 파일을 대상 오프라인 컴퓨터의 디렉토리에 적절한 구조 (위 그림 참조)로 배열합니다. 디렉토리 구조 precise
를 사용자 홈 ( ) 또는 다른 곳의 offlineRepository / dists / precise 폴더에 저장하십시오 ( 터미널 또는 Nautilus 파일 관리자에서 sudo 권한을 사용하여 시작 ; 또한 복사 된 구조에 대한 올바른 권한이 있는지 확인하십시오) . 그러면 오프라인 저장소 정보를 사용할 수 있습니다.~/offlineRepository/dists/precise
/home/offlineRepository/dists/precise
gksu nautilus
소스 목록 에 로컬 저장소를 추가 하십시오 . 로 우분투 소프트웨어 센터 로 이동 > 소프트웨어 소스 ... - -> 기타 소프트웨어 - 편집> 추가 ... APT 라인의 필드에 다음과 추가 : deb file:///home/offlineRepository precise main universe
클릭 소스를 추가합니다 . 디렉토리 / 파일 구조 및 제품군에 대한 행을 수정해야합니다. 그런 다음 패키지를 다시로드하거나 sudo apt-get update
터미널에서 실행하십시오 .
이제 업데이트 된 (그리고 아마도 새로 추가 된 리포지토리도) 패키지 및 종속성에 대한 URL 목록을 덤프 할 수 있습니다.
이전 askUbuntu 게시물 중 하나에서 다음 코드 줄을 빌 렸습니다.
sudo apt-get install packageName --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
예. Synaptic Package Manager를 설치하려면 :
sudo apt-get install synaptic --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
(유사한 방법으로 업데이트 목록을 생성 할 수도 있습니다.)
생성 된 목록을 사용하여 온라인 컴퓨터에서 패키지 및 전체 종속성을 다운로드 할 수 있습니다. 일부 다운로드 관리자에서 일괄 다운로드 용 목록을 다운로드하거나 사용하는 스크립트를 작성하십시오. (또한 생성 된 텍스트 파일은 Unix / Linux 줄 끝을 사용하며 Windows로 변경하고 싶을 수도 있습니다.) Synaptic Package Manager 가 우분투에서 기본 응용 프로그램이었을 때 더 쉬운 방법이 있었습니다.
마지막으로 대상 시스템에서 dpkg
다른 방법을 사용하거나 다른 방법으로 패키지를 설치할 수 있습니다 .
위의 설명 외에도 다음 구조가 아이디어를 제공해야합니다.
/opt/offlineRepoList/ └── dists ├── precise │ ├── Contents-i386.gz │ ├── main │ │ └── binary-i386 │ │ ├── Packages.bz2 │ │ ├── Packages.gz │ │ └── Release.txt │ ├── Release.gpg │ ├── Release.txt │ └── universe │ └── binary-i386 │ ├── Packages.bz2 │ ├── Packages.gz │ └── Release.txt ├── precise-security │ ├── Contents-i386.gz │ ├── main │ │ └── binary-i386 │ │ ├── Packages.bz2 │ │ ├── Packages.gz │ │ └── Release │ ├── Release │ ├── Release.gpg │ └── universe │ └── binary-i386 │ ├── Packages.bz2 │ ├── Packages.gz │ └── Release └── precise-updates ├── Contents-i386.gz ├── main │ └── binary-i386 │ ├── Packages.bz2 │ ├── Packages.gz │ └── Release ├── Release ├── Release.gpg └── universe └── binary-i386 ├── Packages.bz2 ├── Packages.gz └── Release
여기에 대한 답변을 찾은 후 : 인터넷 (오프라인)없이 소프트웨어 또는 패키지를 설치하려면 어떻게해야합니까? Arnel A. Borja의이 코드가 가장 유용하다는 것을 알았습니다.
sudo apt-get install PACKAGE --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh
어쨌든 완전한 초보자를위한 몇 가지 지침이 있습니다. 도움이 되길 바랍니다.
cd FOLDERNAME
(예 :cd Desktop
)
팁 : 사용할 수있는dir
폴더를 나열하는 명령을 사용합니다.
Synaptic Package Manager
sudo apt-get install synaptic --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh
를 다운로드하는 예제 코드 : VLC 플레이어를 다운로드하는 예제 코드 :
sudo apt-get install vlc --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh
sh install.sh
sudo dpkg -i *.deb
또는 Synaptics와 같은 프로그램을 사용하여 패키지를 설치할 수 있습니다. (Synaptics : File-다운로드 한 패키지 추가)
또는 파일을 두 번 클릭해도됩니다. 우분투 소프트웨어 센터가 열립니다. 소프트웨어 센터가로드되면 설치 버튼을 누릅니다. 폴더의 모든 파일이 설치 될 때까지이 과정을 반복하십시오.
우분투 패키지 웹 사이트를 구문 분석하여 종속성 트리를 찾고 필요한 모든 패키지를 다운로드하고 체크섬 확인을 수행하는 Windows에서 실행할 수있는 작은 파이썬 스크립트가 있습니다.
이것은 분명히 필요한 것보다 많은 것을 다운로드 할 수는 있지만 가장 간단한 해결책이었습니다.
https://gist.github.com/Zitrax/2bad212a3b0571357e1b
그런 다음 다운로드 한 모든 패키지를로 설치할 수 있습니다 dpkg -i E pkg\*
. 이미 설치된 패키지를 다시 설치하지 않아도됩니다.
용법:
usage: ubuntu-deps.py [-h] [-a ARCH] [-r RELEASE] [-m MIRROR] [-f FALLBACK] [-d DIRECTORY] dep [dep ...]
Download ubuntu dependencies
positional arguments:
dep The main/top package
optional arguments:
-h, --help show this help message and exit
-a ARCH, --arch ARCH The architecture to use (default: amd64)
-r RELEASE, --release RELEASE Ubuntu release (default: trusty)
-m MIRROR, --mirror MIRROR Mirror to use for download (default: http://no.archive.ubuntu.com/)
-f FALLBACK, --fallback FALLBACK Mirror to use when main mirror is not found (default:
http://security.ubuntu.com/)
-d DIRECTORY, --directory DIRECTORY Target directory (default: pkg)
항상 오프라인 상태로 유지되는 시스템의 경우 일반적으로 다른 답변 중 일부에 제시된 강력한 오프라인 패키지 관리 방법 중 하나를 사용하는 것이 가장 좋습니다. 소수의 패키지를 한 번만 설치하는 것이 아니라 이미 설치된 패키지를 최신 상태로 유지하는 데 도움이되기 때문입니다.
그러나 인터넷에 연결되어 있지 않은 시스템에 패키지를 신속하게 설치하고 다른 컴퓨터에 패키지를 다운로드하여 가져올 수있는 격리 된 경우에는 그렇게 할 수 있습니다. 주된 문제는 패키지에 의존하는 다른 패키지가 있기 때문에 필요한 패키지를 결정하는 것이므로 패키지를 설치하기 전이나 패키지와 동시에 설치해야합니다.
이 답변은 Ubuntu 14.04 의 중복 질문 g ++에서 동기 부여되며 g++
핵심 예제 로 설치 해야하는 경우를 사용합니다 .
필자는이 방법을 필요한 보안 업데이트를 자동으로 결정하고 설치하는 데 도움이되는 대안으로 장기적으로 사용해서는 안된다고 강조합니다. 네트워크에 연결하지 않으면 공격 가능성이 상당히 줄어들지 만 일부 보안 버그는 모든 소스의 데이터를 통해 악용 될 수 있습니다.
이 방법은 복잡해 보일 수 있지만 일반적으로 몇 분 밖에 걸리지 않습니다. 종속성이 많은 패키지의 경우 시간이 더 걸릴 수 있습니다. 매우 많은 종속성 (예 : ubuntu-desktop
최소 시스템) 을 가져 오는 메타 패키지를 설치 하는 데 필요한 모든 .deb 파일을 다운로드하는 데 시간이 더 오래 걸릴 수 있으며이 방법이 적합하지 않을 수 있습니다.
설치를 시뮬레이션하여 패키지의 종속성을 충족시키는 데 필요한 다른 패키지를 결정할 수 있습니다. 통과 -s
에 플래그를 apt-get
( 전에 어떤 작업을 지정) 수행이.
apt-get -s install g++
sudo
이것은 시뮬레이션 일 뿐이므로 루트 권한이 필요하지 않으므로 생략 했습니다.
실제로 패키지를 빌드하는 데 가장 일반적인 도구를 모두 설치하려는 경우 다음을 g++
선호 할 수 있습니다.
apt-get -s install build-essential
출력 (for g++
)은 다음과 같습니다.
NOTE: This is only a simulation!
apt-get needs root privileges for real execution.
Keep also in mind that locking is deactivated,
so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
g++-4.8 libstdc++-4.8-dev
Suggested packages:
g++-multilib g++-4.8-multilib gcc-4.8-doc libstdc++6-4.8-dbg
libstdc++-4.8-doc
The following NEW packages will be installed:
g++ g++-4.8 libstdc++-4.8-dev
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Inst libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Inst g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Inst g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [amd64])
Conf libstdc++-4.8-dev (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Conf g++-4.8 (4.8.2-19ubuntu1 Ubuntu:14.04/trusty [amd64])
Conf g++ (4:4.8.2-1ubuntu6 Ubuntu:14.04/trusty [amd64])
이것은 설치하는 것을 말한다 g++
내 시스템에, 나는 패키지가 필요합니다 g++
, g++-4.8
하고 libstdc++-4.8-dev
.
시뮬레이션 결과에 따라가는 것은 단순히 패키지의 의존성을 찾는 것보다 (또는 필요한 것이 위와 같다고 가정 할 때) 더 낫습니다.
필요한 패키지를 알고 나면 다운로드 할 수 있습니다. 다운로드는 SSL로 암호화되어 파일 손상을 방지하는 데 도움이되므로 Launchpad를 사용하는 것이 좋습니다.
apt-get
디지털 서명 된 해시 목록에 대해 해시가 확인되므로 패키지를 소프트웨어 센터 또는 Software Center 와 함께 정상적으로 설치하는 데 HTTPS가 필요하지 않습니다. 이러한 패키지를 패키지 캐시에 넣고 apt-get
설치하는 데 사용하면 그 결과가 발생합니다.dpkg -i
에는 완료되지 않습니다.https://launchpad.net/ubuntu의 패키지 에 패키지 이름을 입력하고 "패키지 찾기"를 클릭하여 패키지 를 검색 할 수 있습니다 . 예를 들어 검색 하면 gcc-4.8 소스 패키지 페이지가 나타납니다 .g++-4.8
그런 다음 Ubuntu 릴리스의 코드 이름으로 스크롤하십시오. 14.04를 실행 중이므로 Trusty Tahr입니다. 모든 우분투 릴리스의 코드 명은 릴리스 위키 페이지에 나와 있습니다. 오른쪽을 가리키는 삼각형을 클릭하여 패키지 다운로드를 봅니다.
일부 패키지의 경우 둘 이상의 포켓 에서 다운로드 목록을 확장 할 수 있습니다 . 당신은 볼 수 있습니다 :
예를 들어, 14.04의 Firefox에서 사용할 수있는 기능은 다음과 같습니다.
일반적으로 패키지는 보안 또는 업데이트가 있으면 패키지로 제공되고 그렇지 않은 경우에는 릴리스로 패키지를 제공 합니다.
패키지 목록을 확장하면 .deb
아키텍처 파일을 찾으십시오 . 뎁의 이름은 입니다. 가장 일반적인 아키텍처는 다음과 같습니다.name_version_architecture.deb
amd64
Intel 및 AMD 프로세서 모두에 해당)i386
)예를 들어 g++-4.8
64 비트 버전의 Ubuntu 용 패키지 를 얻으려면을 다운로드하십시오 g++-4.8_4.8.4-1ubuntu15_amd64.deb
.
당신이 검색 패키지가있는 경우 같은 버전apt-get
의 install
작업을 자동으로 검색하고 (시스템이 네트워크에 연결 한 경우) 설치 한 것은, 당신은에 패키지를 넣을 수 있습니다 /var/cache/apt/archives
단순히 그 명령을 실행합니다 :
sudo apt-get install g++
이 시스템이 인터넷에 연결 되지 않은 경우 검색 한 모든 패키지가 릴리스 포켓 에서 나온 것일 수 있습니다 . 시스템이 인터넷에 연결되어 있는지 여부에 관계없이 Launchpad에 다른 주머니에 패키지가 표시되지 않은 경우에도 마찬가지입니다. (알파 또는 베타 시스템을 설치하고 업데이트하지 않은 경우가 아닐 수도 있습니다.)
설치의 특정 경우에는 g++
사용 apt-get
합니다.
작동하지 않거나 작동하지 않을 것으로 예상되는 경우 패키지를 빈 폴더에 넣고 실행하여 패키지를 설치하십시오.
sudo dpkg -Ri /path/to/folder
또는 패키지 이름을 개별적으로 지정할 수 있습니다. 이 예제는 패키지가 현재 디렉토리에 있다고 가정합니다 (즉, 패키지가 포함 된 디렉토리로 갔다고 가정 cd
).
sudo dpkg -i package1.deb package2.deb ...
설치되는 패키지의 수가 매우 작은 경우를 제외 하고 당신은 그들이 의존성이 만족을 위해 설치해야하는 정확한 순서를 알고, 수동 개별적으로 각 패키지를 설치하는 것보다 이러한 방법을 사용하는 것이 훨씬 더 효율적입니다.
또 다른 가능성은 remastersys를 사용하는 것입니다. 이 도구를 사용하면 자신의 시스템에서 ISO 이미지를 만들 수 있으며 unetbootin을 통해 부팅 가능한 USB 스틱을 만든 후 원하는 수의 컴퓨터에 사용자 지정 시스템을 설치할 수 있습니다.
몇 가지 간단한 제안이 있습니다. 도서관에 갈 수 있습니다. 컴퓨터 섹션에서 원하는 운영 체제를 찾으십시오. 일부 책에는 DVD가 들어 있습니다. 또한 최신 운영 체제를 원한다면이 웹 사이트를 방문하여 명목상의 비용으로 DVD를 구입할 수 있습니다. www.ubuntu.com/download/desktop.
이 질문은 약간 오래되었으므로 현재 답변이 중복 될 수 있지만 dpkg-offline을 사용해보십시오 . bzr을 설치 한 후 :
bzr branch lp:dpkg-offline
튜토리얼과 readme 파일이 포함되어 있습니다.
시스템이 12.04 i386 인 경우에도 Ubuntu 14.04 amd64 시스템에 git을 설치한다고 가정하면 다음을 수행 할 수 있습니다.
dpkg-offline ubuntu-14.04-desktop-amd64.iso git
apt-get
패키지를 설치 하는 데 사용할 수 있습니다 .dpkg-offline은 10.04 이상의 Ubuntu 데스크탑 버전 (이전 버전에서는 테스트하지 않았지만 작동 해야 함) 및 12.10 이상의 Ubuntu 서버 버전에서 작동합니다. 또한 호스트 아키텍처와 상관없이 amd64, i386 및 armhf 이미지와 함께 작동해야합니다. 다시 말하지만, arm64 또는 powerpc / ppc64el로 테스트하지 않았지만 작동 할 수도 있습니다.
면책 조항 : 나는 dpkg-offline을 썼습니다.
일부 패키지는 설치 USB 스틱에 설치됩니다. 제거 network-manager
하고 다시 설치 하고 싶습니다.
따라서 (Lubuntu 17.10)에서 운영 체제를 설치 한 스틱을 얻었습니다. 그것은이었다/dev/sdb
스틱을 경로에 장착하십시오 ( /tmp/mnt
필자의 경우).
mkdir /tmp/mnt
sudo mount /dev/sdb1 /tmp/mnt
그런 다음 /etc/apt/sources.list
포함하도록 편집
deb file:///tmp/mnt/ main universe
그런 다음
sudo apt-get update
그리고 설치할 수 있습니다 network-manager
.
참고 : 이것은 위의 질문에 대한 대답이 아니라이 질문을 찾을 때의 질문에 대한 대답 일 수 있습니다.
sources.list
다음 복원해야합니다.