Upgrade da Etch a Lenny: Difference between revisions
mNo edit summary |
m →Cups |
||
| (21 intermediate revisions by the same user not shown) | |||
| Line 5: | Line 5: | ||
* Fare una copia di comodo locale della etc: | * Fare una copia di comodo locale della etc: | ||
sudo tar cvf /files/etc.tar /etc | sudo mkdir -p /files; sudo tar cvf /files/etc.tar /etc | ||
== | == Preconfigurazione APT== | ||
* Aggiornare all'ultimo rilascio di etch: | |||
sudo apt-get update && sudo apt-get dist-upgrade | |||
===Pulizia Pacchetti=== | |||
* Rimuovere i pacchetti non necessari | * Rimuovere i pacchetti non necessari | ||
| Line 30: | Line 34: | ||
</pre> | </pre> | ||
===Disabilitazione Pinning APT=== | |||
Svuotare, se non si usano backports particolari, il file /etc/apt/preferences | Svuotare, se non si usano backports particolari, il file /etc/apt/preferences | ||
| Line 38: | Line 42: | ||
sudo touch /etc/apt/preferences | sudo touch /etc/apt/preferences | ||
===Verifica Stato Pacchetti=== | |||
* Verificare se ci sono pacchetti con problemi di installazione: | * Verificare se ci sono pacchetti con problemi di installazione: | ||
dpkg --audit | dpkg --audit | ||
| Line 51: | Line 56: | ||
* Togliere i pacchetti marcati come AUTO che invece vanno eliminati: | * Togliere i pacchetti marcati come AUTO che invece vanno eliminati: | ||
sudo aptitude unmarkauto | sudo aptitude unmarkauto vim | ||
* Sostituire "etch" con "'''lenny'''" in | * Sostituire "etch" con "'''lenny'''" in | ||
sudoedit /etc/apt/sources.list | sudoedit /etc/apt/sources.list | ||
===Verifica Dimensione Cache APT=== | |||
* Impostare un valore alto per la cache APT se serve: | * Impostare un valore alto per la cache APT se serve: | ||
cat /etc/apt/apt.conf | |||
echo 'APT::Cache-Limit "12500000";' | sudo tee -a /etc/apt/apt.conf >/dev/null | echo 'APT::Cache-Limit "12500000";' | sudo tee -a /etc/apt/apt.conf >/dev/null | ||
| Line 62: | Line 70: | ||
Altrimenti RIMUOVERE questo limite. | Altrimenti RIMUOVERE questo limite. | ||
sudo rm /etc/apt/apt.conf ; sudo touch /etc/apt/apt.conf | sudo rm /etc/apt/apt.conf ; sudo touch /etc/apt/apt.conf | ||
===Impostazione Proxy APT=== | |||
Se si prevede di aggiornare più macchine, impostare l'utilizzo del proxy per apt: | |||
echo "Acquire::http::Proxy \"http://proxy.$(cat /etc/resolv.conf | grep search | cut -f 2 --delim=' '):3128\";" | |||
==Aggiornamento== | ==Aggiornamento== | ||
| Line 75: | Line 89: | ||
*Installare/Aggiornare aptitude: | *Installare/Aggiornare aptitude: | ||
sudo aptitude install aptitude | sudo aptitude install aptitude | ||
Se per caso si ottiene l'errore: | |||
<pre> | |||
A non-dpkg owned copy of the C library was found in /lib/tls. | |||
It is not safe to upgrade the C library in this situation; | |||
please remove that copy of the C library and try again. | |||
dpkg: error processing /var/cache/apt/archives/libc6_2.7-18lenny2_i386.deb (--unpack): | |||
subprocess pre-installation script returned error exit status 1 | |||
Errors were encountered while processing: | |||
/var/cache/apt/archives/libc6_2.7-18lenny2_i386.deb | |||
</pre> | |||
Provare a cancellare i files incriminati: | |||
sudo mkdir -p /files/old/lib/tls; sudo mv ld-2.3.2.so /files/old/lib/tls | |||
sudo mkdir -p /files/old/lib/tls; sudo mv libc-2.3.2.so /files/old/lib/tls | |||
Se non fosse sufficiente, vedere [http://forums.debian.net/viewtopic.php?f=17&t=47620#p272282 Debian User Forums • View topic - Problem upgrading to lenny (SOLVED)] che rimanda a quanto contenuto nel file | |||
cat /var/lib/dpkg/info/libc6.preinst | |||
*Installare/Aggiornare apt: | *Installare/Aggiornare apt: | ||
| Line 88: | Line 121: | ||
* Installare il nuovo kernel, ad esempio: | * Installare il nuovo kernel, ad esempio: | ||
sudo | sudo aptitude install linux-image-2.6-686 | ||
*Sistemare le dipendenze: | *Sistemare le dipendenze: | ||
| Line 103: | Line 136: | ||
sudo aptitude dist-upgrade | sudo aptitude dist-upgrade | ||
==Upgrade Pacchetti Specifici== | |||
== | |||
===Macchine con hard disk SCSI=== | |||
'''IMPORTANTE: MACCHINE CON HARD DISK SCSI''': nel caso di hdd scsi, [http://www.debian.org/releases/stable/i386/release-notes/ch-upgrading.en.html#boot-timing è necessario impostare un ritardo nel mount della root], altrimenti il boot fallisce, impostando il parametro di avvio del kernel | |||
rootdelay=x | |||
Quindi: | |||
sudoedit /boot/grub/menu.lst | |||
# kopt=root=/dev/md0 ro rootdelay=30 | |||
sudo update-grub | |||
===dhcp3-server=== | |||
Se esiste un server DHCP installato, ma disabilitato, esso viene riabilitato. | |||
Fermarlo: | |||
sudo invoke-rc.d dhcp3-server stop | |||
Disabilitarlo: | |||
sudo update-rc.d -f dhcp3-server remove | |||
===sysctl=== | ===sysctl=== | ||
Se la macchina fa routing, verificare che ci sia: | Se la macchina fa routing, verificare che ci sia in: | ||
sudoedit /etc/sysctl.conf | sudoedit /etc/sysctl.conf | ||
il parametro: | |||
net.ipv4.ip_forward=1 | |||
Attivarlo: | |||
sudo sysctl -p | sudo sysctl -p | ||
===Merge delle configurazioni sovrascritte | |||
===Isdnutils=== | |||
L'upgrade di questo pacchetto comporta l'attivazione del servizio. | |||
Fermarlo, altrimenti si rimarrà connessiin ISDN | |||
sudo invoke-rc.d isdnutils stop | |||
Disabilitare l'avvio in automatico: | |||
sudo update-rc.d -f isdnutils remove | |||
===Cups=== | |||
* Impostazione autenticazione stampanti | |||
Occorre forzare a "none" la richiesta di autorizzazione per ognic oda IPP dichiarata: | |||
sudoedit /etc/cups/printers.conf | |||
<Printer ...> | |||
AuthInfoRequired none | |||
... | |||
</Printer> | |||
* Se la riavvio, in samba nons i vedono più le stampanti, controllare il log di CUPS: | |||
tail /var/log/cups/error_log | |||
Unsupported character set "iso-8859-1" | |||
tail /var/log/cups/access_log | |||
POST / HTTP/1.1" 200 134 CUPS-Get-Classes client-error-bad-request | |||
Aggiungere quindi | |||
sudoedit /etc/samba/smb.conf | |||
[global] | |||
display charset = UTF8 | |||
* http://ubuntuforums.org/showpost.php?p=5641530&postcount=4 | |||
* http://daniel.mateos.cc/articles/2008/05/15/sambacups-charset-problems-in-debian-etch | |||
===Sasl=== | |||
Fare il merge della configurazione sovrascritta. | |||
Verificare se sasl autentica correttamente per il servizio SMTPD | |||
sudo -u postfix testsaslauthd -s smtpd -f /var/spool/postfix/var/run/saslauthd/mux -u username -p password | |||
0: OK "Success." | |||
Verificare se l'autenticazioen SMTP funziona | |||
sudo apt-get install swaks | |||
swaks -to gabriele@rvmgroup.it -s ipserversmtp -au username -ap password | |||
Se non funziona: | |||
* Verificare che in | |||
sudoedit /etc/default/saslauthd | |||
ci sia l'opzione | |||
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd" | |||
* Fare l'override: | |||
dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd | |||
* Aggiungere postfix al gruppo sasl | |||
sudo adduser postfix sasl | |||
* Killare tutte le istanze di sasl | |||
sudo killall saslauthd; sudo killall saslauthd; sudo killall saslauthd | |||
* Riavviare SASL | |||
sudo invoke-rc.d saslauthd start | |||
* Verificare che il socket sasl sia nella directory giusta: | |||
sudo ls -al /var/spool/postfix/var/run/saslauthd/ | |||
<pre> | |||
total 940 | |||
drwx--x--- 2 root sasl 4096 Jul 15 15:57 . | |||
drwxr-xr-x 3 root root 4096 Jan 4 2006 .. | |||
-rw------- 1 root root 0 Jul 15 15:57 cache.flock | |||
-rw------- 1 root root 945152 Jul 15 15:57 cache.mmap | |||
srwxrwxrwx 1 root root 0 Jul 15 15:57 mux | |||
-rw------- 1 root root 0 Jul 15 15:57 mux.accept | |||
-rw------- 1 root root 6 Jul 15 15:57 saslauthd.pid | |||
</pre> | |||
*Verificare che smtpd abbia i flag corretti in master.cf | |||
cat /etc/postfix/master.cf | grep ^smtp | |||
smtp inet n - y - - smtpd | |||
* Controllare | |||
sudoedit /etc/postfix/sasl/smtpd.conf | |||
pwcheck_method: saslauthd | |||
mech_list: PLAIN LOGIN | |||
* Ritestare, magari facendo il debug di SASL | |||
sudo killall saslauthd; sudo killall saslauthd; sudo killall saslauthd | |||
sudo saslauthd -c -m /var/spool/postfix/var/run/saslauthd -a pam -d | |||
<pre> | |||
saslauthd[5420] :main : num_procs : 5 | |||
saslauthd[5420] :main : mech_option: NULL | |||
saslauthd[5420] :main : run_path : /var/spool/postfix/var/run/saslauthd | |||
saslauthd[5420] :main : auth_mech : pam | |||
saslauthd[5420] :cache_alloc_mm : mmaped shared memory segment on file: /var/spool/postfix/var/run/saslauthd/cache.mmap | |||
... | |||
saslauthd[5420] :cache_init_lock : flock file opened at /var/spool/postfix/var/run/saslauthd/cache.flock | |||
saslauthd[5420] :ipc_init : using accept lock file: /var/spool/postfix/var/run/saslauthd/mux.accept | |||
saslauthd[5420] :detach_tty : master pid is: 0 | |||
saslauthd[5420] :ipc_init : listening on socket: /var/spool/postfix/var/run/saslauthd/mux | |||
... | |||
saslauthd[5424] :do_auth : auth success: [user=ufficio.spedizioni] [service=smtp] [realm=] [mech=pam] | |||
saslauthd[5424] :do_request : response: OK | |||
saslauthd[5425] :rel_accept_lock : released accept lock | |||
</pre> | |||
==Merge delle configurazioni sovrascritte== | |||
Usare lo script: | Usare lo script: | ||
| Line 123: | Line 295: | ||
</pre> | </pre> | ||
/tmp/confronta /etc/nomefile | /tmp/confronta /etc/nomefile | ||
==Operazioni finali== | ==Operazioni finali== | ||
| Line 130: | Line 302: | ||
sudo apt-get remove --purge package_name | sudo apt-get remove --purge package_name | ||
* Se non servono, rimuovere i seguenti pacchetti: | |||
sudo apt-get remove --purge fam | |||
sudo apt-get remove --purge portmap | |||
sudo apt-get remove --purge avahi-daemon avahi-utils | |||
sudo apt-get remove --purge dbus | |||
* Rimuovere i pacchetti che non hanno dipendenze necessarie: | * Rimuovere i pacchetti che non hanno dipendenze necessarie: | ||
<pre> | |||
if [ -z "$(deborphan)" ]; \ | |||
then \ | |||
echo "Nothing to Remove"; \ | |||
else \ | |||
sudo apt-get remove --purge $(deborphan) | |||
fi | |||
</pre> | |||
* Rimuovere le configurazione dei pacchetti disinstallati: | * Rimuovere le configurazione dei pacchetti disinstallati: | ||
<pre> | |||
if [ -z "$(dpkg -l | grep ^rc | tr -s ' ' | cut -f 2 --delim=' ')" ]; \ | |||
then \ | |||
echo "Nothing to Purge"; \ | |||
else \ | |||
sudo dpkg --purge $(dpkg -l | grep ^rc | tr -s ' ' | cut -f 2 --delim=' '); \ | |||
fi | |||
</pre> | |||
* Se non si desidera più utilizzare il proxy per APT, eliminarlo dalla configurazione: | |||
sudo sed -i '/Acquire::http::Proxy/d' /etc/apt/apt.conf | |||
==Riferimenti== | ==Riferimenti== | ||
*[http://www.debian.org/releases/stable/i386/release-notes/ch-upgrading.html Release Notes for Debian GNU/Linux 5.0 (lenny), Intel x86: Chapter 4. Upgrades from previous releases] | *[http://www.debian.org/releases/stable/i386/release-notes/ch-upgrading.html Release Notes for Debian GNU/Linux 5.0 (lenny), Intel x86: Chapter 4. Upgrades from previous releases] | ||
Latest revision as of 11:58, 14 June 2010
Backup del Sistema
Come sempre ...
- Fare una copia di comodo locale della etc:
sudo mkdir -p /files; sudo tar cvf /files/etc.tar /etc
Preconfigurazione APT
- Aggiornare all'ultimo rilascio di etch:
sudo apt-get update && sudo apt-get dist-upgrade
Pulizia Pacchetti
- Rimuovere i pacchetti non necessari
- Rimuovere i pacchetti che non hanno dipendenze necessarie:
if [ -z "$(deborphan)" ]; \
then \
echo "Nothing to Remove"; \
else \
sudo apt-get remove --purge $(deborphan)
fi
- Rimuovere le configurazione dei pacchetti disinstallati:
if [ -z "$(dpkg -l | grep ^rc | tr -s ' ' | cut -f 2 --delim=' ')" ]; \
then \
echo "Nothing to Purge"; \
else \
sudo dpkg --purge $(dpkg -l | grep ^rc | tr -s ' ' | cut -f 2 --delim=' '); \
fi
Disabilitazione Pinning APT
Svuotare, se non si usano backports particolari, il file /etc/apt/preferences
cat /etc/apt/preferences
sudo rm /etc/apt/preferences sudo touch /etc/apt/preferences
Verifica Stato Pacchetti
- Verificare se ci sono pacchetti con problemi di installazione:
dpkg --audit
- Verificare se ci sono pacchetti in HOLD per aptitude:
sudo aptitude search "~ahold" | grep "^.h"
- Per apt-get:
sudo dpkg --get-selections | grep hold
- Toglierli dallo stato HOLD con
sudo aptitude unhold package_name
- Togliere i pacchetti marcati come AUTO che invece vanno eliminati:
sudo aptitude unmarkauto vim
- Sostituire "etch" con "lenny" in
sudoedit /etc/apt/sources.list
Verifica Dimensione Cache APT
- Impostare un valore alto per la cache APT se serve:
cat /etc/apt/apt.conf
echo 'APT::Cache-Limit "12500000";' | sudo tee -a /etc/apt/apt.conf >/dev/null
Altrimenti RIMUOVERE questo limite.
sudo rm /etc/apt/apt.conf ; sudo touch /etc/apt/apt.conf
Impostazione Proxy APT
Se si prevede di aggiornare più macchine, impostare l'utilizzo del proxy per apt:
echo "Acquire::http::Proxy \"http://proxy.$(cat /etc/resolv.conf | grep search | cut -f 2 --delim=' '):3128\";"
Aggiornamento
- Avviare la registrazione della sessione:
script -t 2>~/upgrade-lenny.time -a ~/upgrade-lenny.script
- Aggiornare le nuove fonti APT:
sudo aptitude update
Aggiornamento di Aptitude
- Installare/Aggiornare aptitude:
sudo aptitude install aptitude
Se per caso si ottiene l'errore:
A non-dpkg owned copy of the C library was found in /lib/tls. It is not safe to upgrade the C library in this situation; please remove that copy of the C library and try again. dpkg: error processing /var/cache/apt/archives/libc6_2.7-18lenny2_i386.deb (--unpack): subprocess pre-installation script returned error exit status 1 Errors were encountered while processing: /var/cache/apt/archives/libc6_2.7-18lenny2_i386.deb
Provare a cancellare i files incriminati:
sudo mkdir -p /files/old/lib/tls; sudo mv ld-2.3.2.so /files/old/lib/tls sudo mkdir -p /files/old/lib/tls; sudo mv libc-2.3.2.so /files/old/lib/tls
Se non fosse sufficiente, vedere Debian User Forums • View topic - Problem upgrading to lenny (SOLVED) che rimanda a quanto contenuto nel file
cat /var/lib/dpkg/info/libc6.preinst
- Installare/Aggiornare apt:
sudo aptitude install apt
- Aggiornare i puntatori del database aptitude:
sudo aptitude search "?false"
Aggiornamento del Kernel
- Veriricare quel kernel è in uso:
dpkg -l "linux-image*" | grep ^ii
- Installare il nuovo kernel, ad esempio:
sudo aptitude install linux-image-2.6-686
- Sistemare le dipendenze:
sudo aptitude unmarkauto $(dpkg-query -W 'linux-image-2.6-*' | cut -f1)
Aggiornamento del sistema
- Durante l'aggiornamento, accettare con Y la sovrascrittura dei files di configurazione, ed annotarne i nomi.
- Aggiornare senza rimuovere:
sudo aptitude safe-upgrade
- Aggiornare il resto del sistema:
sudo aptitude dist-upgrade
Upgrade Pacchetti Specifici
Macchine con hard disk SCSI
IMPORTANTE: MACCHINE CON HARD DISK SCSI: nel caso di hdd scsi, è necessario impostare un ritardo nel mount della root, altrimenti il boot fallisce, impostando il parametro di avvio del kernel
rootdelay=x
Quindi:
sudoedit /boot/grub/menu.lst
# kopt=root=/dev/md0 ro rootdelay=30
sudo update-grub
dhcp3-server
Se esiste un server DHCP installato, ma disabilitato, esso viene riabilitato.
Fermarlo:
sudo invoke-rc.d dhcp3-server stop
Disabilitarlo:
sudo update-rc.d -f dhcp3-server remove
sysctl
Se la macchina fa routing, verificare che ci sia in:
sudoedit /etc/sysctl.conf
il parametro:
net.ipv4.ip_forward=1
Attivarlo:
sudo sysctl -p
Isdnutils
L'upgrade di questo pacchetto comporta l'attivazione del servizio.
Fermarlo, altrimenti si rimarrà connessiin ISDN
sudo invoke-rc.d isdnutils stop
Disabilitare l'avvio in automatico:
sudo update-rc.d -f isdnutils remove
Cups
- Impostazione autenticazione stampanti
Occorre forzare a "none" la richiesta di autorizzazione per ognic oda IPP dichiarata:
sudoedit /etc/cups/printers.conf
<Printer ...> AuthInfoRequired none ... </Printer>
- Se la riavvio, in samba nons i vedono più le stampanti, controllare il log di CUPS:
tail /var/log/cups/error_log
Unsupported character set "iso-8859-1"
tail /var/log/cups/access_log
POST / HTTP/1.1" 200 134 CUPS-Get-Classes client-error-bad-request
Aggiungere quindi
sudoedit /etc/samba/smb.conf
[global]
display charset = UTF8
- http://ubuntuforums.org/showpost.php?p=5641530&postcount=4
- http://daniel.mateos.cc/articles/2008/05/15/sambacups-charset-problems-in-debian-etch
Sasl
Fare il merge della configurazione sovrascritta.
Verificare se sasl autentica correttamente per il servizio SMTPD
sudo -u postfix testsaslauthd -s smtpd -f /var/spool/postfix/var/run/saslauthd/mux -u username -p password
0: OK "Success."
Verificare se l'autenticazioen SMTP funziona
sudo apt-get install swaks
swaks -to gabriele@rvmgroup.it -s ipserversmtp -au username -ap password
Se non funziona:
- Verificare che in
sudoedit /etc/default/saslauthd
ci sia l'opzione
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"
- Fare l'override:
dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
- Aggiungere postfix al gruppo sasl
sudo adduser postfix sasl
- Killare tutte le istanze di sasl
sudo killall saslauthd; sudo killall saslauthd; sudo killall saslauthd
- Riavviare SASL
sudo invoke-rc.d saslauthd start
- Verificare che il socket sasl sia nella directory giusta:
sudo ls -al /var/spool/postfix/var/run/saslauthd/
total 940 drwx--x--- 2 root sasl 4096 Jul 15 15:57 . drwxr-xr-x 3 root root 4096 Jan 4 2006 .. -rw------- 1 root root 0 Jul 15 15:57 cache.flock -rw------- 1 root root 945152 Jul 15 15:57 cache.mmap srwxrwxrwx 1 root root 0 Jul 15 15:57 mux -rw------- 1 root root 0 Jul 15 15:57 mux.accept -rw------- 1 root root 6 Jul 15 15:57 saslauthd.pid
- Verificare che smtpd abbia i flag corretti in master.cf
cat /etc/postfix/master.cf | grep ^smtp smtp inet n - y - - smtpd
- Controllare
sudoedit /etc/postfix/sasl/smtpd.conf
pwcheck_method: saslauthd mech_list: PLAIN LOGIN
- Ritestare, magari facendo il debug di SASL
sudo killall saslauthd; sudo killall saslauthd; sudo killall saslauthd sudo saslauthd -c -m /var/spool/postfix/var/run/saslauthd -a pam -d
saslauthd[5420] :main : num_procs : 5 saslauthd[5420] :main : mech_option: NULL saslauthd[5420] :main : run_path : /var/spool/postfix/var/run/saslauthd saslauthd[5420] :main : auth_mech : pam saslauthd[5420] :cache_alloc_mm : mmaped shared memory segment on file: /var/spool/postfix/var/run/saslauthd/cache.mmap ... saslauthd[5420] :cache_init_lock : flock file opened at /var/spool/postfix/var/run/saslauthd/cache.flock saslauthd[5420] :ipc_init : using accept lock file: /var/spool/postfix/var/run/saslauthd/mux.accept saslauthd[5420] :detach_tty : master pid is: 0 saslauthd[5420] :ipc_init : listening on socket: /var/spool/postfix/var/run/saslauthd/mux ... saslauthd[5424] :do_auth : auth success: [user=ufficio.spedizioni] [service=smtp] [realm=] [mech=pam] saslauthd[5424] :do_request : response: OK saslauthd[5425] :rel_accept_lock : released accept lock
Merge delle configurazioni sovrascritte
Usare lo script:
cat > /tmp/confronta <<'EOFile' #!/bin/bash sudo vimdiff $1.dpkg-old $1 EOFile chmod +x /tmp/confronta
/tmp/confronta /etc/nomefile
Operazioni finali
- Rimuovere i vecchi kernel:
dpkg -l | grep linux-image | tr -s ' ' | cut -f 2 --delim=' ' | sort sudo apt-get remove --purge package_name
- Se non servono, rimuovere i seguenti pacchetti:
sudo apt-get remove --purge fam
sudo apt-get remove --purge portmap
sudo apt-get remove --purge avahi-daemon avahi-utils
sudo apt-get remove --purge dbus
- Rimuovere i pacchetti che non hanno dipendenze necessarie:
if [ -z "$(deborphan)" ]; \
then \
echo "Nothing to Remove"; \
else \
sudo apt-get remove --purge $(deborphan)
fi
- Rimuovere le configurazione dei pacchetti disinstallati:
if [ -z "$(dpkg -l | grep ^rc | tr -s ' ' | cut -f 2 --delim=' ')" ]; \
then \
echo "Nothing to Purge"; \
else \
sudo dpkg --purge $(dpkg -l | grep ^rc | tr -s ' ' | cut -f 2 --delim=' '); \
fi
- Se non si desidera più utilizzare il proxy per APT, eliminarlo dalla configurazione:
sudo sed -i '/Acquire::http::Proxy/d' /etc/apt/apt.conf