Làm cách nào tôi có thể cài đặt phần mềm hoặc gói mà không có Internet (ngoại tuyến)?


Câu trả lời:


129

Kiểm tra Keryx ; đó là một trình quản lý kho lưu trữ ngoại tuyến.

Làm thế nào nó hoạt động? Nó cho phép bạn tải các bản cập nhật và chương trình mới (có phụ thuộc) vào ổ đĩa flash của bạn .

Giao diện của nó tương tự như synap, nhưng nó hoạt động từ một ổ đĩa (không cần cài đặt). Thật không may, GUI cần wxwidgets, không được cài đặt sẵn trên Ubuntu (chúng đa nền tảng và có thể cài đặt từ đây và kho lưu trữ Ubuntu ở đây ). Nó chỉ có thể cài đặt phần mềm trong hệ thống Ubuntu, nhưng bạn có thể tải xuống các bản cập nhật hoặc gói mới trong bất kỳ Linux, Windows hoặc OS X.

Ở đây bạn có thể tìm thấy một hướng dẫn .

Một hướng dẫn chi tiết từng bước khác là trong câu trả lời này .

Launchpad cũng lưu trữ các tập tin có thể tải xuống .

Ảnh chụp màn hình:

Chụp màn hình


12
keryx không còn được phát triển nữa, nếu bạn đang thử điều này trên phiên bản Ubuntu mới hơn, hãy sử dụng phiên bản di động để tự cứu mình khỏi những rắc rối của sự phụ thuộc.
Alex R

1
Tôi vẫn sử dụng keryxmà không gặp vấn đề gì, mặc dù rõ ràng nó cần phát triển và cải tiến hơn nữa.
Carnendil


Nếu máy tính ngoại tuyến khác không có gcc, g ++ thì sao? Nó là một Ubuntu mới được cài đặt. Làm cách nào tôi có thể cài đặt wxwidgets? Không có wxwidgets, nó phàn nàn về mô-đun bị thiếu ...
một đề nghị không thể từ chối

3
Tôi vừa mới phát hành một phiên bản mới của Keryx ( 0.92.5 ), có thể giải quyết một số vấn đề. Phiên bản được biên dịch sẽ chứa các phụ thuộc như wxWidgets và cho phép bạn chạy trên Windows mà không gặp vấn đề gì.
Michael Crenshaw

57

Hack nhanh

Cách hack nhanh là sao chép tất cả các gói bạn đã tải xuống để cài đặt vào máy của mình ( hướng dẫn chi tiết tại đây ). Các tệp .deb được lưu trữ /var/cache/apt/archives, sau đó trong máy tính khác khởi chạy Synaptic và chọn File -> Add Package Downloadedvà tìm kiếm thư mục bạn đã đặt các tệp và mở nó, chấp nhận tất cả (hoặc cài đặt từ thiết bị đầu cuối bằng lệnh sudo dpkg -i DEB_PACKAGE_NAME).

LƯU Ý:
Điều này giả định rằng trình quản lý gói của bạn không được thiết lập để xóa các gói ngay sau khi cài đặt. Nó cũng giả định rằng bạn đang chạy cùng một phiên bản Ubuntu (10.10, 12.04, v.v.) và phiên bản kiến ​​trúc (32b hoặc 64b) .


Một kho lưu trữ DVD

Nếu bạn muốn sửa lỗi mới nhất và các bản vá bảo mật có sẵn thì hãy xem hướng dẫn này , bao gồm việc tạo kho lưu trữ DVD của riêng bạn.


2
Nếu bạn không thể chạy sudo apt-get updatethì nó sẽ không hoạt động tốt, vẫn tiết kiệm thời gian tốt khi thiết lập một hệ thống mới :)
GM-Script-Writer-62850

Đồng ý, chỉ cần nâng cấp hai máy tính lên 13.10 từ ngày 13.04. Cái đầu tiên phải tải xuống ~ 1.8Gb, sao chép nội dung của /var/cache/apt/archivescái thứ hai khiến nó chỉ tải xuống ~ 250Mb. Tuy nhiên, bạn cần một kết nối để chạy cài đặt.
Maxime R.

apt-get updatekhông cần thiết nếu bạn sao chép /var/lib/apt/lists- thư mục này chứa thông tin kho lưu trữ được tải xuống bởi apt-get update.
ignis

Tôi đã sao chép của .debtôi usbtừ của tôi từ /var/cache/apt/archives. Trên máy tính khác, tôi chỉ mở ổ USB và nhấp đúp chuột vào cái .debđã khởi chạy GUI Ubuntu Software Updater. Dễ dàng pezy.
Jacksonkr

@ jr0cket: Có cách nào để tránh các gói trong thư mục /var/cache/apt/archivesnày đã có (sẵn có) khi cài đặt Debian không? Lý do tại sao tôi hỏi đây là 4,8 GB là quá lớn đối với ổ USB của tôi là 4 GB.
justin

42

Kho lưu trữ USB

Nếu bạn có một thanh USB có kích thước khá - giả sử khoảng 4-8Gb (hoặc ổ cứng ngoài), bạn có thể thiết lập một bản sao tùy chỉnh của kho lưu trữ Ubuntu và định cấu hình đó là kho lưu trữ cục bộ như được bao phủ trong AptGet / Offline / Rep Kho trên help.ubfox .com.

Để có được các tệp gói thực tế (các tệp .deb), tôi khuyên bạn nên sử dụng apt-mirror.

Các apt-mirrorgói phần mềm sẽ giúp bạn tạo một tấm gương tùy chỉnh mà nên nhỏ hơn so với 30GB của toàn bộ kho lưu trữ. Cài đặt gói:

sudo apt-get install apt-mirror

và chỉnh sửa tập tin cấu hình của nó

gksudo gedit /etc/apt-mirror/mirror.list

hoặc kể từ Ubuntu 14.04

gksudo gedit /etc/apt/mirror.list

Chỉ bao gồm các phần kho lưu trữ mà bạn muốn. Dưới đây là một ví dụ đơn giản sao chép các tệp .deb nhị phân từ tất cả 4 phần (chính, bị hạn chế, vũ trụ và đa vũ trụ) cũng như các bản sửa lỗi mới nhất.

# 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

Theo dự đoán, bạn sẽ cần khoảng 15Gb dung lượng cho cả 4 phần, không có nguồn.

Tôi đã đặt đường dẫn cho tất cả các tệp .deb /tmp, đảm bảo bạn có đủ dung lượng để ổ cứng của bạn không bị đầy (nếu ổ cứng của bạn bị đầy và máy tính của bạn bị đóng băng, /tmpnên được xóa bằng khởi động lại).

Nếu bạn chỉ muốn các tệp chính, hãy xóa các tên bị hạn chế, vũ trụ và đa vũ trụ khỏi tệp cấu hình.

Nếu bạn đang sử dụng một kiến ​​trúc khác (bạn có 64 bit, nhưng bạn của bạn có 32 bit) thì hãy thêm phần sau vào phần bắt đầu của tệp cấu hình mirror.list :

set defaultarch i386

Khi bạn có apt-mirrorcấu hình bạn muốn, hãy chạy apt-mirrorvà thực hiện điều gì đó thú vị hoặc thay đổi cuộc sống vì sẽ mất hàng giờ hoặc nhiều ngày để có được kho lưu trữ (tùy thuộc vào kết nối của bạn và máy nhân bản Ubuntu bạn đang sử dụng).

Khi bạn có tệp .deb, hãy sao chép tệp vào thẻ nhớ USB (hoặc ổ cứng ngoài) và thiết lập kho lưu trữ cục bộ theo bài viết đã đề cập trước đó.

Kiểm tra nó hoạt động trước khi đưa nó cho bạn bè của bạn!


Gói apt-mirror được trình bày chi tiết tại :: apt-mirror.sourceforge.net
jr0cket

Khi tôi dùng thử sudo apt-get install apt-mirrortrực tiếp trên Ubuntu 16.10 (Yakkety Yak), phiên bản máy tính để bàn / Rufus / thanh USB / chế độ dùng thử, tôi đã nhận được " E: Unable to locate package apt-mirror". Có kết nối với Internet, được xác minh bởi ping.
Peter Mortensen

Chạy sudo apt-get updatekhông sửa được.
Peter Mortensen

32

Tôi sử dụng apt-get với tùy chọn "--print-uris" để làm điều đó. Tôi cũng thêm "-qq" để nó yên tĩnh.

Sử dụng sed để xóa các ký tự phụ được thêm vào một số tên tệp (giống như 3% 2a) và để lấy url, tên tệp và md5sum của tệp. Sử dụng wget để tải về các tập tin. Sử dụng md5sum để kiểm tra xem các tập tin được tải xuống đúng cách.

Bạn có thể sử dụng điều này để tạo tập lệnh shell cho Linux hoặc Mac OS (thay thế ".cmd" trong các lệnh thành .sh và thực hiện "chmod a + x (tên tệp) để thêm quyền thực thi tập lệnh) hoặc tệp bó lệnh của Windows và tệp MD5Sum để đảm bảo các tệp được tải xuống chính xác.

Các lệnh

Tạo tập lệnh:

sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd

Ví dụ:

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

Tạo tập tin 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

Ví dụ:

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

Bạn cần md5sum cho Windows nếu bạn đang sử dụng hệ điều hành đó để tải xuống các tệp.


Tạo tập lệnh để tải xuống danh sách kho lưu trữ:

sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd

Kiểm tra tổng MD5

Bạn có thể thêm chúng vào cuối tập lệnh để kiểm tra md5sum:

Linux:

md5sum --quiet -c md5sum.txt

Windows (sử dụng md5sum cũ hơn, không hỗ trợ --quiet):

md5sum -c md5sum.txt

Để thêm tự động vào tập lệnh:

echo -e "md5sum -c md5sum.txt\npause" >> script.cmd

Cài đặt danh sách tập tin (Lệnh cập nhật)

Chạy các lệnh này đến máy tính đích.

Bạn cần sử dụng bunzip2 để giải nén các tệp danh sách kho lưu trữ:

bunzip2 *.bz2

Sau đó sao chép vào thư mục danh sách (thư mục hiện tại chỉ chứa các tệp danh sách):

sudo cp * /var/lib/apt/lists/

Kết hợp ở trên (thư mục hiện tại có thể chứa các tệp khác):

for listfile in `ls *.bz2`; do bunzip2 $listfile; sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done

Tải xuống nhanh hơn

Nếu bạn muốn tải xuống các tệp nhanh hơn, hãy thử sử dụng Axel.

Thay thế wget -c ... -O ...bằng axel ... -o ....

Phân cấp thư mục (Tải xuống tệp bằng Windows)

Tôi thường tạo một thư mục như thế này:

  • apt-get /
    • thùng rác/
      • msys-1.0.dll
      • msys-intl-8.dll
      • wget.exe
      • msys-iconv-2.dll
      • md5sum.exe
      • libeay32.dll
      • libintl3.dll
      • libssl32.dll
      • libiconv2.dll
    • cập nhật /
      • cập nhật.cmd
      • md5sum.txt
    • Tải về/
      • cài đặt-foo.cmd
      • cài đặt-bar.cmd
      • nâng cấp.cmd
      • md5sum.txt

Sau đó thay đổi wgettrong các dòng trên ..\\bin\\wget.exe, md5sumsang ..\\bin\\md5sum.exe, v.v.

Điều này sẽ tách các tệp * .deb và liệt kê các tệp vào các thư mục khác nhau.

Cập nhật hệ thống của bạn

  1. Khởi động máy tính mục tiêu sử dụng Ubuntu
  2. Tạo một kịch bản để cập nhật
  3. Khởi động máy tính có kết nối internet
  4. Chạy update.sh (cho Linux hoặc Mac OS) hoặc update.cmd (Windows)
  5. Quay trở lại máy tính mục tiêu
  6. Cài đặt danh sách tập tin
  7. Tạo một kịch bản để nâng cấp / nâng cấp (thêm lệnh md5sum vào cuối)
  8. Quay trở lại máy tính có kết nối internet
  9. Chạy nâng cấp.sh / dist-upTHER.sh (Linux hoặc Mac OS) hoặc nâng cấp.cmd / dist-nâng cấp.cmd (Windows)
  10. Quay trở lại máy tính mục tiêu
  11. Sao chép tệp * .deb vào bộ đệm: sudo cp *.deb /var/cache/apt/archives/
  12. Chạy: sudo apt-get upgradehoặcsudo apt-get dist-upgrade

Tải xuống Executables cho Windows

Wget cho Windows: http://gnuwin32.sourceforge.net/packages/wget.htm

md5sum cho Windows: http://gnuwin32.sourceforge.net/packages/coreutils.htm hoặc http://www.etree.org/cgi-bin/c gặp.cgi / software / md5sum.exe

Bạn cũng có thể sử dụng những cái từ MinGW , đó là những gì tôi sử dụng. Bạn chỉ cần wget.exe, md5sum.exe và các thư viện chia sẻ cần thiết. Kiểm tra phần "Phân cấp thư mục".

Ghi chú

  • Tôi không hoàn toàn chắc chắn nếu mọi thứ trên lệnh sẽ hoạt động, vì tôi đã không sử dụng chúng trong một tháng nay. Đặc biệt là lệnh cập nhật, mà tôi chưa thử nghiệm ngày hôm nay một số phần của nó.
  • Để dễ dàng xem kết quả của các lệnh, hãy thêm một dòng "tạm dừng" vào cuối tập lệnh, nếu sử dụng Windows.
  • Tôi khuyên bạn nên tạo tập lệnh shell để cập nhật, nâng cấp và cài đặt gói nếu bạn thường xuyên sử dụng các lệnh này.

3
Bạn có thể tạo một gui đơn giản cho việc này không :)
Tachyons

sử dụng cửa sổ cho việc này có vẻ rất kỳ lạ ...
Alex R

1
Nó cũng có thể áp dụng cho Linux (thực sự tốt hơn vì bạn không cần cài đặt md5sum và wget). Phần Windows dành cho những người không có máy tính Linux có kết nối internet, vì vậy bạn có thể sử dụng nó trong quán cà phê internet hoặc máy tính của một người bạn chỉ có Windows.
Arnel A. Borja

-qqtùy chọn xuất hiện để triệt tiêu tất cả đầu ra từ apt-get update. Tôi cho rằng bạn không thực sự muốn tùy chọn này.
Ruslan

29

Trước tiên, bạn cần có một PC có kết nối Internet, nơi bạn có thể tải xuống các tệp .deb cần thiết. Khi bạn đã tải xuống tất cả các tệp, Bây giờ bạn có thể tạo một đĩa CD / DVD hoặc tệp ISO mà bạn có thể sử dụng để cài đặt phần mềm bạn đã tải xuống trong PC ngoại tuyến.

Bắt đầu với một cài đặt sạch hoặc VM.
sudo apt-get install aptoncd

Cài đặt các gói bạn muốn trên một PC
sudo apt-get install gbrainy

Chạy aptoncd
nhập mô tả hình ảnh ở đây
Nhấp vào Tạo
nhập mô tả hình ảnh ở đây
Nhấp vào Ghi và đặt tùy chọn rồi Áp dụng
nhập mô tả hình ảnh ở đây
Ghi hoặc lưu nó
nhập mô tả hình ảnh ở đây

Lưu ý rằng aptoncd chỉ sao lưu mọi thứ trong apt-cache hiện tại.
Đây là lý do tại sao chúng tôi bắt đầu với một VM / cài đặt mới và thực hiện tất cả điều này trong một lần chạy.


Vì vậy, bạn đang nói nếu tôi tạo một vm và cài đặt tất cả các ứng dụng tôi muốn, sau đó chạy chương trình này, đưa cd / dvd vào máy tính ngoại tuyến. và nó sẽ cài đặt tất cả các ứng dụng trên đó?
Alex

2
Miễn là bạn sử dụng cùng một phương tiện hệ thống cơ sở, có. Nếu bạn đang triển khai một văn phòng và bạn muốn một cách nhanh chóng và đơn giản để thêm một cái gì đó, thì điều này trở nên rất hữu ích. Nếu bạn sử dụng gói tạo meta, có
RobotHumans

Khôi phục từ hình ảnh đòi hỏi phải được cài đặt một nửa, nhưng nó không được hỗ trợ và không còn được hỗ trợ theo như tôi hiểu.
Flashrunner

Có một bản dựng cho mã sinh động.launchpad.net / ~ Ubuntu
RobotHumans

22

Kho lưu trữ ngoại tuyến

Cách tạo kho lưu trữ ngoại tuyến được mô tả tại đây : Bạn chỉ cần tải xuống các tệp thích hợp từ archive.ubfox.com . Ngoài ra, bạn có thể sử dụng apt-medium.

EDIT: Một cách tiếp cận khác dựa trên một *.debtập tin cục bộ của các tệp được mô tả trong các mục blog khác nhau (xem tại đâyđây ). Sarath Chandra tóm tắt như sau:

  1. Tạo một thư mục có thể truy cập (ít nhất là bằng root)

    sudo mkdir /var/my-local-repo
    
  2. Sao chép tất cả các tập tin deb vào thư mục này.

  3. Tạo thư mục dưới dạng

    sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
    

    hoặc là

    sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
    
  4. Thêm repo cục bộ vào nguồn

    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
    

20

Bước 1: Nhận URL tải xuống trong một tệp:

Thực hiện lệnh sau thay thế tên gói bằng tên bắt buộc, phân tách bằng khoảng trắng.

apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls

Bước 2: Sao chép tệp này (apturls) vào máy có truy cập Internet tốc độ cao và thực hiện lệnh sau để tải xuống các gói:

wget -i path-to-apturls-file 

Bước 3: Bây giờ hãy lấy các gói đã tải xuống vào máy của bạn và cài đặt chúng bằng cách sử dụng:

cd path-to-the-downloaded-packages-directory

sudo dpkg -i *.deb

Làm xong!


--print-urisin ngay cả các phụ thuộc đã được cài đặt trong hệ thống?
yuric

19

Bạn có thể sử dụng Cube . Đây là trình quản lý gói di động cho phép bạn tải xuống các gói trên một máy tính có kết nối internet khác và cài đặt chúng trở lại máy tính Linux gốc của bạn, ngoại tuyến.

Đang tải xuống ứng dụng (Trên Windows)

Cài đặt ứng dụng (Trên Linux)

Bạn có thể tải nó trên trang web của Cube .


nó là .deb hay .exe?

2
Không có tệp .deb vì nó là độc lập, di động và có thể được thực thi mà không cần cài đặt (chỉ chạy tệp cube-normal). Cube.exe cũng được bao gồm cho người dùng windows.
Camicri

1
Nhiều người cần biết về điều này. Em yêu anh.
howderek

Tôi gặp lỗi khi chạy ứng dụng này trên win 7 Ultimate 32 bit. Ảnh: i.stack.imgur.com/XW3wt.jpg thông báo lỗi: Chữ ký sự cố: Sự cố Tên sự kiện: CLR20r3 Chữ ký sự cố 01: cube.exe Chữ ký sự cố 02: 1.0.9.3 Chữ ký sự cố 03: 54bd0258 Chữ ký sự cố 04: glib-sharp Chữ ký sự cố 05: 2.12.0.0 Chữ ký sự cố 06: 517edc4c Chữ ký sự cố 07: 1b4 Chữ ký sự cố 08: 17 Chữ ký sự cố 09: System.DllNotFoundException Phiên bản hệ điều hành: 6.1.7600.2.0.0.256.1 ID địa phương: 16393
Sandeep

Xin chào và cảm ơn bạn đã sử dụng Cube. Thật không may, phiên bản của khối bạn đang sử dụng không còn được duy trì. Vui lòng sử dụng máy chủ mới và ổn định, Cube Server: launchpad.net/cube-server. Xem câu trả lời cập nhật ở trên.
Camicri

17

Trong synaptic, bạn có thể chọn các gói bạn muốn cài đặt và trong menu đầu tiên, có một tùy chọn để tạo tập lệnh mà bạn có thể đưa đến một máy khác và chạy ở đó. Kịch bản này sẽ "wget" (tức là "download") tất cả các gói mà bạn chỉ định mà bạn muốn (và phụ thuộc của họ) mà bạn chạy trên một máy tính mà không có quyền truy cập internet.

Sau khi chạy, bạn sẽ có tất cả các tệp gói cần thiết cho máy tính bị ngắt kết nối. Mang chúng trên một đĩa CD / USB và cài đặt chúng bằng cách sudo dpkg -i *.deb.


Đó là một mẹo hay nhưng 2 máy tính để thực hiện quá trình? hmmmm
Suhaib

@Suhaib - không chắc chắn cách bạn tải xuống các gói bạn cần trong bất kỳ biện pháp nào mà không có 'hai máy tính' ... bạn cần một máy 'trực tuyến' để nhận các gói mà bạn sẽ gửi đến máy ngoại tuyến của mình (ngay cả khi đó là một VM hoặc Docker Container chạy trên một hệ điều hành máy chủ khác hoặc một loạt các hướng dẫn curl/ wgetbản sao trên một số phương tiện bên ngoài ...
Cinderhaze

15

Bạn có thể sử dụng apt-offlinehoặc apt-offline-gui.
Yêu cầu trước : Hệ thống của một người bạn có kết nối Internet. apt-offline được cài đặt trong cả hai hệ thống của bạn.

Cài đặt ngoại tuyến đạt được trong 3 bước đơn giản.

Bước 1 :
Tạo tệp chữ ký trên hộp Debian bị ngắt kết nối ở nhà
apt-offline set /tmp/apt-offline.sig
Lệnh trên sẽ tạo ra tất cả thông tin cần thiết từ apt về việc cập nhật cơ sở dữ liệu của nó.

Bước 2 :
Tải xuống dữ liệu dựa trên tệp chữ ký được tạo trước đó
apt-offline get C:\apt-offline.sig --threads 5
Lệnh trên sẽ tải xuống dữ liệu như được đề cập trong tệp chữ ký. Để tăng tốc độ tải xuống (có thể từ nhiều kho apt), trong ví dụ này, chúng tôi sinh ra 5 luồng tải xuống.
Sau khi hoàn thành, bạn có thể sao chép dữ liệu (tệp lưu trữ, nếu bạn đã sử dụng tùy chọn --bundle) trở lại phương tiện di động và sao chép lại vào máy chủ ngoại tuyến của mình.

Bước 3 :
Khi bạn quay lại máy Debian tại nhà, bạn cung cấp dữ liệu từ phương tiện di động sang apt-offline:
apt-offline install /media/USB/apt-offline.zip
Điều này sẽ cập nhật cơ sở dữ liệu APT trên máy bị ngắt kết nối của bạn một cách liền mạch.

Apt-offline thậm chí có thể được sử dụng trong các hệ thống Windows. Theo tôi, apt-offlinelà tùy chọn tốt nhất để cài đặt Ngoại tuyến.

Nguồn


Hai quan sát: Thứ nhất, tạo chữ ký cho gói đã được cài đặt hoặc gói sẵn sàng "không thành công" theo nghĩa là tệp .sig trống. Đó là một chút bối rối nhưng dường như bình thường. Thứ hai, apt và apt-offline chỉ hoạt động chính xác nếu / var / lib / apt / list đã được chọn đúng. Đây là một khối lượng công việc khá lớn nếu máy mục tiêu và máy chủ có kiến ​​trúc khác nhau.
Urhixidur

Cả PC nguồn và PC đích có cần phải có cùng một phiên bản Ubuntu không?
Tulains Córdova

Làm cách nào để cài đặt apt-offline vào máy offline?
Sami Şimşekli

10

Có một số câu trả lời tốt, hiệu quả được liệt kê ở trên. Tuy nhiên, đây là cơ chế cá nhân tôi sử dụng - apt-ftparchive . Tôi đang ghi lại nó ở đây, trong trường hợp tôi cần nó một lần nữa trong tương lai. Có lẽ nó có thể hữu ích cho bạn.

Tạo Ảnh chụp Lưu trữ

  • Tạo một thể hiện của Ubuntu bắt chước chặt chẽ môi trường đích
    • Ví dụ: phiên bản Ubuntu 12.04 64 bit trong Amazon
  • Bắt đầu với một môi trường gói sạch
    • sudo apt-get clean
  • Cập nhật danh sách gói
    • sudo apt-get update
  • Tải xuống tất cả các bản cập nhật gói có sẵn
    • sudo apt-get dist-upgrade --download-only
  • Tải xuống tất cả các gói và phụ thuộc có liên quan
    • sudo apt-get install --download-only byobu run-one bikeshed dotdee powernap
  • Cài đặt tiện ích apt-ftparchive
    • sudo apt-get install apt-utils
  • Tạo bảng kê khai gói
    • (cd /var/cache/apt/archives/ && sudo apt-ftparchive packages . ) | sudo tee /var/cache/apt/archives/Packages
  • Tạo một kho lưu trữ của các gói
    • sudo tar cvf snapshot.tar -C /var/cache/apt archives/

Sử dụng Ảnh chụp lưu trữ trên Hệ thống mục tiêu ngoại tuyến

  • Thông qua một số cơ chế, bạn sẽ cần lấy snapshot.tar từ nguồn tới hệ thống đích. Có lẽ trên một thanh USB, hoặc nếu không.
  • Trích xuất kho lưu trữ trên hệ thống đích (trong trường hợp này là trong / home / ubfox)
    • tar xvf snapshot.tar
  • Thêm nguồn cục bộ, ngoại tuyến vào /etc/apt/source.list
    • echo "deb file:/home/ubuntu/archives /" | sudo tee -a /etc/apt/sources.list
  • Cập nhật danh sách gói
    • sudo apt-get update
  • Cài đặt các gói như mong muốn
    • sudo apt-get install byobu run-one bikeshed dotdee powernap

4

Để cài đặt ngoại tuyến, bạn sẽ cần các gói. Nếu bạn đang sử dụng hệ thống Debian

  • Nhận tệp gói với .debphần mở rộng tệp và sử dụng dpkg -i package_nameđể cài đặt nó
  • Nhận tarball nguồn với phần mở rộng .tar.gzhoặc .tar.bz2tệp, sau đó giải nén và cài đặt chúng với:

    tar -zxvf your_pack.tar.gz` or tar `-jxvf your_pack.tar.bz2
    make
    sudo make install
    make clean        (optional, and may prevent uninstallation)
    

Bạn có thể có vấn đề với phụ thuộc. Bạn cần cài đặt tất cả những cái đầu tiên để cài đặt ngoại tuyến thành công.


2

Đúng. Bạn có thể tải xuống iso DVD, ghi nó trên DVD và cài đặt phần mềm từ DVD. Xem ở đây CD và DVD có thể được cung cấp dưới dạng nguồn cho các nhà quản lý gói theo cách tương tự như lưu trữ trực tuyến.


2

Điều đầu tiên bạn có thể làm trước khi cài đặt gói ngoại tuyến là cập nhật kho lưu trữ / kho lưu trữ mà bạn cần. Bạn nên chắc chắn thích một kho lưu trữ chính được cập nhật (cho phần mềm miễn phí và được hỗ trợ chính thức).

Các ứng dụng mà bạn đang tìm cách cài đặt có thể nằm trong một số kho lưu trữ khác như Vũ trụ (miễn phí nhưng không hỗ trợ chính thức) hoặc Hạn chế (không miễn phí, được hỗ trợ chính thức) hoặc kho lưu trữ Đa chiều (không miễn phí, không hỗ trợ chính thức) . Vì vậy, bạn có thể muốn một hoặc nhiều trong số này quá.

Vì vậy, bước đầu tiên trong quy trình là xây dựng một kho lưu trữ ngoại tuyến được cập nhật; sau đó tạo danh sách "để tải xuống" và tải chúng xuống, và cuối cùng là phần chú thích. Đây là cách nó được thực hiện: nguồn

  1. Nhập url: http://archive.ubuntu.com/ubuntu/dists/ suiteCodename nơi suiteCodename nên substituded một cách thích hợp nói chính xác cho Ubuntu 12.04 (Precise tê tê) [hoặc utopic cho Ubuntu 14.10 (Utopic Unicorn)] để bạn muốn bây giờ hãy ở trong http://archive.ubfox.com/ubfox/dists/precise/ hoặc bất kỳ cụ thể nào khác cho bộ bạn có.

  2. Tải xuống các tệp Release , Release.gpgNội dung - ????. Gz tệp cho kiến ​​trúc của bạn (ví dụ: Nội dung-i386.gz , giả sử kiến ​​trúc của bạn là i386). Lưu ba tệp này trong một thư mục / thư mục được đặt tên theo bộ SuiteCodename của bạn ( chính xác cho Precolin Pangolin).

  3. Tiếp theo, bạn sẽ phải thực hiện các thao tác sau cho từng kho lưu trữ (trong số Chính, Vũ trụ, Hạn chế, Đa vũ trụ ) mà bạn muốn.

    a. đi đến thư mục kho lưu trữ đích, vd. chính và sau đó đến thư mục kiến ​​trúc, ví dụ. binary-i386 để bạn có mặt trong http://archive.ubfox.com/ubfox/dists/suiteCodename/reposeectiveName/binary-????/

    b. tải xuống các nội dung Gói.bz2, Gói.gz, Phát hành và lưu chúng trong một thư mục được đặt tên theo repositoryName, vd. chính và đặt thư mục này trong thư mục suiteCodename được tạo trước đó .

    c. lặp lại a. và B. cho mỗi kho lưu trữ bạn muốn.

  4. Cuối cùng, bạn nên có một cấu trúc như thế này:

     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
    

    (giả sử bộ phần mềm của bạn = chính xác, kiến ​​trúc là i386 và bạn cần các kho lưu trữ chính và vũ trụ)

  5. Tiếp theo, sau khi tải xuống các kho lưu trữ được cập nhật, bạn sẽ đặt các tệp đã tải xuống được sắp xếp theo cấu trúc phù hợp (như được hiển thị ở trên) trong một thư mục của máy tính ngoại tuyến đích. Lưu cấu trúc precisethư mục trong một thư mục có tên offlineRep repository / dists / chính xác trong nhà người dùng của bạn ( ~/offlineRepository/dists/precise) hoặc bất cứ nơi nào khác ( /home/offlineRepository/dists/precisesử dụng ưu tiên sudo trong một thiết bị đầu cuối hoặc với trình quản lý tệp Nautilus đã bắt đầu gksu nautilus; . Thông tin kho lưu trữ ngoại tuyến của bạn sau đó sẽ sẵn sàng để sử dụng.

  6. Thêm kho lưu trữ cục bộ trong danh sách nguồn của bạn . Với Trung tâm phần mềm Ubuntu , đi đến Chỉnh sửa -> Nguồn phần mềm ... -> Phần mềm khác -> Thêm ... và sau đó trong trường cho dòng APT, thêm: deb file:///home/offlineRepository precise main universevà nhấp vào Thêm nguồn . Hãy chắc chắn rằng bạn sửa đổi dòng như cấu trúc thư mục / tập tin và bộ. Sau đó tải lại các gói hoặc chạy sudo apt-get updatetrong một thiết bị đầu cuối. snap1

  7. Bây giờ với các kho lưu trữ được cập nhật (và có lẽ cũng mới được thêm vào), bạn có thể kết xuất danh sách các url cho các gói và phụ thuộc.

    Tôi mượn dòng mã sau đây từ một trong những bài đăng trên AskUbfox trước đây:

    sudo apt-get install packageName --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    ví dụ. để cài đặt Trình quản lý gói Synaptic:

    sudo apt-get install synaptic --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
    

    (Bạn cũng có thể tạo danh sách cập nhật theo cách tương tự.)

    Danh sách được tạo có thể được sử dụng để tải xuống gói và toàn bộ phụ thuộc trên máy tính trực tuyến. Tạo một tập lệnh để tải xuống hoặc sử dụng danh sách để tải xuống hàng loạt trong một số trình quản lý tải xuống. (Cũng lưu ý tệp văn bản được tạo sử dụng kết thúc dòng Unix / Linux và bạn có thể muốn đổi sang Windows.) Đã từng có một cách dễ dàng hơn cho việc này khi Trình quản lý gói Synaptic là một ứng dụng mặc định trong Ubuntu.

  8. Cuối cùng, trong hệ thống đích, bạn có thể cài đặt các gói với dpkghoặc sử dụng bất kỳ cách nào khác.

Lấy cơ sở dữ liệu gói cập nhật bao gồm các bản cập nhật bảo mật

Cấu trúc sau đây, ngoài lời giải thích ở trên, sẽ cho bạn ý tưởng:

/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

2

Sau khi duyệt các câu trả lời ở đây: Làm cách nào tôi có thể cài đặt phần mềm hoặc gói mà không có Internet (ngoại tuyến)? , Tôi thấy mã này của Arnel A. Borja là hữu ích nhất.

sudo apt-get install PACKAGE --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh


Dù sao, đây là một số hướng dẫn cho người mới hoàn thành. Tôi hy vọng rằng bạn sẽ tìm thấy chúng hữu ích.

Hoàn thành các hướng dẫn tải xuống cho những người khác mới sử dụng Ubuntu 15.10+:

  1. Mở Terminal (phím tắt CTRL + ALT + T)
  2. Điều hướng đến thư mục mà bạn muốn gói được tải xuống bằng cách sử dụng lệnh:

    cd FOLDERNAME
    (Ví dụ cd Desktop:)
    Mẹo: Bạn cũng có thể sử dụng dirlệnh để liệt kê các thư mục.

  3. Trong mã ở trên hướng dẫn, thay thế GÓI bằng gói mà bạn muốn tải xuống.
  4. Sao chép và dán mã đã sửa đổi (phím tắt CTRL + SHIFT + V) và nhấn Enter

    Mã ví dụ để tải xuống Trình quản lý gói Synaptic:
    sudo apt-get install synaptic --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

    Mã ví dụ để tải xuống trình phát VLC:
    sudo apt-get install vlc --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh

  5. Nếu được hỏi, nhập mật khẩu gốc và nhấn Enter. (Đừng hoảng sợ nếu các ký tự cho mật khẩu không hiển thị. Đây chỉ là một biện pháp bảo mật.)
  6. Bây giờ tệp "install.sh" sẽ được tạo. Tất cả các phụ thuộc cần thiết được bao gồm trong kịch bản.
  7. Bây giờ chúng ta cần chạy tập lệnh với lệnh này:
    sh install.sh
  8. Đợi các tệp được tải xuống
  9. Sau đó, bạn có thể sử dụng lệnh này để cài đặt tất cả các gói trong thư mục:

    sudo dpkg -i *.deb

    Hoặc bạn có thể sử dụng một chương trình như Synaptics để cài đặt các gói. (Synaptics: File - Thêm các gói đã tải xuống)
    Ngoài ra, bạn cũng có thể chỉ cần nhấp đúp vào tệp. Điều đó sẽ mở Trung tâm phần mềm Ubuntu. Khi trung tâm phần mềm được tải, nhấn nút cài đặt. Lặp lại điều này cho đến khi tất cả các tệp trong thư mục được cài đặt.


2

Tôi có một tập lệnh python nhỏ có thể chạy trên Windows để phân tích trang web gói ubfox để tìm cây phụ thuộc và tải xuống tất cả các gói cần thiết + thực hiện xác minh tổng kiểm tra.

Điều này rõ ràng có thể tải xuống nhiều hơn cần thiết, nhưng là giải pháp đơn giản nhất đối với tôi.

https://gist.github.com/Zitrax/2bad212a3b0571357e1b

Tất cả các gói tải về sau đó có thể được cài đặt với dpkg -i E pkg\*. Nó tránh cài đặt lại các gói đã được cài đặt.

Sử dụng:

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)

2

Đối với một hệ thống sẽ luôn được giữ ngoại tuyến, tốt nhất là sử dụng một trong các phương pháp quản lý gói ngoại tuyến mạnh mẽ được trình bày trong một số câu trả lời khác. Điều này bởi vì chúng tạo điều kiện cho các gói đã được cài đặt cập nhật, thay vì chỉ cài đặt một số gói một lần.

Tuy nhiên, đối với các trường hợp riêng lẻ mà bạn chỉ muốn cài đặt nhanh các gói trên hệ thống không có kết nối Internet (và bạn có khả năng tải xuống chúng trên một máy khác và mang chúng đi), bạn có thể làm như vậy. Sự phức tạp chính là xác định những gì bạn cần, vì một gói thường có các gói khác mà nó phụ thuộc và do đó phải được cài đặt trước đó, hoặc cùng lúc với gói được cài đặt.

Câu trả lời này được thúc đẩy bởi câu hỏi trùng lặp g ++ trong Ubuntu 14.04 và sử dụng trường hợp cần cài đặt g++làm ví dụ cốt lõi của nó.

Tôi nhấn mạnh rằng phương pháp này không nên được sử dụng lâu dài như là một phương pháp thay thế cho thứ gì đó ít nhất tạo điều kiện tự động xác định và cài đặt các cập nhật bảo mật cần thiết. Không bao giờ kết nối với mạng làm giảm đáng kể khả năng bị tấn công, nhưng một số lỗi bảo mật có thể bị khai thác qua dữ liệu từ bất kỳ nguồn nào.

Mặc dù phương pháp này có thể trông phức tạp, nhưng nó thường chỉ mất vài phút. Đối với các gói có số lượng phụ thuộc lớn, có thể mất nhiều thời gian hơn. Để cài đặt các siêu dữ liệu có số lượng phụ thuộc rất lớn (ví dụ: ubuntu-desktoptrên một hệ thống tối thiểu), có thể mất nhiều thời gian hơn để tải xuống tất cả các tệp .deb cần thiết và phương pháp này không phù hợp.

Xác định phụ thuộc cần thiết

Bạn có thể mô phỏng cài đặt để xác định các gói khác là cần thiết để đáp ứng các phụ thuộc của gói. Truyền -scờ đến apt-get( trước khi bạn chỉ định bất kỳ hành động nào) thực hiện việc này.

apt-get -s install g++

Tôi đã bỏ qua sudo, vì đây chỉ là một mô phỏng, vì vậy không cần có quyền root.

Nếu bạn thực sự muốn cài đặt tất cả các công cụ phổ biến nhất để xây dựng các gói, thay vì chỉ g++, bạn có thể thích:

apt-get -s install build-essential

Đầu ra (cho g++) sẽ trông giống như thế này:

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])

Điều này nói rằng để cài đặt g++trên hệ thống của tôi, tôi cần gói g++, g++-4.8libstdc++-4.8-dev.

Đi theo kết quả của một mô phỏng thường tốt hơn là tìm kiếm các phụ thuộc của gói (hoặc giả sử rằng những gì bạn cần giống như trên), bởi vì:

  1. Bạn có thể đã có một số phụ thuộc được cài đặt.
  2. Các phụ thuộc (nghĩa là các gói khác mà gói cần cài đặt hoặc hoạt động) có thể có các phụ thuộc mà bạn chưa cài đặt.

Lấy gói

Một khi bạn biết những gói bạn cần, bạn có thể tải chúng xuống. Tôi khuyên bạn nên sử dụng Launchpad cho việc này, vì các phần tải xuống được mã hóa SSL, giúp ngăn ngừa hỏng tệp.

  • Đây không chỉ là một biện pháp bảo vệ chống lại sự thao túng có chủ ý của một bên độc hại; nó cũng giúp ngăn ngừa tham nhũng tập tin tình cờ, một vấn đề phổ biến hơn nhiều đối với các tập tin tải xuống.
  • Có một loại nó không ngăn được: khi một tệp chỉ tải xuống một phần nhưng bạn nghĩ nó đã hoàn thành.
  • Cài đặt gói thông thường với apt-gethoặc Trung tâm phần mềm không yêu cầu HTTPS vì hàm băm của nó được xác minh dựa trên danh sách băm được ký kỹ thuật số. Nếu bạn kết thúc việc đặt các gói này vào bộ đệm của gói và sử dụng apt-getđể cài đặt chúng, điều đó sẽ xảy ra.
  • Nhưng nếu bạn cuối cùng phải cài đặt các gói được tải xuống thủ công dpkg -i, điều đó sẽ không được thực hiện.

Bạn có thể tìm kiếm một gói bằng cách nhập tên của nó trong Gói tại https://launchpad.net/ubfox và nhấp vào "Tìm gói". Ví dụ: tìm kiếm g++-4.8sẽ đưa bạn đến trang gói nguồn gcc-4.8 .

Sau đó cuộn xuống tên mã của bản phát hành Ubuntu của bạn. Bạn đang chạy 14.04, vì vậy đó là Trusty Tahr. Tên mã cho tất cả các bản phát hành Ubuntu được liệt kê trên trang wiki phát hành . Nhấp vào hình tam giác hướng phải để xem các gói tải xuống cho nó.

ảnh chụp màn hình hiển thị hình tam giác hướng phải mà người ta mở rộng bản phát hành để xem các bản tải xuống cho nó

Đối với một số gói, bạn có thể mở rộng danh sách tải xuống từ nhiều hơn một túi . Bạn có thể thấy:

  • phát hành , phiên bản của gói được phát hành cùng với bản phát hành Ubuntu (hoặc có sẵn tại thời điểm phát hành);
  • bảo mật , cập nhật bảo mật được vận chuyển sau khi phát hành;
  • cập nhật , mọi cập nhật được vận chuyển sau khi phát hành;
  • đề xuất , các bản cập nhật có sẵn để cài đặt, nhưng vẫn đang trong quá trình thử nghiệm và không được khuyến nghị sử dụng chung;
  • backport , phần mềm có nguồn gốc từ một bản phát hành Ubuntu sau đó và được xây dựng lại cho bản phát hành trước đó.

Ví dụ: đây là những gì có sẵn cho Firefox vào ngày 14.04:

Ảnh chụp màn hình Launchpad hiển thị các lựa chọn có thể mở rộng của tải xuống gói cho nhiều túi trong cùng một bản phát hành

Nói chung, bạn sẽ muốn các gói trong bảo mật hoặc cập nhật nếu chúng tồn tại và các gói khác được phát hành .

Khi bạn mở rộng danh sách các gói, hãy tìm .debtệp cho kiến ​​trúc của bạn. Các cuộc tranh luận được đặt tên . Các kiến ​​trúc phổ biến nhất là:name_version_architecture.deb

  • PC / Mac 64 bit (được gọi là amd64cho cả bộ xử lý Intel và AMD)
  • PC / Mac 32 bit (được gọi i386, cũng cho cả hai)

Ví dụ: để có được g++-4.8gói cho phiên bản Ubuntu 64 bit, bạn có thể tải xuống g++-4.8_4.8.4-1ubuntu15_amd64.deb.

Cài đặt các gói

Nếu các gói bạn lấy ra là phiên bản tương tựapt-get's installhành động sẽ đã tự động lấy ra và cài đặt (nếu hệ thống của bạn đã được kết nối mạng), sau đó bạn có thể đặt các gói trong /var/cache/apt/archivesvà chỉ cần chạy lệnh:

sudo apt-get install g++

Nếu hệ thống này không bao giờ được kết nối với Internet, thì đây có thể là trường hợp khi tất cả các gói bạn lấy được từ túi phát hành . Bất kể hệ thống có được kết nối với Internet hay không, điều này cũng sẽ luôn luôn như vậy nếu không có gói nào trong bất kỳ túi nào khác được hiển thị trên Launchpad. (Về cơ bản, tình huống duy nhất sẽ không xảy ra nếu bạn cài đặt hệ thống alpha hoặc beta và không bao giờ cập nhật nó.)

Trong trường hợp cụ thể của cài đặt g++, tôi sẽ sử dụng apt-get.

Trong trường hợp điều đó không hoạt động hoặc bạn mong đợi nó sẽ không, hãy cài đặt các gói bằng cách đặt chúng vào một thư mục trống khác và chạy:

sudo dpkg -Ri /path/to/folder

Hoặc bạn có thể đặt tên cho các gói riêng lẻ. Ví dụ này giả sử các gói nằm trong thư mục hiện tại (nghĩa là bạn đã cded vào thư mục chứa chúng):

sudo dpkg -i package1.deb package2.deb ...

Trừ khi số lượng gói được cài đặt rất ít bạn biết thứ tự chính xác mà chúng cần được cài đặt để phụ thuộc được thỏa mãn, sử dụng các phương thức đó hiệu quả hơn nhiều so với cài đặt riêng từng gói.


1

Nếu bạn không có kết nối với internet và không có ai ở gần nơi bạn có thể kết nối với internet, có một tùy chọn chưa được đề cập: có ai đó gửi các tệp nguồn qua bài đăng thông thường.

Bạn có thể nhận được toàn bộ hệ điều hành Ubuntu thông qua thư bằng cách trả tiền cho một đĩa DVD. Giống như cách bạn có thể yêu cầu một người bạn trực tuyến gửi cho bạn các tệp DEB hoặc thậm chí các tệp nguồn cho một gói như VLC cho bạn. Mặc dù có thể đáng để ai đó gửi một đĩa DVD hoàn chỉnh với tất cả các gói. Bằng cách đó bạn có thể cài đặt nó từ DVD đó.


0

Đây không phải là một câu trả lời chi tiết đầy đủ, nhưng ở mức độ cao, bạn có thể:

  1. lấy pkgs .deb mong muốn (và tạo danh sách chúng) (bao gồm các gói mà chúng phụ thuộc vào đó chưa được cài đặt)
  2. tạo một kho lưu trữ apt chứa chúng
  3. sao chép kho lưu trữ apt vào đĩa CD hoặc USB
  4. đưa đĩa CD hoặc USB vào hệ thống đích
  5. cấu hình apt trên hệ thống đích để bao gồm kho lưu trữ apt CD hoặc USB làm nguồn
  6. cài đặt các gói từ danh sách của bạn với cài đặt apt-get (danh sách pkgs)

0

Tôi đề nghị tùy chỉnh Live CD và cài đặt chúng.

Bạn cũng có thể tải xuống các tệp trên http://packages.ubfox.com/ tên tệp , nhưng sau đó bạn cũng phải chú ý đến các phụ thuộc.


(Ban đầu đây là một câu trả lời cho một câu hỏi hơi khác đã được hợp nhất với câu hỏi đó.)
Jakob

Công việc giết thời gian
totti

0

Một khả năng khác là sử dụng remasterys. Công cụ này cho phép bạn tạo một hình ảnh iso từ hệ thống của riêng bạn và sau khi tạo một thanh USB có thể khởi động thông qua unetbootin, bạn có thể cài đặt một hệ thống tùy chỉnh cho nhiều máy tính bạn muốn.


Nhưng làm thế nào để cập nhật chúng sau đó?
Eliah Kagan

0

Tôi có một vài gợi ý đơn giản. Bạn có thể đến thư viện. Nhìn vào phần máy tính cho hệ điều hành mà bạn muốn, một số sách có DVD bên trong chúng. Ngoài ra, nếu bạn muốn hệ điều hành cập nhật nhất, tôi sẽ giới thiệu trang web này nơi bạn có thể mua DVD với một khoản phí danh nghĩa. www.ubfox.com/doad/desktop.


0

Câu hỏi này hơi cũ nên câu trả lời tại thời điểm này có thể là dư thừa, nhưng có lẽ bạn cũng có thể thử sử dụng dpkg-offline . Cài đặt bzr, sau đó:

bzr branch lp:dpkg-offline

có một hướng dẫn và một tập tin readme bao gồm trong đó.

Giả sử bạn muốn cài đặt git trên hệ thống Ubuntu 14.04 amd64, ngay cả khi hệ thống của bạn là 12.04 i386, bạn có thể:

  • tải xuống hình ảnh ubfox-14.04-desktop-amd64.iso
  • Chạy dpkg-offline ubuntu-14.04-desktop-amd64.iso git
  • Bạn sẽ có được một tar.gz mà bạn có thể vận chuyển đến hệ thống đích, nó sẽ chứa gói hạt giống (git) và tất cả các phụ thuộc của nó. Nó cũng bao gồm một tập lệnh trợ giúp để thêm một kho lưu trữ cục bộ, vì vậy bạn có thể sử dụng apt-getđể cài đặt các gói của mình.

dpkg-offline sẽ hoạt động với mọi phiên bản máy tính để bàn Ubuntu từ 10.04 trở đi (Tôi chưa thử nghiệm với các phiên bản cũ hơn nhưng chúng cũng sẽ hoạt động) và với bất kỳ phiên bản máy chủ Ubuntu nào từ 12.10 trở đi. Nó cũng nên hoạt động với hình ảnh amd64, i386 và armhf bất kể kiến ​​trúc máy chủ. Một lần nữa, tôi chưa thử nghiệm với arm64 hoặc powerpc / ppc64el nhưng chúng cũng có thể hoạt động.

Tuyên bố miễn trừ trách nhiệm: Tôi đã viết dpkg-offline.


Điều này thật tuyệt, tuy nhiên tôi nghĩ rằng việc tải xuống toàn bộ bản phân phối để sử dụng tập lệnh là quá mức, ước gì nó có thể hoạt động bằng cách chỉ định các gói cần thiết và bản phân phối mục tiêu
Javier López

0

Một số gói được cài đặt trên thanh cài đặt usb. Tôi gỡ cài đặt network-managervà muốn cài đặt lại.

Vì vậy, tôi đã nhận được thanh tôi đã cài đặt hệ điều hành từ (Lubfox 17.10). Đó là/dev/sdb

Gắn cây gậy vào một con đường ( /tmp/mnttrong trường hợp của tôi)

mkdir /tmp/mnt
sudo mount /dev/sdb1 /tmp/mnt

Sau đó, tôi chỉnh sửa /etc/apt/sources.listđể chỉ chứa

deb file:///tmp/mnt/ main universe

Sau đó, tôi làm

sudo apt-get update

Và tôi có thể cài đặt network-manager.

Lưu ý: Đây có thể không phải là câu trả lời cho câu hỏi trên mà là câu hỏi tôi có khi tìm kiếm câu hỏi này.


1
Bạn có lẽ nên sao lưu sources.listvà sau đó khôi phục nó.
Chai T. Rex
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.