Come posso generare un elenco di download del pacchetto?


10

Voglio generare un elenco di download dei pacchetti, che può essere utilizzato per scaricare quei pacchetti da un altro sistema. (Ho una connessione lenta) . Voglio usare quei file scaricati per creare un repository locale da cui posso installare / aggiornare il mio sistema.

Come posso raggiungere questo obiettivo?

Risposte:


16

Innanzitutto, è necessario disporre degli indici dei pacchetti aggiornati (questi indici vengono utilizzati dai software di gestione dei pacchetti per ottenere informazioni sui pacchetti disponibili online) . Quindi, è necessario scaricare almeno quei file indice.

Per fare ciò, aprire un terminale e dare questo comando. (È necessario disporre di una connessione Internet funzionante per questo passaggio)

sudo apt-get update 

Dopo aver ottenuto i file di indice del pacchetto di aggiornamento, utilizzare uno dei metodi seguenti:

Modo terminale senza sinaptico

Utilizzare questo comando per generare un elenco di file necessari per aggiornare il sistema

sudo apt-get upgrade --allow-unauthenticated -y --print-uris | grep -o '\'http.*\' | tr "\'" " " > download-list 

Il file download-listverrà creato nella cartella corrente del terminale.

Oppure, se si desidera generare uno script di download per un pacchetto specifico, utilizzare questo comando (vedere la sezione di aggiornamento di seguito per un altro comando)

sudo apt-get install <package-name> --allow-unauthenticated -y --print-uris | grep -o '\'http.*\' | tr "\'" " " > download-list

sostituire, <package-name>con il nome effettivo del pacchetto. come gtgper ottenere-cose-gnomo ecc.

Ora puoi utilizzare questo file per alimentare qualsiasi gestore di download che supporta i file di input con URL.

Ad esempio, per utilizzare questo file con wgetquesto comando di seguito,

wget -c -i ./download-list

supponendo che il download-listfile sia nella directory corrente del terminale. I file scaricati verranno archiviati nella directory di lavoro corrente del terminale.

Aggiornamento: ho trovato un altro comando per generare l'elenco di download del pacchetto:

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

Accredito del comando aggiornato: risponditore di questo post


Modo grafico usando Synaptic

Il gestore pacchetti Synaptic ha una funzione integrata per generare lo script per il download dei pacchetti e non è nemmeno necessario utilizzare wget esplicitamente nel terminale, è sufficiente solo l'esecuzione dello script.

La procedura è la seguente

  1. Installa Synaptic Package Manager usando il terminale:

     sudo apt-get update 
     sudo apt-get install synaptic
    

    (Il primo comando non è richiesto, se sono stati aggiornati i file dell'indice del pacchetto, se non si è sicuri, utilizzare entrambi) .

  2. Quindi apri Synaptic Package Manager digitando Synaptic nel trattino.

  3. Selezionare un pacchetto nella sezione destra della finestra, fare clic con il tasto destro → Contrassegna per l'installazione . In alternativa, se desideri generare uno script di aggiornamento, premi il pulsante Segna tutti gli aggiornamenti nella barra degli strumenti. L'immagine seguente utilizza il secondo metodo.

    immagine del pulsante di aggiornamento

  4. Quando ti viene chiesto se desideri Contrassegnare le ulteriori possibilità richieste , premi il pulsante Contrassegna.

    immagine della finestra del segno aggiuntivo

  5. Quindi andando su File -> Genera script di download del pacchetto , salva lo script come file assegnandogli un nome e seleziona una directory in cui salvarlo. Ora hai uno script per i download di pacchetti.

Se vuoi scaricare, vai alla directory degli script ed esegui sh ./<script-name>. Ad esempio, se il nome dello script è download-listed è nella cartella Download , il comando è

cd ~/Downloads && sh ./download-list

0

Synaptic ha anche una voce di menu per esportare i pacchetti selezionati in un file.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.