Upgrade da Etch a Lenny: Difference between revisions

From RVM Wiki
Jump to navigation Jump to search
 
(5 intermediate revisions by the same user not shown)
Line 8: Line 8:


== Preconfigurazione APT==
== Preconfigurazione APT==
* Aggiornare all'ultimo rilascio di etch:
sudo apt-get update && sudo apt-get dist-upgrade


===Pulizia Pacchetti===
===Pulizia Pacchetti===
Line 54: 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 openoffice.org vim
  sudo aptitude unmarkauto vim


* Sostituire "etch" con "'''lenny'''" in  
* Sostituire "etch" con "'''lenny'''" in  
Line 73: Line 75:
Se si prevede di aggiornare più macchine, impostare l'utilizzo del proxy per apt:
Se si prevede di aggiornare più macchine, impostare l'utilizzo del proxy per apt:


  echo "Acquire::http::Proxy \"http://proxy:port\";" | sudo tee -a /etc/apt/apt.conf > /dev/null
  echo "Acquire::http::Proxy \"http://proxy.$(cat /etc/resolv.conf | grep search | cut -f 2 --delim=' '):3128\";"


==Aggiornamento==
==Aggiornamento==
Line 87: 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 100: Line 121:


* Installare il nuovo kernel, ad esempio:
* Installare il nuovo kernel, ad esempio:
  sudo apt-get install linux-image-2.6-686
  sudo aptitude install linux-image-2.6-686


*Sistemare le dipendenze:
*Sistemare le dipendenze:
Line 159: Line 180:
===Cups===
===Cups===


Se la riavvio, in samba nons i vedono più le stampanti, controllare il log di 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
  tail /var/log/cups/error_log
Unsupported character set "iso-8859-1"
Unsupported character set "iso-8859-1"

Latest revision as of 11:58, 14 June 2010

Vedere: Release Notes for Debian GNU/Linux 5.0 (lenny), Intel x86::Chapter 4. Upgrades from previous releases

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

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

Riferimenti