[Soci SLIP] Creare elenco di programmi

Lucio Crusca lucio a sulweb.org
Mer 29 Gen 2014 23:46:14 CET


In data mercoledì 29 gennaio 2014 23:09:42, Luca Rivoiro ha scritto:
> Ho comprato un pc nuovo, e mi piacerebbe installare gli stessi programmi di
> quello vecchio, (principalmente perché devo restituirlo al legittimo
> proprietario).
> Visto che non ho intenzione di mettermi a spulciare tutti i programmi, mi
> chiedevo se esisteva un modo per:
> -creare una lista dei soli programmi, non di tutti i pacchetti ( "# dpkg
> --get-selections > lista_pacchetti.txt " crea una lista che non è
> utilizzabile da un utente che vuole scegliere cosa installare o meno)

Sì che lo è, sempre che l'utente *sappia* cosa vuole installare:

# dpkg --set-selections < lista_pacchetti.txt
# aptitude
Premi 'g', ti mostra l'elenco dei pacchetti che verrebbero installati e puoi 
togliere quelli che non ti interessano con il tasto '-', aptitude pensa alle 
dipendenze e ti avvisa se stai per fare casino. Quando sei contento della 
selezione, premi di nuovo g e te li installa.

q per uscire da aptitude quando ha finito.

> -controllare quali programmi sono presenti nei repository (salvando quelli
> aggiunti manualmente) e quali invece installati da pacchetti .deb

Prima devi elencare tutti i repo a cui fa riferimento il tuo apt:

# apt-cache policy | sed -n 's/.*o=\([^,]\+\).*/\1/p' | uniq

e poi, per ognuno, estrarre l'elenco di pacchetti che ne fanno parte 

# aptitude search "?installed?origin(Ubuntu)"

o che non ne fanno parte

# aptitude search "?installed?not(?origin(Ubuntu))"

non ho mai provato, ma credo che sia anche possibile mettere assieme più 
condizioni con operatori booleani binari ?and e ?or.

> 
> Altri consigli ed aiuti per completare al meglio questo "lavoro" sono
> *molto* ben accetti!

Installi il pc nuovo con la stessa distro/versione GNU/Linux che hai sul 
vecchio (di base, senza installare nulla di particolare), poi colleghi i due 
pc in rete, parti con una live su entrambi e copi al volo tutti i files dalla 
partizione del vecchio a quella del nuovo:

root a live_pc_nuovo:/mnt/sda1# netcat -q 5 -l -p 2222 | tar xzpvf -

root a live_pc_vecchio:/mnt/sda1# tar czpvf . | netcat -q 5 [ip.del.pc.nuovo]

vai a dormire e domani mattina avrà finito (in realtà credo molto prima, ma una 
buona mezz'ora è probabile che la impieghi).



Maggiori informazioni sulla lista Soci