Risposte:
Per eseguire il backup:
sudo dpkg --get-selections > /tmp/dpkglist.txt
Ripristinare:
sudo dpkg --set-selections < /tmp/dpkglist.txt
sudo apt-get -y update
sudo apt-get dselect-upgrade
Vedi anche questa domanda per ulteriori opzioni e informazioni: Ubuntu, come configurare una nuova macchina come una esistente
Ho quanto sopra in esecuzione in un cronjob quotidiano che controlla la dpgklist in SVN come parte del nostro inventario del server. Ciò ti consentirà di mantenere un inventario ragionevolmente accurato dei pacchetti installati sui tuoi server ed è facile fare una rapida differenza side-by-side per vedere se un server manca un determinato pacchetto.
aptitude
soddisfa anche questo caso d'uso e conserva informazioni sui pacchetti "installati automaticamente" che altri metodi non fanno. Eseguire quanto segue sulla macchina di riferimento:
aptitude search -F '%p' '~i!~M' > package_list
Copia package_list
sull'altra macchina ed esegui
xargs aptitude --schedule-only install < package_list; aptitude install;
aptitude search -F '%p' '~i!~M' > package_list
dovrebbe anche funzionare bene.
deborphan
@ bogdan.org.ua/2013/10/18/…
[insert your own linebreaks, since http://serverfault.com/editing-help#linebreaks lies]
Per quanto riguarda il ripristino del pacchetto: questo dovrà essere fatto come root, no? In tal caso, <br/> xargs
nella riga di comando di ripristino = xargs aptitude --schedule-only install <package_list; aptitude install; mi fa venire voglia di sapere, <br/> 1. Perché aptitude
serve xargs
? dpkg --set-selections
non. <br/> 2. Presumendo aptitude
ha bisogno di xargs
, dove mettere una o più sudo
s nella linea di comando di ripristino? O altrimenti ottenere root per eseguire quella linea, presumendo che sia necessario.
Questa è una buona idea e potresti anche impostare un server con apt-proxy se prendi l'abitudine di questo.
La risposta di faultyservers ha funzionato per me solo dopo aver eseguito un comando diverso come da http://rayslinux.blogspot.de/2012/10/ubuntu-1210-dpkg-warning-package-not-in.html
sudo apt-get install dselect
sudo dselect access
sudo dselect update
Prima di correre
sudo apt-get dselect-upgrade
restituito solo
[...]
dpkg: avviso: pacchetto non nel database alla riga 302: xfonts-utils
dpkg: avviso: trovati pacchetti sconosciuti; questo potrebbe significare che il database disponibile è obsoleto e deve essere aggiornato tramite un metodo frontend
pi @ FHEM-new: / tmp $ sudo apt-get dselect-upgrade
Lettura degli elenchi dei pacchetti ... Fine
Creazione dell'albero delle dipendenze
Lettura delle informazioni sullo stato ... Fatto
0 aggiornato, 0 appena installato, 0 da rimuovere e 0 non aggiornato.
Stavo cercando di installare gli stessi pacchetti dal mio vecchio Raspberry Pi (con Raspbian GNU / Linux 7 (wheezy)) sul mio nuovo Raspberry (Raspbian GNU / Linux 8 (jessie)).
dpkg: warning: package not in status nor available database at line ...