Come determinare la dimensione di un pacchetto mentre si usa apt prima del download?

26

Quando si utilizza apt-get install <package_name> e ci sono delle dipendenze che devono essere scaricate, il terminale emette i nomi dei pacchetti aggiuntivi e della dimensione totale e chiede conferma prima del download.

Tuttavia, quando le dipendenze sono soddisfatte e nient'altro che il pacchetto indicato deve essere scaricato, non vi è alcuna uscita di dimensioni e nessuna conferma.

Quando si utilizza Synaptic, posso vedere la dimensione totale dei nuovi pacchetti che verranno utilizzati dopo l'installazione, ma non è possibile vedere la dimensione che deve essere scaricata, tranne per passare dal pacchetto al pacchetto e usare le proprietà per vedere la dimensione compressa.

Vorrei sapere se c'è un modo per vedere le dimensioni di un pacchetto (s) nel terminale e Synaptic prima di scaricarlo e installarlo / loro?

    
posta Seth 19.04.2011 - 16:46
fonte

5 risposte

26

Nel terminale, per un singolo pacchetto:

apt-cache --no-all-versions show $package | grep '^Size: '

per più di un pacchetto:

apt-cache --no-all-versions show $packages | 
    awk ' == "Package:" { p =  }
          == "Size:"    { printf("%10d %s\n", , p) }'

Non ho idea di Synaptic.

    
risposta data enzotib 19.04.2011 - 16:56
fonte
11

apt-cache show <package> o aptitude show <package> mostrerà più informazioni su un pacchetto, comprese le sue dimensioni.

Solo per le dimensioni del pacchetto, puoi usare:

apt-cache show <package> | grep Installed-Size

o

aptitude show <package> | grep 'Uncompressed Size'

Per i pacchetti .deb puoi usare:

dpkg-deb -I <package>.deb | grep Installed-Size
    
risposta data Radu Rădeanu 29.07.2013 - 18:05
fonte
5

Potresti usare la modalità "dry run", che finge solo di scaricare e installare i pacchetti

$ aptitude install -sy xlockmore
The following NEW packages will be installed:
  xlockmore 
0 packages upgraded, 1 newly installed, 0 to remove and 27 not upgraded.
Need to get 194 kB of archives. After unpacking 373 kB will be used.
Would download/install/remove packages.
    
risposta data Adam Byrtek 19.04.2011 - 20:25
fonte
4

Anche questo è giusto, ma la dimensione viene visualizzata in byte. E questo mostra le dimensioni in un formato migliore, ma se il pacchetto è di dimensioni molto ridotte (diciamo & lt; 1MB) allora nonostante echo 'n' installerà il pacchetto (Perché in tal caso, apt non richiede).

Quindi, usi --no-download con --assume-no come segue:

sudo apt-get --no-download --assume-no install <package_name> | grep 'Need to get'

Qui --no-download sostiene di non scaricare il pacchetto e --assume-no è di assumere no ( n ) in caso di qualsiasi richiesta.

Esempio:

$ sudo apt-get --no-download --assume-no install ttf-devanagari-fonts 2>/dev/null | grep 'Need to get'
Need to get 938 kB of archives.
    
risposta data Pandya 13.03.2016 - 05:46
fonte
0

Potresti provare il comando seguente per vedere la dimensione degli archi che sono necessari per essere scaricati per un particolare pacchetto.

echo 'n' | sudo apt-get install package | awk '/^Need to get/ {print ,}'

La risposta di @enzotib è buona ma mostra la dimensione degli archivi necessari per il download in altri formati non in mb. Ma questo comando mostrerà la dimensione in Mb.

Esempio:

$ apt-cache --no-all-versions show chromium-browser | grep '^Size: '
Size: 41493718

$ echo 'n' | sudo apt-get install chromium-browser | awk '/^Need to get/ {print ,}'
44.4 MB
    
risposta data Avinash Raj 01.06.2014 - 11:13
fonte

Leggi altre domande sui tag