sabato 18 giugno 2011

Aggiornare i pacchetti di Fedora senza connessione internet

Scenario: supponiamo - ed è il mio caso :-) - di aver Fedora installata sue due diverse macchine, ma solo una dispone di una connessione ad internet, mentre l'altra non è neppure collegata alla vostra lan, domestica o aziendale che sia. Come aggiornare i pacchetti installati sulla macchina "offline" ? In questa guida vi mostrerò come fare questa attività in maniera molto semplice, tutto ciò che occorre è una chiavetta usb di buona capacità e qualche comando da inserire in un terminale.

Convenzioni utilizzata in questo how-to:
macchina online: pc fedora con connettività internet
macchina offline: pc fedora senza alcuna connettività

/media/CD77-C2D3: punto di mount della mia chiavetta usb, ovviamente da sostituire con il vostro

Iniziamo con l'inserire la chiavetta nella macchina offline e spostiamoci nel corrispondente mout point:
$ cd /media/CD77-C2D3
creiamo l'elenco dei pacchetti installati
$ rpm -qa --queryformat '%{NAME}\n' > lista
spostiamoci ora nella cartella /etc/yum.repos.d e creiamo un nuove file che chiameremo fedora-local.repo. Il file dovrà contenere il seguente testo:
[localrepo]
name=Fedora Core $releasever - My Local Repo
baseurl=file:///media/CD77-C2D3
enabled=1
gpgcheck=0
(Ricordatevi di modificare il valore di 'baseurl' in base al mount point del vostro dispositivo usb!)
Smontiamo la chiavetta e spostiamoci ora sulla macchina online.
Verifichiamo la presenza dei tool che andremo ad utilizzare (yumdownloader e createrepo):
# yum install yum-utils createrepo
inseriamo quindi la chiavetta e avviamo il download dei pacchetti elencati nel file 'lista':
$ cd /media/CD77-C2D3
$  yumdownloader $(cat lista)
ora pazientiamo per un po', questa attività potrebbe richiedere parecchi minuti, soprattutto la prima volta che viene eseguita :-)
Completato il download andiamo ad impostare la nostra chiave usb come un repository locale con:
$ createrepo /media/CD77-C2D3 
Importante! Il comando createrepo va sempre obbligatoriamente eseguito dopo ogni download, in caso contrario i nuovi pacchetti non verranno indicizzati! Per aggiornare in maniera rapida un repo già esistente utilizzate l'opzione --update.

Ritorniamo a questo punto sulla macchina offline, reinseriamo la nostra "chiave usb-repository locale" e diamo:
# yum update
per aggiornare la macchina con i pacchetti precedentemente installati.
Può accadere però che la nuova versione di un dato software introduca delle nuove dipendenze; in questo caso l'aggiornamento con 'yum update' fallirà, lamentando l'impossibilità di trovare uno o più file.
Anche in questo caso yumdownloader ci viene in soccorso, basta spostarsi nuovamente sulla macchina online e digitare
$ yumdownloader <file-mancante>
Supponiamo ci sia stata segnalata l'impossibilità di soddisfare la dipendenza 'libopenal.so.1'; ebbene, dando 'yumdownloader libopenal.so.1' andremo a scaricare il pacchetto openal-soft-1.12.854-2.fc15.i686, contenente il file di cui abbiamo bisogno per completare con successo l'upgrade della nostra macchina Fedora offline.



venerdì 17 giugno 2011

Disabilitare il pannello di xfce4 (xfce4-panel)

Se siete utenti XFCE ma preferite utilizzare una barra dock-like tipo awn, cairo-dock o altre, probabilmente vorrete rimuovere il pannello presente di default. Ecco come fare:

-  Aprite con un editor di testo il file /etc/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml (in Archlinux é fornito dal pacchetto xfce4-session)

- Identificate e rimuovete la seguente porzione di testo:

<value type="string" value="xfce4-panel"/>

- Può essere utile anche cancellare le sessioni di XFCE salvate in precedenza:

rm -rf ~/.cache/sessions/

-Riavviate XFCE per verificare che xfce4-panel non venga effettivamente più caricato! :-)