Tuesday, February 21, 2012

Aggiornare da Fedora 15 a 16 con yum

Sebbene non supportato ufficialmente, ho appena effettuato un aggiornamento da Fedora 15 a 16 utilizzando yum per cui ho pensato di condividere con voi la procedura adottata; prima di iniziare, qualche raccomandazione.

La prima è ovvia (e valida in ogni caso): prima di tentare l'aggiornamento fate un bel backup dei vostri dati.

La seconda: più il sistema è "pulito", ovvero con un ristretto numero di repository attivi (idealmente, solo fedora, fedora-updates e rpmfusion), meno problemi si incontreranno.

L'ultima, per ogni release viene collezionata una lista dei bug più comuni assieme ad eventuali soluzioni note; assicuratevi di controllare la lista per poter prevenire problematiche specifche del vostro hardware.

I metodi disponibili
Aggiornare un distribuzione da una versione all'altra è sempre una operazione delicata in cui molte cose possono andare storte (e chi vi dice il contrario non ha idea di quali siano le dificoltà).

Esistono comunque diversi metodi per farlo, tutti documentati sul wiki Fedora; in particolare aggiornare utilizzando il DVD di installazione è quello consigliato in quanto permette di usare anaconda (il programma di installazione di Fedora) da un ambiente sostanzialmente equivalente - kernel, librerie, etc - a quello del sistema finale.

In alternativa, di recente è stato introdotto PreUpgrade, un programma che analizza il sistema e scarica i pacchetti necessari all'aggiornamento in background (si può quindi continuare a lavorare normalmente) per poi eseguire l'aggiornamento al riavvio.

Aggiornare con Yum
Come detto, aggiornare con yum non è ufficialmente supportato, ma esistono comunque comandi dedicati e procedure documentate; da notare che usando yum è raccomandato aggiornare da una versione a quella immediatamente successiva; per saltare più di una versione si consiglia di ricorrere a PreUpgrade.

La procedura seguita è stata quindi:
  1. Spostarsi su un terminale premendo
    Ctrl-Alt-F2
  2. Diventare root con
    su -
  3. Importare la chiave GPG di Fedora 16 con il comando
    rpm --import https://fedoraproject.org/static/A82BA4B7.txt
  4. Eseguire l'aggiornamento vero e proprio
    yum update yum
    yum clean all
    yum --releasever=16 --disableplugin=presto distro-sync
  5. Attivare grub2 con i comandi
    /sbin/grub2-mkconfig -o /boot/grub2/grub.cfg
    /sbin/grub2-install /dev/sda
  6. Completare l'installazione dei gruppi
    yum update @base @gnome-desktop 
Al riavvio, non dimenticate di controllare quali servizi sono attivi: Fedora 16 è passata ad usare systemd, di fatto resettando la configurazione di avvio. Per sapere quali erano attivi potete eseguire, prima dell'upgrade, qualcosa di questo tipo:
chkconfig --list |grep on > ~/previously-running-services
oppure, dopo l'upgrade:
cat /var/lib/systemd/sysv-convert/database

Pulizie finali
Dopo l'aggiornamento è consigliabile fare un po' di pulizia. Si possono evidenziare i pacchetti installati ma non più presenti in nessuno dei repository configurati con:
yum list extras
questi sono normalmente eliminabili senza problemi.

Infine, si possono cercare i file .rpmnew o .rpmsave (di cui ho già parlato qualche tempo fa) eventualmente creati dal processo di aggiornamento con il comando:
find /etc /var -name '*.rpm?*'
in modo da poter unire le eventuali modifiche al file di configurazione originale.