Domanda Come posso installare software o pacchetti senza Internet (offline)?


Ho un amico che ha un computer che non è connesso a Internet. C'è un modo per installare software offline facilmente?


238
2017-08-05 06:12


origine


Anche il seguente link potrebbe essere interessante per te. askubuntu.com/questions/86358/... - starkus


risposte:


Check-out Keryx; è un gestore di repository offline.

Come funziona? Ti permette di scaricare aggiornamenti e nuovi programmi (con dipendenze) al tuo unità flash.

La sua interfaccia è simile a quella sinaptica, ma funziona da una pendrive (non ha bisogno di installazione). Sfortunatamente, la GUI ha bisogno di wxwidgets, che non vengono preinstallati su Ubuntu (sono multipiattaforma e installabili da Qui e repository Ubuntu Qui). Può solo installare software in un sistema Ubuntu, ma è possibile scaricare gli aggiornamenti oi nuovi pacchetti in qualsiasi Linux, Windows o OS X.

Qui puoi trovare un tutorial.

Un altro tutorial dettagliato passo-passo è in questa risposta.

Launchpad ospita anche file scaricabili.

Uno screenshot:

Screenshoot


123
2017-08-05 09:01



keryx non è più in fase di sviluppo, se stai provando questo su una versione più recente di Ubuntu, usa la versione portatile per salvarti dal problema delle dipendenze. - Alex R
Io uso ancora keryx senza problemi, anche se ha chiaramente bisogno di ulteriori sviluppi e miglioramenti. - carnendil
Come lo uso? - carnendil
Cosa succede se l'altro computer offline non ha gcc, g ++? È una nuova ubuntu installata. Come posso installare wxwidgets? Senza wxwidgets, si lamenta del modulo mancante ... - buzhidao
Ho appena rilasciato una nuova versione di Keryx (0.92.5), che potrebbe risolvere alcuni problemi. La versione compilata dovrebbe contenere dipendenze come wxWidgets e consentire di eseguire su Windows senza problemi. - mac9416


Un rapido trucco

Un trucco rapido è copiare tutti i pacchetti scaricati per l'installazione sulla sua macchina (istruzioni dettagliate qui). I file .deb sono archiviati in /var/cache/apt/archives, poi nell'altro lancio del computer Synaptic e selezionare File -> Add Package Downloaded e cerca nella cartella dove hai messo i file e aperto, accetta tutto (o installa dal terminale usando il comando) sudo dpkg -i DEB_PACKAGE_NAME).

NOTA:
Questo presuppone che il tuo gestore di pacchetti non sia configurato per cancellare i pacchetti subito dopo l'installazione. Suppone anche che tu stia utilizzando la stessa versione di Ubuntu (10.10, 12.04, ecc.) e la versione dell'architettura (32b o 64b).


Un repository di DVD

Se vuoi le ultime correzioni di bug e patch di sicurezza disponibili, dai un'occhiata questo tutorial, che copre la creazione del tuo repository DVD.


55
2017-08-05 10:38



Se non puoi correre sudo apt-get update questo non funzionerà molto bene, ancora un buon risparmio di tempo quando si imposta un nuovo sistema :) - GM-Script-Writer-62850
D'accordo, ho appena aggiornato due computer a 13.10 dalla 13.04. Il primo doveva scaricare ~ 1,8 GB, copiando il contenuto di /var/cache/apt/archives al secondo uno ha fatto scaricare solo ~ 250Mb. Tuttavia, è necessaria una connessione per eseguire l'installazione. - Maxime R.
apt-get update non è necessario se si copia /var/lib/apt/lists - questa directory contiene le informazioni sul repository che vengono scaricate da apt-get update. - ignis
Ho copiato il mio .deb oltre al mio usb a partire dal /var/cache/apt/archives . Sull'altro computer ho semplicemente aperto l'unità USB e ho fatto doppio clic su .deb che ha lanciato la GUI di Ubuntu Software Updater. Facile pezy. - Jacksonkr
@ jr0cket: C'è un modo per evitare i pacchetti in questa cartella /var/cache/apt/archives quale già (integrato) arriva quando Debian è installato?. Il motivo per cui sto chiedendo questo è 4,8 GB è troppo grande per la mia unità USB che è 4 GB. - justin


Un archivio USB

Se si dispone di una chiavetta USB di dimensioni decenti - supponendo circa 4-8 GB (o disco rigido esterno) è possibile impostare una copia personalizzata del repository Ubuntu e configurarla come un repository locale come Apt-get / Offline / Repository  su help.ubuntu.com.

Per ottenere i file del pacchetto reale (i file .deb), suggerisco di usare apt-mirror.

Il apt-mirror il pacchetto ti aiuterà a creare un mirror personalizzato che dovrebbe essere più piccolo del 30Gb del repository completo. Installa il pacchetto:

sudo apt-get install apt-mirror

e modifica il suo file di configurazione

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

o da Ubuntu 14.04

gksudo gedit /etc/apt/mirror.list

Includere solo le sezioni del repository che si desidera. Ecco un semplice esempio che copia i file .deb binari da tutte e 4 le sezioni (principale, limitato, universo e multiverso) e le ultime correzioni di bug.

# 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

Si è ipotizzato che avrete bisogno di circa 15 GB di spazio per tutte e 4 le sezioni, senza la fonte.

Ho inserito il percorso per tutti i file .deb /tmp, assicurati di avere abbastanza spazio in modo che il tuo disco rigido non si riempia (se il tuo disco rigido si riempie e il tuo computer si blocca, /tmpdovrebbe essere cancellato con un riavvio).

Se si desidera solo i file principali, rimuovere i nomi restricted, universe e multiverse dal file di configurazione.

Se stai usando un'architettura diversa (hai 64 bit, ma il tuo amico ha 32 bit) quindi aggiungi quanto segue all'inizio del mirror.list file di configurazione:

set defaultarch i386

Una volta che hai il apt-mirror configurazione che vuoi, corri apt-mirror e vai a fare qualcosa di divertente o di cambiare la vita in quanto ci vorranno ore o giorni per ottenere il repository (a seconda della tua connessione e del mirror di Ubuntu che stai utilizzando).

Una volta ottenuti i file .deb, copiare i file nella chiavetta USB (o nel disco rigido esterno) e impostare il repository locale come indicato nell'articolo menzionato in precedenza.

Prova a funzionare prima di portarlo al tuo amico!


38
2018-04-18 20:55



Il pacchetto apt-mirror è dettagliato a: apt-mirror.sourceforge.net - jr0cket
Quando ci ho provato sudo apt-get install apt-mirror dritto su Ubuntu 16.10 (Yakkety Yak), desktop edition / Rufus / USB stick / modalità di prova, ho ottenuto "E: Unable to locate package apt-mirror"C'era una connessione a Internet, verificata da ping. - Peter Mortensen
In esecuzione sudo apt-get update non aggiustarlo - Peter Mortensen


È necessario prima avere un PC con connessione Internet, dove è possibile scaricare i file .deb richiesti. Una volta scaricati tutti i file, è ora possibile creare un CD / DVD rom o un file ISO che è possibile utilizzare per installare il software scaricato nel PC offline.

Inizia con un'installazione pulita o VM.
sudo apt-get install aptoncd 

Installa i pacchetti che desideri su un PC
sudo apt-get install gbrainy 

Esegui aptoncd
enter image description here
Fai clic su Crea
enter image description here
Fai clic su Masterizza e imposta le opzioni, quindi su Applica
enter image description here
Masterizzalo o salvalo
enter image description here

Nota che aptoncd esegue solo il backup delle cose nell'attuale cache di apt.
Questo è il motivo per cui abbiamo iniziato con una nuova VM / nuova installazione e fatto tutto questo in una sola volta.


29
2017-10-26 07:55



mooooolto, stai dicendo se realizzo un vm e installo tutte le app che voglio, quindi eseguo questo programma, porta il cd / dvd sul pc offline. e installerebbe tutte le app su di esso? - Alex
Finché si utilizza lo stesso supporto di sistema di base, sì. Se stai distribuendo un ufficio e vuoi un modo semplice e veloce per aggiungere qualcosa, questo diventa molto utile. Se usi il pacchetto create-meta, sì - RobotHumans
Il ripristino dall'immagine richiede l'installazione di hal, ma è deprecato e non è più supportato per quanto ho capito. - Flashrunner
C'è una build per vivido code.launchpad.net/~ubuntu-branches/ubuntu/vivid/hal/vivid - RobotHumans


Io uso apt-get con l'opzione "--print-uris" per farlo. Aggiungo anche "-qq" quindi sarebbe tranquillo.

Usa sed per rimuovere caratteri extra aggiunti ad alcuni nomi di file (qualcosa come 3% 2a) e per ottenere l'url, nomefile e md5sum di file. Usa wget per scaricare i file. Usa md5sum per verificare se i file vengono scaricati correttamente.

Puoi usarlo per creare uno script di shell per Linux o Mac OS (sostituisci ".cmd" nei comandi a .sh e fai "chmod a + x (nome file) per aggiungere il permesso di eseguire lo script) o un file batch di comando di Windows e un file MD5Sum per assicurarsi che i file vengano scaricati correttamente.

comandi

Crea script:

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

Esempi:

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

Crea il file 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

Esempi:

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

È necessario md5sum per Windows se si utilizza quel sistema operativo per scaricare i file.


Crea script per scaricare elenchi di repository:

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

Controllo delle somme MD5

Puoi aggiungere questi alla fine degli script per controllare md5sum:

Linux:

md5sum --quiet -c md5sum.txt

Windows (usa md5sum precedente, non supporta --quiet):

md5sum -c md5sum.txt

Per aggiungere automaticamente allo script:

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

Installazione dei file di elenco (comando di aggiornamento)

Esegui questi comandi sul computer di destinazione.

È necessario utilizzare bunzip2 per estrarre i file dell'elenco dei repository:

bunzip2 *.bz2

Quindi copiare nella cartella dell'elenco (la cartella corrente contiene solo file di elenco):

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

Sopra combinato (la cartella corrente può contenere altri file):

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

Download più veloci

Se vuoi rendere più veloce il download dei file, prova ad usare Axel.

Sostituire wget -c ... -O ... con axel ... -o ....

Gerarchia di cartelle (download di file tramite Windows)

Generalmente creo una cartella come questa:

  • apt-get /
    • bidone/
      • msys-1.0.dll
      • msys-intl-8.dll
      • wget.exe
      • msys-iconv-2.dll
      • md5sum.exe
      • libeay32.dll
      • libintl3.dll
      • libssl32.dll
      • libiconv2.dll
    • aggiornare/
      • update.cmd
      • md5sum.txt
    • installare/
      • install-foo.cmd
      • install-bar.cmd
      • upgrade.cmd
      • md5sum.txt

Quindi cambia wget nelle righe sopra a ..\\bin\\wget.exe, md5sum a ..\\bin\\md5sum.exe, eccetera.

Questo separerà i file * .deb e elencerà i file in diverse cartelle.

Aggiornamento del sistema

  1. Avvia il computer di destinazione che utilizza Ubuntu
  2. Crea uno script per l'aggiornamento
  3. Avviare su un computer con una connessione internet
  4. Esegui update.sh (per Linux o Mac OS) o update.cmd (Windows)
  5. Torna al computer di destinazione
  6. Installa i file di elenco
  7. Crea uno script per upgrade / dist-upgrade (aggiungi i comandi md5sum per terminare)
  8. Torna al computer con connessione internet
  9. Eseguire upgrade.sh/dist-upgrade.sh (Linux o Mac OS) o upgrade.cmd / dist-upgrade.cmd (Windows)
  10. Torna al computer di destinazione
  11. Copia i file * .deb nella cache: sudo cp *.deb /var/cache/apt/archives/
  12. Correre: sudo apt-get upgrade o sudo apt-get dist-upgrade

Scarica eseguibili per Windows

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

md5sum per Windows: http://gnuwin32.sourceforge.net/packages/coreutils.htm o http://www.etree.org/cgi-bin/counter.cgi/software/md5sum.exe

Puoi anche usare quelli da MinGW, che sono quello che uso. Hai solo bisogno di wget.exe, md5sum.exe e delle librerie condivise necessarie. Controlla la sezione "Gerarchia delle cartelle".

Gli appunti

  • Non sono del tutto sicuro che tutti i comandi precedenti funzioneranno, dal momento che non li uso da un mese. Soprattutto il comando di aggiornamento, che non ho testato oggi alcune parti di esso.
  • Per vedere facilmente i risultati dei comandi, aggiungi una linea di "pausa" alla fine degli script, se usi Windows.
  • Raccomando di creare script di shell per aggiornare, aggiornare e installare i pacchetti se usi spesso questi comandi.

27
2017-12-01 15:04



Puoi creare un semplice gui per questo :) - Tachyons
usare Windows per questo sembra molto strano ... - Alex R
È applicabile anche a Linux (che è in realtà migliore perché non è necessario installare md5sum e wget). La parte Windows è per coloro che non hanno un computer Linux con connessione internet, quindi puoi usarlo in un internet cafè o nel computer di un amico che ha solo Windows. - Arnel A. Borja
-qq opzione sembra sopprimere tutto l'output da apt-get update. Suppongo che tu non voglia questa opzione. - Ruslan


Repository offline

Viene descritto come creare un repository offline Qui: Devi solo scaricare i file appropriati da archive.ubuntu.com. In alternativa, puoi usare apt-medium.

EDIT: un altro approccio basato su un rchive locale di *.deb i file sono descritti in diversi post di blog (vedi Qui e Qui). Sarath Chandra riassume come segue:

  1. Rendi accessibile una directory (almeno da root)

    sudo mkdir /var/my-local-repo
    
  2. Copia tutti i file deb in questa directory.

  3. Crea la directory come a

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

    o

    sudo dpkg-scanpackages /var/my-local-repo /dev/null | gzip -c9 > /var/my-local-repo/Packages.gz
    
  4. Aggiungi il repository locale alle fonti

    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





Passaggio 1: ottieni gli URL di download in un file:

Esegui il seguente comando sostituendo i nomi dei pacchetti con quelli richiesti, separandoli per uno spazio.

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

Passaggio 2: copia questo file (apripl) in una macchina che ha accesso a Internet ad alta velocità ed esegui il seguente comando per scaricare i pacchetti:

wget -i path-to-apturls-file 

Passaggio 3: Ora scarica i pacchetti scaricati sul tuo computer e installali utilizzando:

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

sudo dpkg -i *.deb

Fatto!


18
2017-11-02 08:14



fa --print-uris stampare anche le dipendenze già installate nel sistema? - yuric


Puoi usare Cubo. È un gestore di pacchetti portatile che ti consente di scaricare pacchetti su un altro computer connesso a Internet e di installarli sul tuo computer Linux originale, offline.

Download di app (su Windows)

Installazione di app (su Linux)

Puoi scaricarlo su CuboIl sito web di


17
2017-08-05 08:37



è .deb o .exe?
Non esiste un file .deb perché è standalone, portabile e può essere eseguito senza installazione (basta eseguire il file cube-normal). Cube.exe è anche incluso per gli utenti di Windows. - Camicri
Più persone hanno bisogno di sapere questo. Ti amo. - howderek
Ricevo un errore durante l'esecuzione di questa applicazione su Win 7 Ultimate 32 bit. Immagine : i.stack.imgur.com/XW3wt.jpg  messaggio di errore: Firma problema: Nome evento problema: CLR20r3 Problema Firma 01: cube.exe Problema Firma 02: 1.0.9.3 Problema Firma 03: 54bd0258 Problema Firma 04: glib-sharp Problema Signature 05: 2.12.0.0 Problema Firma 06: 517edc4c Problema Firma 07: 1b4 Problem Signature 08: 17 Problem Signature 09: System.DllNotFoundException Versione SO: 6.1.7600.2.0.0.256.1 ID impostazioni internazionali: 16393 - Sandeep
Ciao e grazie per aver utilizzato Cube. Sfortunatamente, la versione del cubo che stai utilizzando non viene più mantenuta. Si prega di utilizzare il nuovo e stabile, Cube Server: launchpad.net/cube-server. Vedere la risposta aggiornata sopra. - Camicri


In synaptic puoi selezionare i pacchetti che vuoi installare e sotto il primo menu c'è un'opzione per generare uno script che puoi portare su un'altra macchina ed eseguirlo. Questo script "wget" (cioè "scarica") tutti i pacchetti che hai specificato (e le loro dipendenze) che hai eseguito su un computer fa avere accesso a internet

Una volta eseguito, avrai tutti i file del pacchetto necessari al computer disconnesso. Trasportali su un CD / chiavetta USB e installali da sudo dpkg -i *.deb.


16
2017-07-21 07:18



è un bel trucco ma 2 computer per fare il processo? Hmmmm - Suhaib


Puoi usare apt-offline o apt-offline-gui.
Pre-requistes: Sistema di un amico con connessione Internet. apt-offline installato in entrambi i sistemi.

L'installazione offline è realizzata in 3 semplici passaggi.

Passo 1:
Genera un file di firma nella casella Disconnected Debian a casa
apt-offline set /tmp/apt-offline.sig
Il comando precedente genererà tutte le informazioni richieste da apt sull'aggiornamento del suo database.

Passo 2:
Scarica i dati in base al file di firma generato in precedenza
apt-offline get C:\apt-offline.sig --threads 5
Il comando precedente scaricherà i dati come indicato nel file della firma. Per velocizzare i download (che possono provenire da più repository apt), in questo esempio vengono generati 5 thread di download.
Una volta completato, puoi semplicemente copiare i dati (un file di archivio, se hai usato l'opzione --bundle) sul supporto rimovibile e copiarlo sul tuo host offline.

Passaggio 3:
Una volta tornati sulla macchina Debian domestica, si alimentano i dati dal supporto rimovibile a apt-offline:
apt-offline install /media/USB/apt-offline.zip
Ciò aggiornerà il database APT sulla macchina disconnessa senza problemi.

Apt-offline può essere utilizzato anche nei sistemi Windows. Secondo me, apt-offline è l'opzione migliore per l'installazione offline.

fonte


14
2018-04-11 01:53



Due osservazioni: in primo luogo, la generazione di una firma per un pacchetto già installato o pronto per l'installazione "non riesce" nel senso che il file .sig è vuoto. È un po 'sconcertante ma apparentemente normale. In secondo luogo, apt e apt-offline funzionano correttamente solo se / var / lib / apt / lists è stato seminato correttamente. Questa è una buona quantità di lavoro se le macchine target e host hanno architetture diverse. - Urhixidur
Sia il PC di origine che di destinazione devono avere la stessa versione di Ubuntu? - Tulains Córdova


Ci sono diverse risposte valide ed efficaci elencate sopra. Tuttavia, questo è il meccanismo che uso personalmente - apt-ftparchive. Lo sto documentando qui, nel caso ne avessi bisogno di nuovo in futuro. Forse potrebbe esserti utile.

Creazione dell'istantanea dell'archivio

  • Crea un'istanza di Ubuntu che imita da vicino l'ambiente di destinazione
    • Ad esempio, un'istanza di Ubuntu 12.04 a 64 bit in Amazon
  • Inizia con un ambiente di pacchetto pulito
    • sudo apt-get clean
  • Aggiorna gli elenchi dei pacchetti
    • sudo apt-get update
  • Scarica tutti gli aggiornamenti del pacchetto disponibili
    • sudo apt-get dist-upgrade --download-only
  • Scarica tutti i pacchetti e le dipendenze pertinenti
    • sudo apt-get install --download-only byobu run-one bikeshed dotdee powernap
  • Installa l'utilità apt-ftparchive
    • sudo apt-get install apt-utils
  • Crea il manifest del pacchetto
    • (cd /var/cache/apt/archives/ && sudo apt-ftparchive packages . ) | sudo tee /var/cache/apt/archives/Packages
  • Crea un archivio dei pacchetti
    • sudo tar cvf snapshot.tar -C /var/cache/apt archives/

Utilizzo dell'istantanea dell'archivio sul sistema di destinazione offline

  • Attraverso alcuni meccanismi, è necessario ottenere lo snapshot.tar dall'origine al sistema di destinazione. Forse su una chiavetta USB o in altro modo.
  • Estrai l'archivio sul sistema di destinazione (in questo caso, in / home / ubuntu)
    • tar xvf snapshot.tar
  • Aggiungi l'origine locale e offline a /etc/apt/sources.list
    • echo "deb file:/home/ubuntu/archives /" | sudo tee -a /etc/apt/sources.list
  • Aggiorna l'elenco dei pacchetti
    • sudo apt-get update
  • Installa i pacchetti come desiderato
    • sudo apt-get install byobu run-one bikeshed dotdee powernap

10
2017-07-27 09:33