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


Tôi có một người bạn đã có một máy tính không được kết nối với Internet. Có cách nào để cài đặt phần mềm ngoại tuyến dễ dàng không?


238
2017-08-05 06:12


gốc


Liên kết sau cũng có thể thú vị cho bạn. askubuntu.com/questions/86358/… - starkus


Các câu trả lời:


Kiểm tra Keryx; nó là một người 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 xuống các bản cập nhật và các chương trình mới (với các phụ thuộc) cho ổ đĩa flash.

Giao diện của nó tương tự như synaptic, nhưng nó hoạt động từ một pendrive (nó 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 là nền tảng chéo 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 cá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 từng bước chi tiết khác nằm trong câu trả lời này.

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

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

Screenshoot


123
2017-08-05 09:01



keryx không còn được phát triển nữa, nếu bạn đang thử trên phiên bản mới hơn của Ubuntu, hãy sử dụng phiên bản di động để tiết kiệm cho mình khỏi sự cố phụ thuộc. - Alex R
Tôi vẫn sử dụng keryx mà không có vấn đề gì, mặc dù rõ ràng cần phát triển và cải tiến hơn nữa. - carnendil
Làm thế nào để tôi sử dụng nó? - carnendil
Điều gì sẽ xảy ra nếu máy tính ngoại tuyến khác không có gcc, g ++? Nó là một ubuntu mới được cài đặt. Làm thế nào tôi có thể cài đặt wxwidgets? Nếu không có wxwidgets, nó phàn nàn về việc thiếu module ... - buzhidao
Tôi vừa 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ố lo ngại. Phiên bản được biên dịch nên giữ 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ì. - mac9416


Nhanh chóng hack

Một bản 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ữ trong /var/cache/apt/archives, sau đó khởi chạy máy tính khác Synaptic và chọn File -> Add Package Downloaded và tìm kiếm thư mục là 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).

CHÚ THÍCH:
Đ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 của Ubuntu (10.10, 12.04, v.v.) và phiên bản kiến ​​trúc (32b hoặc 64b).


Kho lưu trữ DVD

Nếu bạn muốn các bản sửa lỗi và bản vá lỗi bảo mật mới nhấ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.


55
2017-08-05 10:38



Nếu bạn không thể chạy sudo apt-get update điều này sẽ không hoạt động tốt, vẫn là một trình 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ừ 13,04. Người đầu tiên phải tải xuống ~ 1,8Gb, sao chép nội dung của /var/cache/apt/archives đến phiên bản thứ hai, nó chỉ tải xuống ~ 250Mb. Tuy nhiên, bạn cần kết nối để chạy cài đặt. - Maxime R.
apt-get update khô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 .deb cho tôi usb từ /var/cache/apt/archives . Trên máy tính khác, tôi chỉ mở ổ USB và nhấp đúp vào .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 này không /var/cache/apt/archives cái nào đã (inbuilt) đến khi Debian được cài đặt? Lý do tại sao tôi yêu cầu này là 4,8 GB là cách quá lớn cho ổ đĩa USB của tôi đó là 4 GB. - justin


Kho lưu trữ USB

Nếu bạn có một thanh USB có kích thước phù hợp - giả sử khoảng 4-8Gb (hoặc ổ cứng gắn 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à cấu hình nó như một kho lưu trữ cục bộ như được trình bày trong AptGet / Offline / Repository  trên help.ubuntu.com.

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

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

sudo apt-get install apt-mirror

và chỉnh sửa tệp 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. Đâ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

Đó là guesstimated rằng bạn sẽ cần khoảng 15Gb không gian cho tất cả 4 phần, mà 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 để ổ đĩa cứng của bạn không lấp đầy (nếu ổ cứng của bạn đầ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 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), sau đó thêm phần sau vào lúc bắt đầu mirror.list tập tin cấu hình:

set defaultarch i386

Một khi bạn có apt-mirror cấu hình bạn muốn, chạy apt-mirror và đi làm một cái gì đó vui vẻ hoặc cuộc sống thay đổi vì nó sẽ mất nhiều giờ hoặc 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).

Một khi bạn có các tập tin .deb, sao chép các tập tin vào thẻ nhớ USB của bạn (hoặc ổ đĩa cứng gắn ngoài) và thiết lập kho lưu trữ cục bộ theo bài viết được đề cập trước đó.

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


38
2018-04-18 20:55



Gói apt-mirror được trình bày chi tiết tại: apt-mirror.sourceforge.net - jr0cket
Khi tôi thử sudo apt-get install apt-mirror ngay 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
Đang chạy sudo apt-get update đã không sửa chữa nó. - Peter Mortensen


Trước tiên, bạn cần có một máy tính có kết nối Internet, nơi bạn có thể tải xuống các tệp .deb bắt buộc. Một khi bạn đã tải về tất cả các tập tin, bây giờ bạn có thể tạo một đĩa CD / DVD rom hoặc tập tin ISO mà bạn có thể sử dụng để cài đặt phần mềm bạn đã tải về trong máy tính offline của bạ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
enter image description here
Nhấp vào Tạo
enter image description here
Nhấp vào Ghi và đặt tùy chọn rồi Áp dụng
enter image description here
Ghi nó hoặc lưu nó
enter image description here

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 máy ảo sạch / cài đặt mới và đã làm tất cả điều này trong một lần chạy.


29
2017-10-26 07:55



sooo, là bạn nói nếu tôi thực hiện 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, lấy cd / dvd vào máy tính offline. và nó sẽ cài đặt tất cả các ứng dụng trên đó? - Alex
Miễn là bạn sử dụng cùng một phương tiện hệ thống cơ bản, vâng. 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ì đó, sau đó đ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
Việc khôi phục từ hình ảnh yêu cầu phải cài đặt một nửa, nhưng nó không được chấp nhận và không còn được hỗ trợ theo như tôi hiểu. - Flashrunner
Có một bản dựng để sống động code.launchpad.net/~ubuntu-branches/ubuntu/vivid/hal/vivid - RobotHumans


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 lặng.

Sử dụng sed để loại bỏ các ký tự thừa được thêm vào một số tên tệp (chẳng hạn như 3% 2a) và để nhận url, tên tệp và md5sum tệp. Sử dụng wget để tải xuống các tệp. Sử dụng md5sum để kiểm tra xem các tệp có được tải xuống đúng cách hay không.

Bạn có thể sử dụng điều này để tạo một kịch bản lệnh shell cho Linux hoặc Mac OS (thay thế ".cmd" trong lệnh thành .sh và làm "chmod a + x (tên tệp) để thêm quyền thực thi tập lệnh) hoặc tệp loạt lệnh Windows và một tệp MD5Sum để đảm bảo tệp được tải xuống chính xá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 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 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 số tiền MD5

Bạn có thể thêm chúng vào cuối các kịch bản 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 (Update Command)

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

Bạn cần sử dụng bunzip2 để trích xuất 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 ... với 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 /
    • bin /
      • 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 /
      • update.cmd
      • md5sum.txt
    • cài đặt, dựng lên/
      • install-foo.cmd
      • install-bar.cmd
      • upgrade.cmd
      • md5sum.txt

Sau đó thay đổi wget trong các dòng ở trên để ..\\bin\\wget.exe, md5sum đến ..\\bin\\md5sum.exe, v.v.

Thao tác này sẽ tách các tệp * .deb và liệt kê các tệp thành các thư mục khác nhau.

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

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

Tải xuống các tệp thi hành cho Windows

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

md5sum dành cho Windows: http://gnuwin32.sourceforge.net/packages/coreutils.htm hoặc là http://www.etree.org/cgi-bin/counter.cgi/software/md5sum.exe

Bạn cũng có thể sử dụng 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 được 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 tất cả mọi thứ trên lệnh sẽ làm việc, 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à hôm nay tôi chưa thử nghiệm 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 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 các kịch bản shell để cập nhật, nâng cấp và cài đặt các gói nếu bạn thường xuyên sử dụng các lệnh này.

27
2017-12-01 15:04



Bạn có thể tạo ra một gui đơn giản cho điều này :) - Tachyons
sử dụng các cửa sổ cho việc này có vẻ rất lạ ... - Alex R
Nó cũng có thể áp dụng cho Linux (điều này thực sự tốt hơn vì bạn không cần phải 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 một 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
-qq tùy chọn xuất hiện để chặn 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


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

Cách tạo kho lưu trữ ngoại tuyến được mô tả đây: Bạn chỉ cần tải xuống các tệp thích hợp từ archive.ubuntu.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 rchive cục bộ của *.deb tệp được mô tả trong các mục nhập blog khác nhau (xem đây và đây). Sarath Chandra tóm tắt như sau:

  1. Làm cho một dir có thể truy cập (ít nhất là bởi 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 thư mục thành một

    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
    

21
2018-05-01 19:01





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

Thực thi lệnh sau thay thế tên gói bằng các tên yêu cầu, tách biệt bằng dấu cách.

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 tải các gói đó xuống 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!


18
2017-11-02 08:14



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


Bạn có thể dùng Cube. Nó là một 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 kết nối internet khác và cài đặt chúng trở lại máy tính Linux ban đầu của bạn, ngoại tuyến.

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 xuống Cubetrang web của.


17
2017-08-05 08:37



là .deb hay .exe?
Không có tệp .deb vì nó độc lập, di động và có thể được thực hiện mà không cần cài đặt (chỉ cần chạy tệp bình thường khối lập phương). Cube.exe cũng được bao gồm cho người dùng windows. - Camicri
Nhiều người cần biết về điều này. Anh yêu em. - howderek
Tôi nhận được lỗi trong khi chạy ứng dụng này trên win 7 Ultimate 32 bit. Hình ảnh: i.stack.imgur.com/XW3wt.jpg  thông báo lỗi: Sự cố chữ ký: Sự cố Tên sự cố: CLR20r3 Bài toán Chữ ký 01: cube.exe Sự cố Chữ ký 02: 1.0.9.3 Bài toán Chữ ký 03: 54bd0258 Bài viết Chữ ký 04: glib-sharp Bài viết Chữ ký 05: 2.12.0.0 Bài toán Chữ ký 06: 517edc4c Bài viết Chữ ký 07: 1b4 Sự cố Chữ ký 08: 17 Sự cố Chữ ký 09: System.DllNotFoundException OS Phiên bản: 6.1.7600.2.0.0.256.1 ID ngôn ngữ: 16393 - Sandeep
Xin chào và cảm ơn bạn đã sử dụng Cube. Rất tiếc, phiên bản khối lập phương bạn đang sử dụng không còn được duy trì nữa. Vui lòng sử dụng phiên bản mới và ổn định, Máy chủ Cube: launchpad.net/cube-server. Xem câu trả lời được cập nhật ở trên. - Camicri