Odpowiedzi:
Sprawdź Keryx ; to menedżer repozytorium offline.
Jak to działa? Umożliwia pobieranie aktualizacji i nowych programów (z zależnościami) na dysk flash .
Jego interfejs jest podobny do synaptic, ale działa z pendrive (nie wymaga instalacji). Niestety, GUI potrzebuje wxwidgets, które nie są fabrycznie instalowane na Ubuntu (są one przeznaczone dla różnych platform i można je stąd zainstalować , a tutaj repozytorium Ubuntu ). Może instalować oprogramowanie tylko w systemie Ubuntu, ale możesz pobierać aktualizacje lub nowe pakiety w dowolnym systemie Linux, Windows lub OS X.
Tutaj znajdziesz samouczek .
Kolejny szczegółowy samouczek krok po kroku znajduje się w tej odpowiedzi .
Launchpad obsługuje również pliki do pobrania .
Zrzut ekranu:
keryx
bez problemów, chociaż wyraźnie wymaga dalszego rozwoju i ulepszeń.
Szybki hack polega na skopiowaniu wszystkich pakietów pobranych do instalacji na jego komputer ( szczegółowe instrukcje tutaj ). Pliki .deb są przechowywane /var/cache/apt/archives
, a następnie na innym komputerze uruchom Synaptic i wybierz File -> Add Package Downloaded
i przeszukaj folder, w którym umieścisz pliki i otwórz je, zaakceptuj wszystko (lub zainstaluj z terminala za pomocą polecenia sudo dpkg -i DEB_PACKAGE_NAME
).
UWAGA:
Zakłada się, że menedżer pakietów nie jest skonfigurowany do usuwania pakietów bezpośrednio po instalacji. Zakłada się również, że używasz tej samej wersji Ubuntu (10.10, 12.04 itd.) I wersji architektury (32b lub 64b) .
Repozytorium DVD
Jeśli chcesz uzyskać najnowsze poprawki błędów i łatki bezpieczeństwa, zapoznaj się z tym samouczkiem , który obejmuje tworzenie własnego repozytorium DVD.
sudo apt-get update
, nie zadziała to zbyt dobrze, nadal oszczędzasz czas podczas konfigurowania nowego systemu :)
/var/cache/apt/archives
do drugiego spowodowało, że pobrano tylko ~ 250 Mb. Nadal potrzebujesz połączenia, aby uruchomić instalację.
apt-get update
nie jest potrzebne, jeśli kopiujesz /var/lib/apt/lists
- ten katalog zawiera informacje o repozytorium, które są pobierane przez apt-get update
.
.deb
do mojego usb
z /var/cache/apt/archives
. Na drugim komputerze po prostu otworzyłem dysk USB i dwukrotnie kliknąłem ten, .deb
który uruchomił GUI Ubuntu Software Updater
. Łatwy pezy.
/var/cache/apt/archives
które już są (wbudowane), gdy instalowany jest Debian?. Powód, dla którego pytam o 4,8 GB, jest zbyt duży dla mojego napędu USB, który ma 4 GB.
Repozytorium USB
Jeśli masz dysk USB o przyzwoitej wielkości - przy założeniu około 4–8 Gb (lub zewnętrznego dysku twardego), możesz skonfigurować niestandardową kopię repozytorium Ubuntu i skonfigurować go jako lokalne repozytorium zgodnie z AptGet / Offline / Repository na help.ubuntu .com.
Aby uzyskać rzeczywiste pliki pakietów (pliki .deb), sugeruję użycie apt-mirror
.
apt-mirror
Pakiet pomoże Ci stworzyć własny lustro, które powinny być mniejsze niż 30GB pełnego repozytorium. Zainstaluj pakiet:
sudo apt-get install apt-mirror
i edytuj plik konfiguracyjny
gksudo gedit /etc/apt-mirror/mirror.list
lub od wersji Ubuntu 14.04
gksudo gedit /etc/apt/mirror.list
Uwzględnij tylko te sekcje repozytorium, które chcesz. Oto prosty przykład, który kopiuje binarne pliki .deb ze wszystkich 4 sekcji (głównej, ograniczonej, uniwersalnej i wieloświatowej), a także najnowsze poprawki błędów.
# 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
Szacuje się, że będziesz potrzebować około 15 GB miejsca na wszystkie 4 sekcje, bez źródła.
Podałem ścieżkę dla wszystkich plików .deb /tmp
, upewnij się, że masz wystarczającą ilość miejsca, aby twój dysk twardy się nie zapełnił (jeśli twój dysk się zapełni i komputer się zawiesi, /tmp
powinien zostać wyczyszczony przy ponownym uruchomieniu).
Jeśli chcesz tylko główne pliki, usuń z pliku konfiguracyjnego nazwy zastrzeżone, uniwersalne i wieloświatowe.
Jeśli używasz innej architektury (masz wersję 64-bitową, ale twój znajomy ma wersję 32-bitową), dodaj poniższe na początku pliku konfiguracyjnego mirror.list :
set defaultarch i386
Po uzyskaniu apt-mirror
konfiguracji, którą chcesz, uruchom apt-mirror
i idź zrób coś zabawnego lub zmieniającego życie, ponieważ uzyskanie repozytorium zajmie godziny lub dni (w zależności od połączenia i używanego serwera lustrzanego Ubuntu).
Po utworzeniu plików .deb skopiuj je na pamięć USB (lub zewnętrzny dysk twardy) i skonfiguruj lokalne repozytorium zgodnie z wcześniej wspomnianym artykułem.
Sprawdź, czy działa, zanim przekażesz go znajomemu!
sudo apt-get install apt-mirror
bezpośrednio na Ubuntu 16.10 (Yakkety Yak), edycja stacjonarna / Rufus / pamięć USB / tryb próbny, dostałem „ E: Unable to locate package apt-mirror
”. Wystąpiło połączenie z Internetem, zweryfikowane przez ping
.
sudo apt-get update
nie naprawiło tego.
Używam do tego apt-get z opcją „--print-uris”. Dodam też „-qq”, żeby było cicho.
Użyj sed, aby usunąć dodatkowe znaki dodane do niektórych nazw plików (np. 3% 2a) oraz uzyskać adres URL, nazwę pliku i sumę plików md5. Użyj wget, aby pobrać pliki. Użyj md5sum, aby sprawdzić, czy pliki zostały poprawnie pobrane.
Możesz go użyć do utworzenia skryptu powłoki dla systemu Linux lub Mac OS (zamień „.cmd” w poleceniach na .sh i wykonaj „chmod a + x (nazwa pliku), aby dodać uprawnienia do wykonania skryptu) lub plik wsadowy polecenia systemu Windows oraz plik MD5Sum, aby upewnić się, że pliki zostały poprawnie pobrane.
Utwórz skrypt:
sudo apt-get <<<apt-get command and options>>> --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > script.cmd
Przykłady:
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
Utwórz plik 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
Przykłady:
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
Potrzebujesz md5sum dla Windows, jeśli używasz tego systemu operacyjnego do pobierania plików.
Utwórz skrypt, aby pobrać wykazy repozytoriów:
sudo apt-get update --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) :/wget -c \1 -O \2.bz2/p" > update.cmd
Możesz dodać je na końcach skryptów, aby sprawdzić md5sum:
Linux:
md5sum --quiet -c md5sum.txt
Windows (używa starszej md5sum, nie obsługuje --quiet):
md5sum -c md5sum.txt
Aby dodać automatycznie do skryptu:
echo -e "md5sum -c md5sum.txt\npause" >> script.cmd
Uruchom te polecenia na komputerze docelowym.
Musisz użyć bunzip2, aby wyodrębnić pliki listy repozytoriów:
bunzip2 *.bz2
Następnie skopiuj do folderu z listą (bieżący folder zawiera tylko pliki list):
sudo cp * /var/lib/apt/lists/
Powyżej połączonych (bieżący folder może zawierać inne pliki):
for listfile in `ls *.bz2`; do bunzip2 $listfile; sudo cp ${listfile%.bz2} /var/lib/apt/lists/; done
Jeśli chcesz przyspieszyć pobieranie plików, spróbuj użyć Axela.
Wymień wget -c ... -O ...
się axel ... -o ...
.
Zwykle tworzę taki folder:
Następnie zmień wget
powyższe wiersze na ..\\bin\\wget.exe
, md5sum
na ..\\bin\\md5sum.exe
itp.
Spowoduje to rozdzielenie plików * .deb i wyświetlenie listy plików w różnych folderach.
sudo cp *.deb /var/cache/apt/archives/
sudo apt-get upgrade
lubsudo apt-get dist-upgrade
Wget dla Windows: http://gnuwin32.sourceforge.net/packages/wget.htm
md5sum dla Windows: http://gnuwin32.sourceforge.net/packages/coreutils.htm lub http://www.etree.org/cgi-bin/counter.cgi/software/md5sum.exe
Możesz także użyć tych z MinGW , których używam. Potrzebujesz tylko wget.exe, md5sum.exe i niezbędnych bibliotek współdzielonych. Sprawdź sekcję „Hierarchia folderów”.
-qq
opcja wydaje się tłumić wszystkie dane wyjściowe z apt-get update
. Przypuszczam, że tak naprawdę nie chcesz tej opcji.
Najpierw musisz uzyskać komputer z połączeniem internetowym, z którego można pobrać wymagane pliki .deb. Po pobraniu wszystkich plików możesz teraz utworzyć dysk CD / DVD ROM lub plik ISO, którego można użyć do zainstalowania oprogramowania pobranego na komputer w trybie offline.
Zacznij od czystej instalacji lub maszyny wirtualnej.
sudo apt-get install aptoncd
Zainstaluj żądane pakiety na jednym komputerze
sudo apt-get install gbrainy
Uruchom aptoncd
Kliknij Utwórz
Kliknij Nagraj i ustaw opcje, a następnie Zastosuj
Nagraj lub zapisz
Zauważ, że aptoncd tworzy kopie zapasowe tylko w bieżącej apt-cache.
Dlatego zaczęliśmy od czystej instalacji maszyny wirtualnej / nowej i zrobiliśmy to wszystko w jednym uruchomieniu.
Jak utworzyć repozytorium offline, opisano tutaj : Wystarczy pobrać odpowiednie pliki z archive.ubuntu.com . Alternatywnie możesz użyć apt-medium
.
EDYCJA: Inne podejście oparte na lokalnej bazie *.deb
plików opisano w różnych wpisach na blogu (patrz tutaj i tutaj ). Sarath Chandra podsumowuje w następujący sposób:
Udostępnij katalog (przynajmniej root)
sudo mkdir /var/my-local-repo
Skopiuj wszystkie pliki deb do tego katalogu.
Utwórz katalog jako
sudo bash -c 'dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz'
lub
sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
Dodaj lokalne repozytorium do źródeł
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
Krok 1: Uzyskaj adresy URL pobierania w pliku:
Wykonaj następujące polecenie, zastępując nazwy pakietów wymaganymi, oddzielając je spacją.
apt-get -y install --print-uris package-name | cut -d\' -f2 | grep http:// > apturls
Krok 2: Skopiuj ten plik (apturls) na maszynę, która ma szybki dostęp do Internetu i wykonaj następujące polecenie, aby pobrać pakiety:
wget -i path-to-apturls-file
Krok 3: Pobierz te pobrane pakiety na swój komputer i zainstaluj je, używając:
cd path-to-the-downloaded-packages-directory
sudo dpkg -i *.deb
Gotowy!
--print-uris
drukuje nawet zależności, które są już zainstalowane w systemie?
Możesz użyć Cube . Jest to przenośny menedżer pakietów, który pozwala pobierać pakiety na inny komputer podłączony do Internetu i instalować je z powrotem na oryginalnym komputerze z systemem Linux, offline.
Pobieranie aplikacji (w systemie Windows)
Instalowanie aplikacji (w systemie Linux)
Możesz pobrać go na stronie internetowej Cube .
W synaptic możesz wybrać pakiety, które chcesz zainstalować, aw pierwszym menu jest opcja wygenerowania skryptu, który możesz zabrać na inną maszynę i tam uruchomić. Ten skrypt „wget” (tj. „Pobierze”) wszystkie określone pakiety, które chciałeś (i ich zależności), które uruchamiasz na komputerze, który ma dostęp do Internetu.
Po uruchomieniu będziesz mieć wszystkie pliki pakietów potrzebne odłączonemu komputerowi. Noś je na dysku CD / USB i zainstaluj je sudo dpkg -i *.deb
.
curl
/ wget
kopii na niektóre nośniki zewnętrzne ...
Możesz użyć apt-offline
lub apt-offline-gui
.
Wymagania wstępne : System znajomego z połączeniem internetowym. apt-offline zainstalowany w obu systemach.
Instalacja offline odbywa się w 3 prostych krokach.
Krok 1 :
Wygeneruj plik podpisu w polu Disconnected Debian w domu
apt-offline set /tmp/apt-offline.sig
. Powyższe polecenie wygeneruje wszystkie informacje wymagane od apt o aktualizacji bazy danych.
Krok 2 :
Pobierz dane na podstawie wygenerowanego wcześniej pliku podpisu
apt-offline get C:\apt-offline.sig --threads 5
Powyższe polecenie pobierze dane, jak wspomniano w pliku podpisu. Aby przyspieszyć pobieranie (może to być z wielu repozytoriów apt), w tym przykładzie odradzamy 5 wątków pobierania.
Po zakończeniu możesz po prostu skopiować dane (plik archiwum, jeśli użyłeś opcji --bundle) z powrotem na nośnik wymienny i skopiować go z powrotem na hosta offline.
Krok 3 :
Po powrocie do domowej maszyny Debian podajesz dane z wymiennego nośnika do apt-offline:
apt-offline install /media/USB/apt-offline.zip
Spowoduje to bezproblemową aktualizację bazy danych APT na odłączonym komputerze.
Apt-offline może być nawet używany w systemach Windows. Moim zdaniem apt-offline
jest najlepszą opcją do instalacji offline.
Istnieje kilka dobrych, skutecznych odpowiedzi wymienionych powyżej. Jest to jednak mechanizm, którego osobiście używam - apt-ftparchive . Dokumentuję to tutaj, na wypadek, gdy będę go potrzebować w przyszłości. Być może może ci się przydać.
Tworzenie migawki archiwum
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/
Korzystanie z migawki archiwum w systemie docelowym offline
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
Do instalacji offline potrzebne będą pakiety. Jeśli używasz systemu Debian
.deb
rozszerzeniem i użyj go, dpkg -i package_name
aby go zainstalować Pobierz źródłowy plik archiwum z rozszerzeniem .tar.gz
lub .tar.bz2
, a następnie wypakuj go i zainstaluj za pomocą:
tar -zxvf your_pack.tar.gz` or tar `-jxvf your_pack.tar.bz2
make
sudo make install
make clean (optional, and may prevent uninstallation)
Możesz mieć problemy z zależnościami. Musisz zainstalować je wszystkie, aby instalacja w trybie offline przebiegła pomyślnie.
Tak. Możesz pobrać płytę DVD ISO, nagrać ją na płytę DVD i zainstalować oprogramowanie z płyty DVD. Zobacz tutaj Płyty CD i DVD można podawać jako źródło menedżerom pakietów w taki sam sposób, jak archiwa online.
Pierwszą rzeczą, którą możesz zrobić przed instalacją pakietu offline, jest zaktualizowanie potrzebnego repozytorium / repozytoriów. Powinieneś na pewno zaktualizować główne repozytorium (darmowe i oficjalnie obsługiwane oprogramowanie).
Aplikacje, które chcesz zainstalować, mogą znajdować się w niektórych innych repozytoriach, takich jak Wszechświat (bezpłatne, ale nie oficjalne wsparcie), lub Ograniczone (niewolne, oficjalnie obsługiwane) lub Multiverse (niewolne, brak oficjalnego wsparcia) . Więc możesz chcieć jednego lub więcej z nich.
Pierwszym krokiem w tym procesie jest zbudowanie zaktualizowanego repozytorium offline; następnie wygeneruj listę „do pobrania” i pobierz ją, a na końcu izolację. Oto jak to się robi: źródło
Wpisz adres URL: http://archive.ubuntu.com/ubuntu/dists/ suiteCodename, gdzie suiteCodename należy odpowiednio zastąpić, powiedz dokładnie dla Ubuntu 12.04 (Precise Pangolin) [lub utopic dla Ubuntu 14.10 (Utopic Unicorn)], abyś teraz znajdziesz się na stronie http://archive.ubuntu.com/ubuntu/dists/precise/ lub w dowolnym innym specyficznym dla posiadanego pakietu.
Pobierz pliki Release , Release.gpg oraz Contents - ????. Gz dla swojej architektury (tzn. Contents-i386.gz , zakładając, że twoja architektura to i386). Zapisz te trzy pliki w katalogu / folderze nazwanym na cześć swojego SuiteCodename ( dokładnie dla Precise Pangolin).
Następnie musisz wykonać następujące czynności dla każdego repozytorium (spośród Main, Universe, Restricted, Multiverse ), które chcesz.
za. przejdź do katalogu repozytorium docelowego np. main, a następnie do katalogu architektury np. binary-i386 , abyś był w http://archive.ubuntu.com/ubuntu/dists/suiteCodename/repositoryName/binary-????/
b. pobierz zawartość Packages.bz2, Packages.gz, Release i zapisz je w katalogu o nazwie po nazwie repozytorium, np. main i umieść ten katalog we wcześniej utworzonym katalogu suiteCodename .
do. powtórz a. oraz b. dla każdego z repozytoriów, które chcesz.
Wreszcie powinieneś mieć taką strukturę:
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
(zakładając, że twoja nazwaKodu = = dokładna, architektura to i386 i potrzebujesz repozytoriów głównych i wszechświatowych)
Następnie, po pobraniu zaktualizowanych repozytoriów, umieścisz pobrane pliki w odpowiedniej strukturze (jak pokazano powyżej) w katalogu docelowego komputera offline. Zapisz strukturę katalogów precise
w folderze o nazwie offlineRepository / dists / exact w swoim domu użytkownika ( ~/offlineRepository/dists/precise
) lub gdziekolwiek indziej ( /home/offlineRepository/dists/precise
używając sudo w wersji na terminalu lub z uruchomionym menedżerem plików Nautilus gksu nautilus
; upewnij się również, że masz odpowiednie uprawnienia do skopiowanej struktury) . Informacje z repozytorium offline byłyby wtedy gotowe do użycia.
Dodaj lokalne repozytorium do listy źródeł . W Centrum oprogramowania Ubuntu przejdź do Edycja -> Źródła oprogramowania ... -> Inne oprogramowanie -> Dodaj ... a następnie w polu wiersza APT dodaj: deb file:///home/offlineRepository precise main universe
i kliknij Dodaj źródło . Upewnij się, że zmodyfikowałeś linię co do struktury katalogu / pliku i pakietu. Następnie ponownie załaduj pakiety lub uruchom sudo apt-get update
w terminalu.
Teraz dzięki zaktualizowanym (i prawdopodobnie również nowo dodanym repozytoriom) możesz zrzucić listę adresów URL pakietów i zależności.
Pożyczam następujący wiersz kodu z jednego z poprzednich postów askUbuntu:
sudo apt-get install packageName --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
na przykład. aby zainstalować Menedżera pakietów Synaptic:
sudo apt-get install synaptic --print-uris | grep -o '\'http.*\' | tr "\'" " " > /tmp/package-list.txt
(Można również generować listy aktualizacji w podobny sposób.)
Wygenerowaną listę można wykorzystać do pobrania pakietu i całych zależności na komputer online. Utwórz skrypt do pobrania lub użyj listy do pobierania wsadowego w niektórych menedżerach pobierania. (Zauważ też, że wygenerowany plik tekstowy używa zakończenia linii Unix / Linux i który możesz chcieć zmienić na Windows.) Był to łatwiejszy sposób, gdy Synaptic Package Manager był domyślną aplikacją w Ubuntu.
Wreszcie w systemie docelowym możesz zainstalować pakiety za dpkg
pomocą lub w inny sposób.
Poniższa struktura, oprócz powyższego wyjaśnienia, powinna dać ci pomysł:
/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
Po przejrzeniu odpowiedzi tutaj: Jak mogę zainstalować oprogramowanie lub pakiety bez Internetu (offline)? , Uważam ten kod za Arnel A. Borja za najbardziej przydatny.
sudo apt-get install PACKAGE --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh
Tak czy inaczej, oto kilka instrukcji dla kompletnych nowicjuszy. Mam nadzieję, że okażą się one przydatne.
cd FOLDERNAME
(Przykład:cd Desktop
)
Wskazówka: Można również użyćdir
komendy do listy folderów.
Przykładowy kod do pobrania Menedżera pakietów Synaptic:
sudo apt-get install synaptic --print-uris -qq | sed -n "s/'\([^ ]\+\)' \([^ ]\+\) \([^ ]\+\) MD5Sum:\([^ ]\+\)/wget -c \1/p" > install.sh
Przykładowy kod do pobrania odtwarzacza 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
Lub możesz użyć programu takiego jak Synaptics do zainstalowania pakietów. (Synaptics: Plik - Dodaj pobrane pakiety)
Możesz też kliknąć pliki dwukrotnie. To otworzy Centrum oprogramowania Ubuntu. Po załadowaniu centrum oprogramowania naciśnij przycisk instalacyjny. Powtarzaj tę czynność, aż wszystkie pliki w folderze zostaną zainstalowane.
Mam mały skrypt Pythona, który można uruchomić w systemie Windows, który analizuje stronę internetową pakietu ubuntu, aby znaleźć drzewo zależności i pobrać wszystkie potrzebne pakiety + przeprowadzić weryfikację sumy kontrolnej.
To może oczywiście pobrać więcej niż potrzeba, ale było to dla mnie najprostsze rozwiązanie.
https://gist.github.com/Zitrax/2bad212a3b0571357e1b
Następnie można pobrać wszystkie pobrane pakiety dpkg -i E pkg\*
. Pozwala to uniknąć ponownej instalacji już zainstalowanych pakietów.
Stosowanie:
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)
W przypadku systemu, który zawsze będzie utrzymywany w trybie offline, zwykle najlepiej jest użyć jednej z niezawodnych metod zarządzania pakietami offline przedstawionych w innych odpowiedziach. Dzieje się tak, ponieważ ułatwiają aktualizowanie już zainstalowanych pakietów, zamiast instalować tylko kilka pakietów za jednym razem.
Jednak w pojedynczych przypadkach, gdy chcesz po prostu szybko zainstalować pakiety w systemie, który nie ma połączenia z Internetem (i masz możliwość pobrania ich na inny komputer i przeniesienia ich), możesz to zrobić. Główną komplikacją jest określenie, czego potrzebujesz, ponieważ pakiet często zawiera inne pakiety, od których zależy, i dlatego należy go zainstalować przed zainstalowaniem pakietu lub w tym samym czasie.
Ta odpowiedź jest motywowana przez duplikat pytania g ++ w Ubuntu 14.04 , a g++
jego podstawowym przykładem jest konieczność instalacji .
Podkreślam, że ta metoda nie powinna być stosowana długoterminowo jako alternatywa dla czegoś, co przynajmniej ułatwia automatyczne określanie i instalowanie potrzebnych aktualizacji bezpieczeństwa. Nigdy nie łącząc się z siecią znacznie zmniejsza ryzyko ataku, ale niektóre błędy bezpieczeństwa można wykorzystać za pomocą danych z dowolnego źródła.
Chociaż ta metoda może wydawać się złożona, zwykle zajmuje to tylko kilka minut. W przypadku pakietów z dużą liczbą zależności może to potrwać dłużej. W przypadku instalowania metapakietów, które pobierają bardzo dużą liczbę zależności (np. W ubuntu-desktop
minimalnym systemie), pobranie wszystkich niezbędnych plików .deb może potrwać znacznie dłużej, a ta metoda raczej nie będzie odpowiednia.
Możesz zasymulować instalację, aby określić, które inne pakiety są potrzebne do spełnienia zależności pakietu. Przekazanie -s
flagi do apt-get
( przed określeniem jakiejkolwiek akcji) robi to.
apt-get -s install g++
Pominąłem sudo
, ponieważ jest to tylko symulacja, więc uprawnienia rootowania nie są potrzebne.
Jeśli chcesz zainstalować wszystkie najczęściej używane narzędzia do budowania pakietów, a nie tylko g++
, możesz preferować:
apt-get -s install build-essential
Dane wyjściowe (for g++
) będą wyglądać mniej więcej tak:
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])
Ten mówi, że aby zainstalować g++
w moim systemie, muszę pakietów g++
, g++-4.8
oraz libstdc++-4.8-dev
.
Przejście przez wyniki symulacji jest zwykle lepsze niż po prostu sprawdzenie zależności pakietu (lub założenie, że to, czego potrzebujesz, jest takie samo jak powyżej), ponieważ:
Gdy wiesz, jakie pakiety potrzebujesz, możesz je pobrać. Sugeruję użycie do tego Launchpada, ponieważ pliki do pobrania są szyfrowane SSL, co pomaga zapobiec uszkodzeniu plików.
apt-get
lub Software Center nie wymaga HTTPS, ponieważ jego skrót jest weryfikowany na cyfrowo podpisanej liście skrótów. Jeśli w końcu umieścisz te pakiety w pamięci podręcznej pakietów i użyjesz ich apt-get
do zainstalowania, tak się stanie.dpkg -i
, nie będzie to możliwe.Możesz wyszukać pakiet, wpisując jego nazwę w polu Pakiety na https://launchpad.net/ubuntu i klikając „Znajdź pakiet”. Na przykład wyszukiwanie g++-4.8
powoduje przejście do strony pakietu źródłowego gcc-4.8 .
Następnie przewiń w dół do nazwy kodowej wersji Ubuntu. Masz 14.04, więc to jest Trusty Tahr. Nazwy kodowe wszystkich wydań Ubuntu są wymienione na stronie wiki wydań . Kliknij trójkąt skierowany w prawo, aby wyświetlić pobrane pakiety.
W przypadku niektórych pakietów możesz rozszerzyć listy pobrań z więcej niż jednej kieszeni . Możesz zobaczyć:
Na przykład oto, co jest dostępne dla Firefoksa w 14.04:
Zasadniczo będziesz potrzebować pakietów zabezpieczających lub aktualizacji, jeśli takie istnieją, a w przeciwnym razie pakietów w wydaniu .
Po rozwinięciu listy pakietów znajdź .deb
plik dla swojej architektury. Debaty są nazywane . Najpopularniejsze architektury to:name_version_architecture.deb
amd64
, zarówno dla procesorów Intel, jak i AMD)i386
również dla obu)Na przykład, aby uzyskać g++-4.8
pakiet dla 64-bitowej wersji Ubuntu, możesz pobrać g++-4.8_4.8.4-1ubuntu15_amd64.deb
.
Jeśli masz pakiety pobierane są same wersje , które apt-get
jest install
akcja będzie już automatycznie pobrane i zainstalowane (gdyby były połączone sieciowo systemu), a następnie można umieścić w pakiety /var/cache/apt/archives
i po prostu uruchomić to polecenie:
sudo apt-get install g++
Jeśli ten system nigdy nie był podłączony do Internetu, prawdopodobnie tak będzie, gdy wszystkie pakiety, które odzyskałeś, pochodziły z kieszeni wydania . Niezależnie od tego, czy system był kiedykolwiek podłączony do Internetu, prawie zawsze tak będzie, jeśli na Launchpad nie zostaną wyświetlone żadne pakiety w innych kieszeniach. (Zasadniczo jedyna taka sytuacja nie będzie, jeśli zainstalujesz system alfa lub beta i nigdy go nie zaktualizujesz).
W konkretnym przypadku instalacji g++
skorzystałbym apt-get
.
W przypadkach, gdy to nie działa lub oczekujesz, że nie zadziała, zainstaluj pakiety, umieszczając je w innym pustym folderze i uruchamiając:
sudo dpkg -Ri /path/to/folder
Lub możesz nazwać paczki indywidualnie. W tym przykładzie założono, że pakiety znajdują się w bieżącym katalogu (tzn. Że cd
przeszedłeś do katalogu zawierającego je):
sudo dpkg -i package1.deb package2.deb ...
O ile liczba instalowanych pakietów nie jest bardzo mała i nie znasz dokładnej kolejności, w jakiej należy je zainstalować, aby zależności były spełnione, znacznie skuteczniejsze jest stosowanie tych metod niż ręczne instalowanie każdego pakietu osobno.
Jeśli nie masz żadnego połączenia z Internetem i nie masz nikogo w pobliżu, gdzie możesz połączyć się z Internetem, istnieje opcja, o której jeszcze nie wspomniano: niech ktoś wyśle pliki źródłowe zwykłą pocztą.
Cały system operacyjny Ubuntu można uzyskać pocztą, płacąc za DVD. W ten sam sposób możesz poprosić znajomego on-line o przesłanie ci plików DEB, a nawet plików źródłowych pakietu takiego jak VLC. Chociaż może być warte wysłania kompletnego DVD ze wszystkimi paczkami. W ten sposób możesz zainstalować go z tego DVD.
To nie jest do końca szczegółowa odpowiedź, ale na wysokim poziomie możesz:
Proponuję dostosować Live CD i zainstalować je.
Możesz także pobrać pliki ze strony http://packages.ubuntu.com/ nazwa_pliku , ale musisz także zwrócić uwagę na zależności.
Inną możliwością jest użycie remastersys. To narzędzie pozwala na tworzenie obrazu ISO z własnego systemu, a po utworzeniu bootowalnej pamięci USB poprzez unetbootin możesz zainstalować dostosowany system na dowolnej liczbie komputerów.
Mam kilka prostych sugestii. Możesz iść do biblioteki. W sekcji dotyczącej komputera wyszukaj odpowiedni system operacyjny, niektóre książki zawierają dyski DVD. Ponadto, jeśli chcesz mieć najnowszy system operacyjny, polecam tę stronę internetową, na której możesz kupić DVD za symboliczną opłatą. www.ubuntu.com/download/desktop.
To pytanie jest trochę stare, więc odpowiedź może być w tej chwili zbędna, ale być może możesz spróbować użyć dpkg-offline . Zainstaluj bzr, a następnie:
bzr branch lp:dpkg-offline
zawiera samouczek i plik readme.
Zakładając, że chcesz zainstalować git na systemie Ubuntu 14.04 amd64, nawet jeśli twój system to np. 12.04 i386, możesz:
dpkg-offline ubuntu-14.04-desktop-amd64.iso git
apt-get
do zainstalowania pakietów.dpkg-offline będzie działał z dowolną wersją Ubuntu od 10.04 (nie testowałem ze starszymi wersjami, ale powinny one również działać), a także z dowolną wersją serwera Ubuntu od 12.10. Powinien także działać z obrazami amd64, i386 i armhf, niezależnie od architektury hosta. Ponownie nie testowałem z arm64 lub powerpc / ppc64el, ale mogą również działać.
Uwaga: Napisałem dpkg-offline.
Niektóre pakiety są instalowane na pendrivie USB. Odinstalowałem network-manager
i chcę zainstalować ponownie.
W ten sposób dostałem kij, z którego zainstalowałem system operacyjny (Lubuntu 17.10). To było/dev/sdb
Zamontuj drążek na ścieżce ( /tmp/mnt
w moim przypadku)
mkdir /tmp/mnt
sudo mount /dev/sdb1 /tmp/mnt
Następnie edytuję, /etc/apt/sources.list
aby zawierał tylko
deb file:///tmp/mnt/ main universe
Tak robię
sudo apt-get update
I mogę zainstalować network-manager
.
Uwaga: To może nie być odpowiedź na powyższe pytanie, ale na pytanie, które miałem, patrząc na to pytanie.
sources.list
a następnie przywrócić ją.