Repository 32bit  Forum
Repository 64bit  Wiki

Come aggiornare dalla 13.1 alla 13.37: differenze tra le versioni

Da Slacky.eu.
(2. Scaricare tramite rsync)
 
(15 revisioni intermedie di un utente non mostrate)
Riga 1: Riga 1:
[[categoria:Install_e_Upgrade]]
[[categoria:Install_e_Upgrade]]
 
'''AVVERTIMENTO'''
 
 
'''Questo wiki è ancora provvisorio, quindi può contenere errori. Seguire solamente se si sa ''molto bene'' quel che si sta facendo'''
 
 
Del resto la 13.37 ''stable'' non è ancora uscita, e quindi i link non funzioneranno
 
 
----
 
 
In questo Howto vedremo come aggiornare una versione 13.1 della Slackware all'ultima versione 13.37
In questo Howto vedremo come aggiornare una versione 13.1 della Slackware all'ultima versione 13.37
  +
{{Warning|Avvertimento|Prima di seguire questa guida fare un backup del sistema.}}
Chi ha seguito gli how.to passati ormai dovrebbe essere a proprio agio a fare l'aggiornamento, i cambiamenti con gli altri how-to sono minimi, si potrebbe dire quasi una copia. Presa confidenza con la Slackware l'aggiornamento è anche abbastanza libeare, ma se vi accingente a fare l'upgrade per la prima volta vi consiglio di '''stampare questa guida''' prima di procedere al suo utilizzo. In modo da avere sempre le informazioni sottomano
+
Chi ha seguito gli how-to simili in passato ormai dovrebbe essere a proprio agio a fare l'aggiornamento, i cambiamenti con gli altri how-to sono minimi, si potrebbe dire quasi una copia. Presa confidenza con la Slackware l'aggiornamento è anche abbastanza lineare, ma se vi accingente a fare l'upgrade per la prima volta vi consiglio di '''stampare questa guida''' prima di procedere al suo utilizzo. In modo da avere sempre le informazioni sottomano
= Disclaimer =
= Disclaimer =
L'autore di questa guida, i suoi collaboratori e slacky.eu non si riterranno responsabili di eventuali danni provocati al vostro computer.
+
L'autore di questa guida, i suoi collaboratori e slacky.eu non si riterranno responsabili di eventuali danni provocati al vostro computer.
= Premesse =
= Premesse =
Riga 90: Riga 82:
# mount -o loop /path/file.iso /opt/mirror
# mount -o loop /path/file.iso /opt/mirror
<em><strong>Nota:</strong> Si può anche comprare il set di CD o il DVD dallo store ufficiale, così da contribuire al progetto Slackware. Raramente escono anche CD/DVD della Slackware nelle riviste di informatica</em>
+
{{Information|Nota|Si può anche comprare il set di CD o il DVD dallo store ufficiale, così da contribuire al progetto Slackware. Raramente escono anche CD/DVD della Slackware nelle riviste di informatica}}
= Procedere all'upgrade =
= Procedere all'upgrade =
Una volta acquisiti i file necessari e dando per acquisito che i pacchetti siano salvati in <tt>/opt/mirror/slacware-13.37/tt>, in modo da rendere omogeneo tutto l'how-to, procediamo all'aggiornamento della Slackware.
+
Una volta acquisiti i file necessari e dando per acquisito che i pacchetti siano salvati in <tt>/opt/mirror/slacware-13.37</tt>, in modo da rendere omogeneo tutto l'how-to, procediamo all'aggiornamento della Slackware.
Anche in questo caso potete salvarli dove volete. Cambieranno però i comandi di esempio dati in seguito.
Anche in questo caso potete salvarli dove volete. Cambieranno però i comandi di esempio dati in seguito.
Riga 114: Riga 106:
A questo punto effettuiamo il <em>log in</em> come <em>root</em> e procediamo
A questo punto effettuiamo il <em>log in</em> come <em>root</em> e procediamo
<em>Nota:</em>
+
{{Information|Nota|Come dice lo stesso Pat questo ''non è strettamente necessario'', e ci sono state segnalazioni di successo di aggiornamenti effettuati da remoto su macchine ancora in modalità multiutente. Tuttavia, essendo più facile sbagliare in modalità multiutente e specialmente se si sta pensando di aggiornare un computer da remoto in modalità multiutente, si consiglia di clonare la macchina in locale in modo da fare una prova per scoprire eventuali problemi e trovare le soluzioni.}}
Come dice lo stesso Pat questo ''non è strettamente necessario'', e ci sono state segnalazioni di successo di aggiornamenti effettuati da remoto su macchine ancora in modalità multiutente. Tuttavia, essendo più facile sbagliare in modalità multiutente e specialmente se si sta pensando di aggiornare un computer da remoto in modalità multiutente, si consiglia di clonare la macchina in locale in modo da fare una prova per scoprire eventuali problemi e trovare le soluzioni.
 
Riga 145: Riga 137:
Consiglio quindi di leggere bene il file UPGRADE.TXT prima di qualsiasi cosa. Non mi stancherò mai di ripeterlo.
Consiglio quindi di leggere bene il file UPGRADE.TXT prima di qualsiasi cosa. Non mi stancherò mai di ripeterlo.
  +
  +
  +
== Rimozione dei driver proprietari ==
  +
  +
Alcuni driver proprietari, come quelli delle schede NVIDIA vanno a sovrascrivere alcuni file di sistema. Nel momento che si aggiorna il sistema, i driver video non funzioneranno più a dovere.
  +
Per evitare problemi il mio consiglio è di disinstallare i driver prima della procedura di aggiornamento, e reinstallarli dopo. Con i driver nvidia per esempio basta lanciare il comando
  +
  +
# nvidia-uninstall
  +
  +
prima dell’aggiornamento, ed alla fine della procedura reinstallarli.
Riga 164: Riga 166:
Siccome in questo modo si installeranno anche tutti i file di localizzazione del KDE, che sono circa 500Mb, Pat consiglia di usare questo script
Siccome in questo modo si installeranno anche tutti i file di localizzazione del KDE, che sono circa 500Mb, Pat consiglia di usare questo script
#!/bin/sh
+
<source lang="bash">
for dir in a ap d e f k kde l n t tcl x xap y ; do
+
#!/bin/sh
( cd $dir ; upgradepkg --install-new *.t?z )
+
for dir in a ap d e f k kde l n t tcl x xap y ; do
done
+
( cd $dir ; upgradepkg --install-new *.t?z )
  +
done
  +
</source>
che installerà ogni cosa, tranne appunto i file di localizzazione, cosa che potremmo fare in seguito con semplicità. Vedremo in seguito come.
che installerà ogni cosa, tranne appunto i file di localizzazione, cosa che potremmo fare in seguito con semplicità. Vedremo in seguito come.
Riga 187: Riga 189:
Ed i contro? Il contro di questa procedura è la pazienza ed il tempo richiesto per effettuare la stessa. Ed anche l'attenzione di non scordarsi qualche pacchetto essenziale
Ed i contro? Il contro di questa procedura è la pazienza ed il tempo richiesto per effettuare la stessa. Ed anche l'attenzione di non scordarsi qualche pacchetto essenziale
Per prima cosa procediamo ad un aggiornamento delicato, il pacchetto '''util-linux-ng''', sostituito nella 13.37 con util-linux, potremmo dire che siamo tornati all'origine, visto che qualche release fa ci fu il passaggio da util-linux a utitl-linux-ng.
+
Per prima cosa procediamo ad un aggiornamento delicato, il pacchetto '''util-linux-ng''', sostituito nella 13.37 con util-linux, potremmo dire che siamo tornati all'origine, visto che qualche release fa ci fu il passaggio da util-linux a util-linux-ng.
Siccome non conviene disinstallarlo, perché contiene programmi necessari anche all'aggiornamento degli altri pacchetti, bisogna procedere con un aggiornamento "particolare", tramite l'operatore % dell'utility upgradepkg
Siccome non conviene disinstallarlo, perché contiene programmi necessari anche all'aggiornamento degli altri pacchetti, bisogna procedere con un aggiornamento "particolare", tramite l'operatore % dell'utility upgradepkg
Riga 197: Riga 199:
* a/util-linux-ng (aggiornato a util-linux, vedi sopra)
* a/util-linux-ng (aggiornato a util-linux, vedi sopra)
  +
* kde/guidance-power-manager
* l/eggdbus
* l/eggdbus
* n/iptraf (sostituito con iptraf-ng)
* n/iptraf (sostituito con iptraf-ng)
Riga 214: Riga 217:
* x/xsetpointer
* x/xsetpointer
* x/xtrap
* x/xtrap
  +
* extra/kde3-compat/
Per la rimozione di un pacchetto bisogna dare questo comando
Per la rimozione di un pacchetto bisogna dare questo comando
Riga 224: Riga 228:
A questo punto, dopo aver rimosso i pacchetti non più presenti nella 13.1, effettuiamo l'<strong>installazione dei nuovi pacchetti</strong>.
+
A questo punto, dopo aver rimosso i pacchetti non più presenti nella 13.37, effettuiamo l'<strong>installazione dei nuovi pacchetti</strong>.
Anche questa lista si trova nel file CHANGES_AND_HINTS.TXT
Anche questa lista si trova nel file CHANGES_AND_HINTS.TXT
* a/gdisk
 
* a/btrfs-progs
* a/btrfs-progs
  +
* a/gdisk
* a/libcgroup
* a/libcgroup
  +
* a/lrzip
* a/mcelog
* a/mcelog
* a/util-linux
+
* a/util-linux (precedentemente chiamato util-linux-ng)
* ap/ddrescue
* ap/ddrescue
* ap/lxc
* ap/lxc
* ap/moc
* ap/moc
* d/yasm
+
* d/slacktrack (precedentemente in /extra)
  +
* d/yasm (precedentemente in /extra)
* kde/guidance-power-manager
* kde/guidance-power-manager
* kde/libktorrent
* kde/libktorrent
Riga 249: Riga 254:
* l/phonon-mplayer
* l/phonon-mplayer
* n/ca-certificates
* n/ca-certificates
  +
* n/idnkit
* n/iptraf-ng
* n/iptraf-ng
  +
* n/iwlwifi-100-ucode
  +
* n/iwlwifi-6xxx-ucode
* n/rfkill
* n/rfkill
* x/radeon_ucode
* x/radeon_ucode
* x/xdg-user-dirs
* x/xdg-user-dirs
  +
* x/xf86-video-nouveau
* xap/xaos
* xap/xaos
  +
* extra/google-chrome/ORBit2 (necessario per google-chrome)
  +
* extra/google-chrome/GConf (necessario per google-chrome)
  +
{{Hint|Pacchetti in Testing|In realtà ci sarebbero anche libpam, necessario per chromium, nonché versioni aggiornate dei pacchetti kernel, mesa, libdrm e xf86-video-nouveau. Essendo pacchetti non testati o particolari, ho preferito non citarli.}}
Per installare questi pacchetti consiglio <em>upgradepkg --install-new</em> e non direttamente <em>installpkg</em> perché è possibile che alcuni di questi pacchetti li avevamo già nel sistema in quanto scaricati da altri repository, come quello di slacky.eu per esempio.
Per installare questi pacchetti consiglio <em>upgradepkg --install-new</em> e non direttamente <em>installpkg</em> perché è possibile che alcuni di questi pacchetti li avevamo già nel sistema in quanto scaricati da altri repository, come quello di slacky.eu per esempio.
Riga 274: Riga 286:
# upgradepkg */*.t?z
# upgradepkg */*.t?z
<em><strong>Nota</strong>: Se notate mancanza nella lista dei pacchetti aggiunti e rimossi, segnalatemelo nella [http://www.slacky.eu/forum/viewtopic.php?f=12&t=32048 discussione nel forum]
+
'''Se notate mancanza nella lista dei pacchetti aggiunti e rimossi, segnalatemelo nella discussione nel forum http://www.slacky.eu/forum/viewtopic.php?f=12&t=33954'''
Riga 280: Riga 292:
Una volta installati tutti i nuovi pacchetti bisogna essere sicuri che il sistema faccia il boot normalmente, quindi modificare LILO o Grub in base al nuovo kernel installato.
Una volta installati tutti i nuovi pacchetti bisogna essere sicuri che il sistema faccia il boot normalmente, quindi modificare LILO o Grub in base al nuovo kernel installato.
  +
Con i nuovi driver intel e ati open dobbiamo assicurarci di aver disabilitato le impostazioni del framebuffer. Questo avveniva tramite l'opzione "vga" da passare al kernel. Quindi rimuovere le linee corrispondenti, solitamente il parametro
  +
vga=x
  +
dove x poteva essere normal o il valore del framebuffer
Se usate LILO una volta modificato il file <tt>/etc/lilo.conf</tt> date il comando
Se usate LILO una volta modificato il file <tt>/etc/lilo.conf</tt> date il comando
Riga 286: Riga 301:
Per Grub una volta modificato il file <tt>/boot/grub/menu.lst </tt> non c'è bisogno di nessun comando
Per Grub una volta modificato il file <tt>/boot/grub/menu.lst </tt> non c'è bisogno di nessun comando
<em><strong>Nota</strong>: Se usate il <em>kernel generic</em>, ricordatevi di modificare l'initrd secondo le vostre esigenze</em>
+
{{Information|Nota|Se usate il <em>kernel generic</em>, ricordatevi di modificare l'initrd secondo le vostre esigenze}}
== Rimozione pacchetti obsoleti ==
== Rimozione pacchetti obsoleti ==
<em><strong>Nota</strong>: Se avete seguito la procedura "Aggiornare solamente i pacchetti nuovi o modificati" potete saltare questa sezione.</em>
+
{{Information|Nota|Se avete seguito la procedura "Aggiornare solamente i pacchetti nuovi o modificati" potete saltare questa sezione.}}
Ora abbiamo aggiornato alla 13.1, ma ci manca di rimuovere i pacchetti obsoleti e, se le abbiamo installate, i vari file delle varie lingue di KDE e Koffice. Oltre naturalmente ai pacchetti che non utilizzate, per esempio come detto prima sendmail se usate un altro server mail.
+
Ora abbiamo aggiornato alla 13.37, ma ci manca di rimuovere i pacchetti obsoleti e, se le abbiamo installate, i vari file delle varie lingue di KDE e Koffice. Oltre naturalmente ai pacchetti che non utilizzate, per esempio come detto prima sendmail se usate un altro server mail.
Io uso un metodo diverso, prima rimuovo quel che dal changelog vedo obsoleto (direttamente in init 1) e dopo installo i nuovi pacchetti. Ma ognuno è libero di scegliere il metodo preferito, Pat nel file UPGRADE.TXT consiglia di rimuoverli successivamente in init 3
Io uso un metodo diverso, prima rimuovo quel che dal changelog vedo obsoleto (direttamente in init 1) e dopo installo i nuovi pacchetti. Ma ognuno è libero di scegliere il metodo preferito, Pat nel file UPGRADE.TXT consiglia di rimuoverli successivamente in init 3
Riga 313: Riga 328:
Pat suggerisce ai più temerari di usare questo script:
Pat suggerisce ai più temerari di usare questo script:
cd /etc
+
<source lang="bash">
find . -name "*.new" | while read configfile ; do
+
#!/bin/sh
if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
+
cd /etc
-a ! "$configfile" = "./rc.d/rc.local.new" \
+
find . -name "*.new" | while read configfile ; do
-a ! "$configfile" = "./group.new" \
+
if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
-a ! "$configfile" = "./passwd.new" \
+
-a ! "$configfile" = "./rc.d/rc.local.new" \
-a ! "$configfile" = "./shadow.new" ]; then
+
-a ! "$configfile" = "./group.new" \
cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
+
-a ! "$configfile" = "./passwd.new" \
$(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
+
-a ! "$configfile" = "./shadow.new" ]; then
mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
+
cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
fi
+
$(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
done
+
mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
+
fi
  +
done
  +
</source>
ci ritroveremo così con i vecchi file con estensione .bak
ci ritroveremo così con i vecchi file con estensione .bak
Riga 406: Riga 421:
A questo punto potete riavviare e se tutto è andato per il verso giusto trovarvi nella Slackware 13.1
+
A questo punto potete riavviare e se tutto è andato per il verso giusto trovarvi nella Slackware 13.37
<strong>Buon divertimento con la 13.37 :-)</strong>
<strong>Buon divertimento con la 13.37 :-)</strong>
  +
  +
== Reinstallare driver proprietari ==
  +
  +
Se usiamo driver proprietari, come per esempio i driver NVIDIA, '''una volta fatto il reboot ricordarsi di reinstallare tali driver'''
= Possibile errore della procedura di aggiornamento =
= Possibile errore della procedura di aggiornamento =
Riga 421: Riga 440:
E se non si è fatto il backup? Come non avete fatto il backup??? Questa è la prima cosa fare come abbiamo detto prima ;-)
E se non si è fatto il backup? Come non avete fatto il backup??? Questa è la prima cosa fare come abbiamo detto prima ;-)
  +
= Problemi comuni con la nuova versione =
  +
  +
Prima di chiedere aiuto nei vari forum assicurarsi di aver letto i documenti [[Consigli_e_problemi_noti_della_13.37 | Consigli e problemi noti della 13.37]] e delle versioni precedenti, presenti in questo wiki, ed il file [ftp://ftp.slackware.com/pub/slackware/slackware-13.37/CHANGES_AND_HINTS.TXT CHANGES_AND_HINTS.TXT] della distribuzione.
= Conclusioni =
= Conclusioni =
Riga 428: Riga 450:
Naturalmente l'esperienza e la conoscenza del sistema possono portare ad usare sistemi diversi o a "rischiare" di più nell'aggiornamento. L'importante è sapere sempre cosa si sta facendo e cosa andiamo a modificare. Io ho cercato di fare una guida il più adatta possibile a chi si accinge per la prima volta a passare ad una <em>13.37</em>.
Naturalmente l'esperienza e la conoscenza del sistema possono portare ad usare sistemi diversi o a "rischiare" di più nell'aggiornamento. L'importante è sapere sempre cosa si sta facendo e cosa andiamo a modificare. Io ho cercato di fare una guida il più adatta possibile a chi si accinge per la prima volta a passare ad una <em>13.37</em>.
Per inviare commenti, suggerimenti, critiche od altro seguire il [http://www.slacky.eu/forum/viewtopic.php?f=12&t=32048 relativo post nel forum]
+
Per inviare commenti, suggerimenti, critiche od altro seguire il [http://www.slacky.eu/forum/viewtopic.php?f=12&t=33954 relativo post nel forum]
Riga 449: Riga 471:
* [[Creare_CD/DVD_ISO_Slackware|Creare CD o DVD della Slackware]]
* [[Creare_CD/DVD_ISO_Slackware|Creare CD o DVD della Slackware]]
* [[Slackware_Linux_initrd_HOWTO|initrd]]
* [[Slackware_Linux_initrd_HOWTO|initrd]]
* [[Slackware_12.2_to_13.0_Upgrade_HOWTO | Traduzione di UPGRADE.TXT dalla 12.2 alla 13.0]]
 
Script per backup
Script per backup

Versione attuale delle 10:41, 14 mag 2011


In questo Howto vedremo come aggiornare una versione 13.1 della Slackware all'ultima versione 13.37

Avvertimento:
Prima di seguire questa guida fare un backup del sistema.

Chi ha seguito gli how-to simili in passato ormai dovrebbe essere a proprio agio a fare l'aggiornamento, i cambiamenti con gli altri how-to sono minimi, si potrebbe dire quasi una copia. Presa confidenza con la Slackware l'aggiornamento è anche abbastanza lineare, ma se vi accingente a fare l'upgrade per la prima volta vi consiglio di stampare questa guida prima di procedere al suo utilizzo. In modo da avere sempre le informazioni sottomano

Indice

[modifica] Disclaimer

L'autore di questa guida, i suoi collaboratori e slacky.eu non si riterranno responsabili di eventuali danni provocati al vostro computer.

[modifica] Premesse

Prima di tutto alcune premesse:

  • Do per scontato che chi si accinge ad aggiornare tramite questo metodo abbia le conoscenze almeno base per usare una Slackware. Come installare, aggiornare o rimuovere i pacchetti, configurare la distribuzione, risolvere gli errori, trovare informazioni, etc...
  • non usate swaret, slapt-get o simili, a meno che non siate sicuri di quel che state facendo, ma leggete il file UPGRADE.TXT. Buona cosa sarebbe leggere tutti i file TXT presenti nella stessa directory. Il file UPGRADE.TXT è strettamente legato alla versione che andrete aggiornando, quindi leggetelo. Se proprio si vuole di utilizzare un software di questo tipo consiglio slackpkg, che è entrato ufficialmente a far parte della Slackware ed è l'unico che aggiorna nell'ordine giusto. Per maggiori informazioni leggere il manuale o qualche guida in rete
  • Prima di qualsiasi cosa fate un backup del vostro sistema. Se non dell'intero sistema almeno della directory /etc, della $HOME e dei vostri file importanti.
  • Slackware a partire da questa versione 13.0 è sia per 486 sia per x86_64. Questo how-to si applica ad entrambi i sistemi alla stessa maniera, naturalmente cambiando la versione dei pacchetti.


[modifica] Fare un backup

Prima di qualsiasi cosa fate un backup del vostro sistema. Se non dell'intero sistema almeno della directory /etc, della $HOME e dei vostri file importanti.

Perché cominciare con un backup? Perché c'è sempre la possibilità che qualcosa vada storto, ed anche se tutto andasse per il meglio, potreste per sbaglio cancellare qualche file importante, avere dei ripensamenti, anche solo controllare la vecchia impostazione. In ogni caso con un backup completo potete sempre ripristinare le informazioni come erano prima di iniziare l'aggiornamento.

Per effettuare il backup potete seguire una delle guide presenti in rete.

Una volta fatto il backup procediamo con l'aggiornamento :-)


[modifica] Scaricare i file necessari

Per scaricare i file necessari esistono vari metodi:

  1. Scaricare il ramo 13.37 da uno dei mirror in FTP
  2. Scaricare il ramo 13.37 con rsync
  3. Scaricare le ISO o comprare un CD/DVD dallo store


Per conformità al resto dell'how-to creiamo una directory mirror all'interno di opt, in modo da avere /opt/mirror. In questa directory scaricheremo i pacchetti della 13.37. Inoltre diamo a questa directory i permessi per l'utente solitamente usato, in modo da non compromettere la sicurezza del sistema collegandosi come root. Per fare questo date i seguenti comandi

# mkdir /opt/mirror
# chown nomeutente:users /opt/mirror

Naturalmente potete creare una directory dove volete e chiamarla come volete, ricordatevi però di cambiare percorso negli esempi seguenti.


Vediamo ogni metodo in dettaglio

[modifica] 1. Scaricare in FTP

Per scaricare il ramo 13.37 con il protocollo FTP, dovete collegarvi con il vostro client FTP ad uno dei mirror che trovate nella pagina http://www.slackware.com/getslack/ e scaricare la directory slackware-13.37.

Si può usare un client ftp testuale o uno grafico, non ha importanza, usate quello che preferite.

Collegandosi per esempio al mirror ftp://ftp.slackware.at/ vedrete che al suo interno ci sono varie directory, tra cui slackware 13.37, che è quella che ci interessa. A questo punto dovete trasferire la directory slackware 13.37 all'interno della vostra /opt/mirror in modo da avere nella vostra macchina una directory chiamata /opt/mirror/slackware-13.37 con all'interno tutto il ramo della 13.37.

Potete creare a mano tale directory e spostarci a mano solamente i file e le directory che vi servono, questo dipende dalla vostra esperienza e dalle vostre necessità.

[modifica] 2. Scaricare tramite rsync

Sincronizzare due directory con rsync significa fare in modo che due directory, SORGENTE e DESTINAZIONE, abbiano gli stessi file, ed ogni aggiornamento che avviene nella directory SORGENTE andrà a modificare di pari passo la directory DESTINAZIONE. La directory DESTINAZIONE nel nostro casò sarà /opt/mirror/slackware-13.37 e quella SORGENTE rsync://rsync.slackware.at/slackware/slackware-13.37. Solitamente si utilizza questo metodo per scaricare la -current ed avere un mirror sempre aggiornato scaricando solo i cambiamenti. Per una stable questa operazione va effettuata una volta solamente.

Per procedere con la sincronizzazione portiamoci in /opt/mirror e diamo il seguente comando

$ rsync -avz --delete-after rsync://rsync.slackware.at/slackware/slackware-13.37 ./

Come vedete non c'è stato bisogno di creare la directory slackware-13.37, ci penserà rsync stesso a crearla.

Il comando rsync ha varie opzioni, compresa quella di controllare eventuali aggiornamenti prima di scaricare qualcosa (--dry-run) e quella di escludere alcune directory (--exclude). Per maggiori dettagli

$ man rsync

Come detto in precedenza, per una stable basta effettuare questa operazione solo una volta, i cambiamenti successivi saranno solo della directory "patches" con gli aggiornamenti di sicurezza.

[modifica] 3. Scaricare le iso della 13.37

Da uno dei tanti mirror della Slackware o tramite torrent si può scaricare l'immagine iso della distribuzione. Una volta scaricata la iso potete masterizzarla o usarla come file system. Per fare questo

# mount -o loop /path/file.iso /opt/mirror


Nota:
Si può anche comprare il set di CD o il DVD dallo store ufficiale, così da contribuire al progetto Slackware. Raramente escono anche CD/DVD della Slackware nelle riviste di informatica


[modifica] Procedere all'upgrade

Una volta acquisiti i file necessari e dando per acquisito che i pacchetti siano salvati in /opt/mirror/slacware-13.37, in modo da rendere omogeneo tutto l'how-to, procediamo all'aggiornamento della Slackware. Anche in questo caso potete salvarli dove volete. Cambieranno però i comandi di esempio dati in seguito.

Il primo passo, e più importante, è quello di leggere il file UPGRADE.TXT e possibilmente ogni file TXT presente nella directory slackware 13.37. Questo perché in quel file ci sono le istruzioni per aggiornare con sicurezza, istruzioni che a volte cambiano a seconda della versione e delle modifiche apportate.

Il secondo passo è rileggere il file UPGRADE.TXT ed essere sicuri della scelta che si sta effettuando. Non mi stanco di ricordare che la current è pur sempre una versione in sviluppo.

A questo punto l'how-to potrebbe essere finito, in quanto è scritto tutto in tale file, ma voglio dare ugualmente una spiegazione generica dell'aggiornamento. Prendete quanto scritto come infarinatura per capire il file UPGRADE.TXT


[modifica] Andare in single user mode

La prima cosa da fare è passare in modalità singolo utente, cosa che si fa con questo comando

# telinit 1


A questo punto effettuiamo il log in come root e procediamo


Nota:
Come dice lo stesso Pat questo non è strettamente necessario, e ci sono state segnalazioni di successo di aggiornamenti effettuati da remoto su macchine ancora in modalità multiutente. Tuttavia, essendo più facile sbagliare in modalità multiutente e specialmente se si sta pensando di aggiornare un computer da remoto in modalità multiutente, si consiglia di clonare la macchina in locale in modo da fare una prova per scoprire eventuali problemi e trovare le soluzioni.


[modifica] Aggiornare Glibc e pacchetti di supporto, soprattutto Pkgtool

Il primo pacchetto da aggiornare sono le librerie glibc. Questo perché sono librerie essenziali al funzionamento dell'intero sistema, e quando nei vari forum si trovano messaggi di persone che si sono trovate con il computer fuori uso durante un aggiornamento, spesso la causa è dovuta al mancato aggiornamento delle glibc come primo passo di tutta la procedura.

Quindi per prima cosa procediamo ad aggiornare le librerie glibc.

Consiglio di andare nella directory slackware all'interno della directory in cui avete creato il mirror, in modo da facilitare le cose.

# cd /opt/mirror/slackware 13.37/slackware

Se avete scaricato l'immagine iso probabilmente il comando sarà qualcosa di simile a questo

# cd /opt/mirror/slackware


  1. Aggiorniamo i pkgtools ed i pacchetti di supporto
# upgradepkg /a/pkgtools-*.tgz
# upgradepkg /a/tar-*.tgz
# installpkg /a/xz-*.tgz
# upgradepkg /a/findutils-*.txz

Ora aggiorniamo le glibc

# upgradepkg a/glibc-solibs-*txz


Questi passi sono importanti e vanno eseguiti, in questo ordine, prima di tutto il resto. Altrimenti si rischia di non poter installare i nuovi pacchetti e ritrovandoci con il sistema fuori uso.

A volte nel file UPGRADE.TXT si legge di aggiornare altri pacchetti prima di accingersi all'aggiornamento totale, per esempio potrebbe esserci l'aggiornamento di sed.

Consiglio quindi di leggere bene il file UPGRADE.TXT prima di qualsiasi cosa. Non mi stancherò mai di ripeterlo.


[modifica] Rimozione dei driver proprietari

Alcuni driver proprietari, come quelli delle schede NVIDIA vanno a sovrascrivere alcuni file di sistema. Nel momento che si aggiorna il sistema, i driver video non funzioneranno più a dovere. Per evitare problemi il mio consiglio è di disinstallare i driver prima della procedura di aggiornamento, e reinstallarli dopo. Con i driver nvidia per esempio basta lanciare il comando

# nvidia-uninstall

prima dell’aggiornamento, ed alla fine della procedura reinstallarli.


[modifica] Aggiornamento di tutti i pacchetti

Una volta aggiornati i pacchetti di supporto si può procedere all'aggiornamento totale della distribuzione. In questo caso ci sono due metodi: il primo consigliato da Pat, il secondo da me.

Capite già da questo qual è il più seguito dagli utenti Slackware ;-)


[modifica] Primo metodo: Installazione di tutti i pacchetti

Questo è il metodo suggerito da Pat all'interno del file UPGRADE.TXT.

Per fare questo dall'interno della directory /opt/mirror/slackware-13.37/slackware, dove ci siamo posizionati in precedenza, bisogna dare il comando

# upgradepkg --install-new */*.t?z


Siccome in questo modo si installeranno anche tutti i file di localizzazione del KDE, che sono circa 500Mb, Pat consiglia di usare questo script

#!/bin/sh
for dir in a ap d e f k kde l n t tcl x xap y ; do
 ( cd $dir ; upgradepkg --install-new *.t?z )
done

che installerà ogni cosa, tranne appunto i file di localizzazione, cosa che potremmo fare in seguito con semplicità. Vedremo in seguito come.


[modifica] Secondo metodo: Aggiornare solamente i pacchetti nuovi o modificati

Se avete creato il mirror, dovete seguire il file ChangeLog.txt alla lettera, guardando quale sono i pacchetti aggiornati. E' un procedimento lungo, ma è quello che io preferisco perché mi evita di installare pacchetti che non mi interessano e perché mi permette di vedere i cambiamenti effettuati. Per esempio non installo mai sendmail in quanto uso postfix. Questa procedura è valida se aggiornate dall'ultima versione della stable, in particolare riguardo i file rimossi ed aggiunti, da una 13.1 ad una 13.37.

Visto che questa procedura serve per non replicare una installazione full, potete benissimo non installare i pacchetti che non utilizzate. Per esempio consiglio di non installare scim, che serve per il supporto alle lingue orientali. Ma la scelta spetta a voi e per evitare di non installare software importante consiglio di leggere il file Changelog.txt o direttamente il TXT del pacchetto

Naturalmente si può benissimo, anzi forse è meglio :-), seguire la procedura di Pat e dopo rimuovere ciò che non ci serve e reinstallare successivamente i pacchetti che usiamo. Questo evita anche di dimenticarsi di installare pacchetti essenziali al funzionamento del sistema. Personalmente cerco di evitare questo anche se allungo il processo di aggiornamento della distribuzione e se volete seguire il mio metodo dovete essere sicuri di aver installato tutti i nuovi pacchetti.

Come sempre l'esperienza e la conoscenza del sistema permettono di effettuare scelte personali.

Quali sono i vantaggi di questa procedura? Aggiornando manualmente, possiamo evitare l’installazione dei pacchetti che non ci servono, che possono essere molti o pochi a seconda del proprio grado di personalizzazione della Slackware. Con l'altro metodo invece ci ritroveremo con installati anche questi pacchetti, che possono andare in conflitto con alcuni dei "nostri" oppure essere semplicemente inutili. Niente che non si possa risolvere in secondo momento comunque.

Ed i contro? Il contro di questa procedura è la pazienza ed il tempo richiesto per effettuare la stessa. Ed anche l'attenzione di non scordarsi qualche pacchetto essenziale

Per prima cosa procediamo ad un aggiornamento delicato, il pacchetto util-linux-ng, sostituito nella 13.37 con util-linux, potremmo dire che siamo tornati all'origine, visto che qualche release fa ci fu il passaggio da util-linux a util-linux-ng. Siccome non conviene disinstallarlo, perché contiene programmi necessari anche all'aggiornamento degli altri pacchetti, bisogna procedere con un aggiornamento "particolare", tramite l'operatore % dell'utility upgradepkg

# upgradepkg util-linux-ng%a/util-linux-*.tgz

Ora procediamo alla rimozione dei pacchetti rimossi dal sistema.

Nella 13.37, rispetto alla 13.1 sono stati rimossi (o rinominati) tali pacchetti.

  • a/util-linux-ng (aggiornato a util-linux, vedi sopra)
  • kde/guidance-power-manager
  • l/eggdbus
  • n/iptraf (sostituito con iptraf-ng)
  • x/libXTrap
  • x/libXprintAppUtil
  • x/libXprintUtil
  • x/libxkbui
  • x/rstart
  • x/trapproto
  • x/xf86rushproto
  • x/xfindproxy
  • x/xfwp
  • x/xplsprinters
  • x/xprehashprinterlist
  • x/xproxymanagementprotocol
  • x/xsetmode
  • x/xsetpointer
  • x/xtrap
  • extra/kde3-compat/

Per la rimozione di un pacchetto bisogna dare questo comando

# removepkg nomepacchetto

Sostituendo a nomepacchetto il nome del pacchetto che trovate nella lista. Per esempio:

# removepkg eggdbus


A questo punto, dopo aver rimosso i pacchetti non più presenti nella 13.37, effettuiamo l'installazione dei nuovi pacchetti.

Anche questa lista si trova nel file CHANGES_AND_HINTS.TXT

  • a/btrfs-progs
  • a/gdisk
  • a/libcgroup
  • a/lrzip
  • a/mcelog
  • a/util-linux (precedentemente chiamato util-linux-ng)
  • ap/ddrescue
  • ap/lxc
  • ap/moc
  • d/slacktrack (precedentemente in /extra)
  • d/yasm (precedentemente in /extra)
  • kde/guidance-power-manager
  • kde/libktorrent
  • l/gdk-pixbuf2
  • l/libdbusmenu-qt
  • l/libelf
  • l/libmpc
  • l/liboggz
  • l/libpcap (split from tcpdump package)
  • l/libplist
  • l/libsndfile
  • l/phonon-mplayer
  • n/ca-certificates
  • n/idnkit
  • n/iptraf-ng
  • n/iwlwifi-100-ucode
  • n/iwlwifi-6xxx-ucode
  • n/rfkill
  • x/radeon_ucode
  • x/xdg-user-dirs
  • x/xf86-video-nouveau
  • xap/xaos
  • extra/google-chrome/ORBit2 (necessario per google-chrome)
  • extra/google-chrome/GConf (necessario per google-chrome)


Pacchetti in Testing:
In realtà ci sarebbero anche libpam, necessario per chromium, nonché versioni aggiornate dei pacchetti kernel, mesa, libdrm e xf86-video-nouveau. Essendo pacchetti non testati o particolari, ho preferito non citarli.

Per installare questi pacchetti consiglio upgradepkg --install-new e non direttamente installpkg perché è possibile che alcuni di questi pacchetti li avevamo già nel sistema in quanto scaricati da altri repository, come quello di slacky.eu per esempio.

Quindi procediamo con

# upgradepkg --install-new nomepacchetto.txz

In questo caso però bisogna sostiture a nomepacchetto il nome che trovate, aggiungendo l'asterisco per il numero versione e l'estensione .txz, necessaria al corretto funzionamento del comando. Alcuni pacchetti mantengono la vecchia estensione .tgz (gzip, pkgtools, slackpkg, tar e xz)

Per esempio

# upgradepkg --install-new l/libsndfile-*.txz


Naturalmente installate solo i nuovi pacchetti di vostro interesse, facendo attenzione che alcuni sono opzionali, altri invece essenziali al funzionamento di altri programmi.


Dopodiché procediamo con l'aggiornamento completo della Slackware, aggiornando comunque solamente i pacchetti che abbiamo nel sistema dando il comando:

# upgradepkg */*.t?z

Se notate mancanza nella lista dei pacchetti aggiunti e rimossi, segnalatemelo nella discussione nel forum http://www.slacky.eu/forum/viewtopic.php?f=12&t=33954


[modifica] Modificare il boot manager

Una volta installati tutti i nuovi pacchetti bisogna essere sicuri che il sistema faccia il boot normalmente, quindi modificare LILO o Grub in base al nuovo kernel installato. Con i nuovi driver intel e ati open dobbiamo assicurarci di aver disabilitato le impostazioni del framebuffer. Questo avveniva tramite l'opzione "vga" da passare al kernel. Quindi rimuovere le linee corrispondenti, solitamente il parametro

vga=x

dove x poteva essere normal o il valore del framebuffer

Se usate LILO una volta modificato il file /etc/lilo.conf date il comando

# lilo -v

Per Grub una volta modificato il file /boot/grub/menu.lst non c'è bisogno di nessun comando


Nota:
Se usate il kernel generic, ricordatevi di modificare l'initrd secondo le vostre esigenze


[modifica] Rimozione pacchetti obsoleti

Nota:
Se avete seguito la procedura "Aggiornare solamente i pacchetti nuovi o modificati" potete saltare questa sezione.

Ora abbiamo aggiornato alla 13.37, ma ci manca di rimuovere i pacchetti obsoleti e, se le abbiamo installate, i vari file delle varie lingue di KDE e Koffice. Oltre naturalmente ai pacchetti che non utilizzate, per esempio come detto prima sendmail se usate un altro server mail.

Io uso un metodo diverso, prima rimuovo quel che dal changelog vedo obsoleto (direttamente in init 1) e dopo installo i nuovi pacchetti. Ma ognuno è libero di scegliere il metodo preferito, Pat nel file UPGRADE.TXT consiglia di rimuoverli successivamente in init 3


Per rimuovere i pacchetti usare il comando removepkg

La sintassi del comando è

# removepkg nomepacchetto


Per la lista dei pacchetti rimossi dalla 13.37, guardare sopra.


[modifica] Modificare i file di configurazione

Arrivati a questo punto bisogna controllare quali modifiche hanno portato i nuovi file di configurazione all'interno di /etc e fare l'unione con i propri.

Pat suggerisce ai più temerari di usare questo script:

#!/bin/sh
cd /etc
find . -name "*.new" | while read configfile ; do
  if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
      -a ! "$configfile" = "./rc.d/rc.local.new" \
      -a ! "$configfile" = "./group.new" \
      -a ! "$configfile" = "./passwd.new" \
      -a ! "$configfile" = "./shadow.new" ]; then
    cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
      $(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
    mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
  fi
done

ci ritroveremo così con i vecchi file con estensione .bak

A questo punto inseriamo le nostre modifiche nei nuovi file.

Questo va fatto perché i nuovi file potrebbero contenere informazioni che i vecchi non hanno, o potrebbero avere una sintassi diversa. I cambiamenti effettuati nei nuovi pacchetti possono infatti recare dei cambiamenti nel formato dei file di configurazione e negli script di avvio contenuti in /etc. Al tempo stesso dovrete immettere i vostri vecchi dati nei nuovi file per mantenere le vecchie configurazioni.

Per alcuni file bisogna stare attenti ad eseguire questo passo perché si rischia di perdere utenti o configurazioni che avevamo in precedenza.

Comunque come vedete lo script non rinomina i file

  • /etc/rc.d/rc.inet1.conf.new
  • /etc/rc.d/rc.local.new
  • /etc/group.new
  • /etc/passwd.new
  • /etc/shadow.new


Questo perché sono i file in cui sono memorizzati i vostri utenti, i gruppi, le password e le informazioni sulla vostra rete. Quindi non allarmatevi se ritrovate ancora alcuni file con estensione .new e soprattutto non sostituiteli a quelli vecchi se non sapete bene cosa state facendo.

Quindi sta a voi modificare, se necessario, questi vecchi file facendo un confronto con quelli con estensione .new

Normalmente modificare questi file non sempre serve, potete lasciarli come sono, anche in questo caso l'esperienza e la conoscenza del sistema sono la base per effettuare le modifiche come più ci piace. Come detto sopra, bisogna però stare attenti alle modifiche importanti, come il cambio di alcuni programmi di avvio e/o di configurazione.

Ci sono anche file fuori /etc, come /usr/man/man.conf.new e /usr/share/vim/vimrc.new


[modifica] Aggiornare i pacchetti delle localizzazioni di KDE

A seconda di come avete aggiornato il sistema, potreste ritrovarvi con tutti i file di localizzazione di KDE o con nessuno. Siccome occupano 500Mb conviene lasciare solamente quelli effettivamente utilizzati.

Vediamo caso per caso.

[modifica] Si è aggiornato tramite --install-new

Se si è aggiornato con il metodo consigliato da Pat

# upgradepkg --install-new */*.t*?z

conviene disintallarli tutti e dopo installare solamente quelli veramente utilizzati.

Per fare ciò bisogna portarsi nella dir /var/log/packages e rimuovere tutto.

# cd /var/log/packages
# removepkg kde-i18n* koffice-l10n*

Successivamente, tornare nella directory /mnt/dvd/slackare ed installare quelli di cui si ha effettivamente bisogno. Per esempio per installare quelli in lingua italiana, bisogna usare il comando

# upgradepkg --install-new kdei/k*it*txz


[modifica] Si è aggiornato tramite lo script di Pat

Se per aggiornare il sistema si è utilizzato lo script di Pat visto in precendenza, basta aggiornare solamente i file effettivamente utilizzati con il comando

# upgradepkg --install-new kdei/*.txz


[modifica] Si è aggiornato tramite il metodo alternativo

Se si è seguito il metodo consigliato da me, probabilmente non ci sarà da fare niente, in quanto si saranno aggiornati solamente i file di localizzazione precedentemente usati.

Controllare comunque non fa mai male :-)


[modifica] Non si utilizzava nessuna localizzazione per KDE

Se prima non veniva utilizzata alcuna localizzazione per KDE naturalmente bisogna valutare se continuare così o installare le localizzazioni che vogliamo.

Stessa cosa se vogliamo aggiungerne (o rimuoverne) altre, per esempio per utilizzare varie lingue.

In questo caso bisogna spostarsi nella directory kdei e procedere all'installazione o rimozione dei pacchetti delle localizzazioni che ci interessano.

In tutti i casi l'importante è fare questo per i pacchetti kde, koffice e k3b, naturalmente questi ultimi due se sono utilizzati.


[modifica] Tornare in modalità multiutente

Una volta fatte queste modifiche e dopo essere sicuri che tutto sia giusto si può tornare in modalità multiutente

# telinit 3

A volte al termine della procedura di riavvio non compare la shell, ma niente paura, basta premere invio per visualizzarla.


A questo punto potete riavviare e se tutto è andato per il verso giusto trovarvi nella Slackware 13.37

Buon divertimento con la 13.37 :-)


[modifica] Reinstallare driver proprietari

Se usiamo driver proprietari, come per esempio i driver NVIDIA, una volta fatto il reboot ricordarsi di reinstallare tali driver

[modifica] Possibile errore della procedura di aggiornamento

Se il sistema non si riavvia correttamente, o si è fatto qualche danno durante la procedura di aggiornamento, niente drammi. Prima di formattare, come si usa in altri sistemi, è possibile sempre cercare di reinstallare sul sistema non funzionante la Slackware 13.37

Per fare questo bisogna per prima cosa ripristinare le glibc, solitamente il punto critico del sistema, e successivamente aggiornare l'intero sistema con una delle procedure sopra descritte.

Se proprio non ci riuscite potete invece ripristinare il backup e ripetere la procedura.

E se non si è fatto il backup? Come non avete fatto il backup??? Questa è la prima cosa fare come abbiamo detto prima ;-)

[modifica] Problemi comuni con la nuova versione

Prima di chiedere aiuto nei vari forum assicurarsi di aver letto i documenti Consigli e problemi noti della 13.37 e delle versioni precedenti, presenti in questo wiki, ed il file CHANGES_AND_HINTS.TXT della distribuzione.

[modifica] Conclusioni

Spero che la guida possa essere stata di aiuto, qualsiasi critica, modifica o aggiunta è ben accetta

Naturalmente l'esperienza e la conoscenza del sistema possono portare ad usare sistemi diversi o a "rischiare" di più nell'aggiornamento. L'importante è sapere sempre cosa si sta facendo e cosa andiamo a modificare. Io ho cercato di fare una guida il più adatta possibile a chi si accinge per la prima volta a passare ad una 13.37.

Per inviare commenti, suggerimenti, critiche od altro seguire il relativo post nel forum


[modifica] Copyright

Copyright (c) by Corrado “Conraid” Franco

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available from http://www.fsf.org/licenses/fdl.html.

Tutti i copyright sono di proprietà dei rispettivi detentori, a meno che indicato diversamente. L’uso di un termine in questo documento non inficia la validità di qualunque marchio di fabbrica o marchio di servizio. Nominare un particolare prodotto o marchio non deve essere considerato come pubblicità.


[modifica] Voci correlate

Script per backup


[modifica] Collegamenti Esterni

-- Conraid

Strumenti personali
Namespace

Varianti