Upgrade da Lenny a Squeeze: Difference between revisions
| (3 intermediate revisions by the same user not shown) | |||
| Line 20: | Line 20: | ||
== Preconfigurazione APT== | == Preconfigurazione APT== | ||
* Aggiornare all'ultimo rilascio | |||
sudo apt-get update | * Se non sono più disponibili i repository di lenny, cambiare al source apt in: | ||
sudoedit /etc/apt/sources.list | |||
<pre> | |||
... | |||
deb http://archive.debian.org/debian lenny main contrib non-free ù | |||
... | |||
</pre> | |||
* Aggiornare all'ultimo rilascio: | |||
sudo apt-get update | |||
sudo apt-get dist-upgrade | |||
===Pulizia Pacchetti=== | ===Pulizia Pacchetti=== | ||
| Line 127: | Line 138: | ||
==Accorgimenti== | ==Accorgimenti== | ||
* NON fare l'upgrade da un collegamento VPN, perchè verrà interrotto | * NON fare l'upgrade da un collegamento VPN, perchè verrà interrotto | ||
* Se è configurata una connessione ISDN, e l'upgrade avviene via WAN, è consigliabile rimuovere i pacchetti e poi reinstallarli: | |||
sudo apt-get remove isdnutils isdnutils-base | |||
* Direct upgrades from Debian releases older than 5.0 (lenny) are not supported. Please follow the instructions in the Release Notes for Debian GNU/Linux 5.0 to upgrade to 5.0 first. | * Direct upgrades from Debian releases older than 5.0 (lenny) are not supported. Please follow the instructions in the Release Notes for Debian GNU/Linux 5.0 to upgrade to 5.0 first. | ||
| Line 146: | Line 161: | ||
* Avviare la registrazione della sessione: | * Avviare la registrazione della sessione: | ||
script -t 2>>~/upgrade-squeeze.time -a ~/upgrade-squeeze.script | script -t 2>>~/upgrade-squeeze.time -a ~/upgrade-squeeze.script | ||
==Scaricamento pacchetti== | ==Scaricamento pacchetti== | ||
*Aggiornare le nuove fonti APT: | *Aggiornare le nuove fonti APT: | ||
sudo | sudo apt-get update | ||
* Scaricare i pacchetti necessari: | * Scaricare i pacchetti necessari: | ||
| Line 387: | Line 401: | ||
/tmp/confronta /etc/nomefile | /tmp/confronta /etc/nomefile | ||
==Verifica aggiornamento grub2== | ==Verifica aggiornamento grub2== | ||
| Line 419: | Line 423: | ||
* Se il boot ha successo, eliminare i vecchi files di configurazione: | * Se il boot ha successo, eliminare i vecchi files di configurazione: | ||
sudo rm -f /boot/grub/menu.lst* | sudo rm -f /boot/grub/menu.lst* | ||
==Fancontrol== | |||
* Verificare se ci sono sensori | |||
sudo sensors-detect | |||
* Abilitare | |||
sudo pwnconfig | |||
* Se non ci sono sensori, rimuovere: | |||
sudo apt-get remove --purge fancontrol | |||
==Migrazione ext4== | ==Migrazione ext4== | ||
Latest revision as of 10:09, 30 July 2012
Guida completa
Backup del Sistema
Come sempre ...
- Fare una copia di comodo locale della etc:
sudo mkdir -p /files; sudo tar --exclude=.svn -cvf /files/etc.tar /etc
- Installare rvm-utils
sudo apt-get install rvmutils
- Se la etc è sotto versioning
cd /etc; sudo svnaddmissing; sudo svndelmissing; sudo svn ci -m "Wild commit"
- Fermare cfengine, se attivo
sudo invoke-rc.d cfengine2 stop
Preconfigurazione APT
- Se non sono più disponibili i repository di lenny, cambiare al source apt in:
sudoedit /etc/apt/sources.list
... deb http://archive.debian.org/debian lenny main contrib non-free ù ...
- Aggiornare all'ultimo rilascio:
sudo apt-get update sudo apt-get dist-upgrade
Pulizia Pacchetti
- Rimuovere i pacchetti non necessari
- Marcare come non rimovibili da deborphan i pacchetti al bisogno
if (dpkg -l | grep -q avg85flx) && (uname -a | grep -q x86_64 ) ; then sudo deborphan -A libc6-i386 ; fi
- Rimuovere i pacchetti che non hanno dipendenze necessarie:
if [ ! -e /usr/bin/deborphan ]; then sudo aptitude install deborphan; fi
if [ -z "$(deborphan)" ]; \
then \
echo "Nothing to Remove"; \
else \
sudo apt-get remove --purge $(deborphan)
fi
sudo apt-get --purge autoremove
- Nel caso l'autoremove voglia rimuovere pacchetti che in realtà si vogliono tenere, marcarli come installati manualemente
sudo apt-mark unmarkauto packagename
e ripetere
sudo apt-get --purge autoremove
- 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
- Sostituire "lenny" con "squeeze" in /etc/apt/sources.list
sudo sed -i 's/lenny/squeeze/g' /etc/apt/sources.list
- Sostituire il repository volatile con squeeze-updates
sudo sed -i 's/^deb.*volatile.*$/deb http:\/\/ftp.it.debian.org\/debian squeeze-updates main contrib non-free/' /etc/apt/sources.list
- La lista delle sorgenti dovrebbe essere simile a:
sudoedit /etc/apt/sources.list
deb http://ftp.it.debian.org/debian/ squeeze main non-free contrib #deb-src http://ftp.it.debian.org/debian/ squeeze main non-free contrib deb http://security.debian.org/ squeeze/updates main contrib non-free #deb-src http://security.debian.org/ squeeze/updates main contrib non-free deb http://ftp.it.debian.org/debian squeeze-updates main contrib non-free deb-src http://ftp.it.debian.org/debian squeeze-updates main contrib non-free deb http://support.rvmgroup.it/debian binary/
Verifica Dimensione Cache APT
- Pulire la cache apt
sudo apt-get clean
- 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\";" | sudo tee -a /etc/apt/apt.conf
Accorgimenti
- NON fare l'upgrade da un collegamento VPN, perchè verrà interrotto
- Se è configurata una connessione ISDN, e l'upgrade avviene via WAN, è consigliabile rimuovere i pacchetti e poi reinstallarli:
sudo apt-get remove isdnutils isdnutils-base
- Direct upgrades from Debian releases older than 5.0 (lenny) are not supported. Please follow the instructions in the Release Notes for Debian GNU/Linux 5.0 to upgrade to 5.0 first.
- Script per merge delle configurazioni sovrascritte:
cat > /tmp/confronta <<'EOFile' #!/bin/bash sudo vimdiff $1.dpkg-old $1 EOFile chmod +x /tmp/confronta
Uso:
/tmp/confronta /etc/nomefile
- Avviare la registrazione della sessione:
script -t 2>>~/upgrade-squeeze.time -a ~/upgrade-squeeze.script
Scaricamento pacchetti
- Aggiornare le nuove fonti APT:
sudo apt-get update
- Scaricare i pacchetti necessari:
sudo apt-get dist-upgrade -d
Aggiornamento APT
sudo apt-get install apt apt-listchanges
Aggiornamento Kernel
- Identificare i kernel installati
dpkg -l "linux-image*" | grep ^ii
- Identificare il kernel in uso
uname -r
- Installare i firmware non free per ogni hardware che li necessita :
sudo apt-get install firmware-linux-nonfree firmware-realtek
- Installare la versione più recente nel caso di kernel standard, oppure quello adeguato:
sudo apt-get install linux-image-2.6-686
- Make sure that update-grub is run as part of the kernel upgrade, or run it manually:
sudo update-grub
- Aggiornare udev
sudo apt-get install udev
- Nel caso di dischi SCSI o lenti ad essere identificati, che potrebbero dare un errore di root non montabile, aggiungere il flag di boot al kernel
rootdelay=9
- Nel caso si utilizzino dischi PATA e sia attivo il il raid software, assicurarsi che gli array siano definiti con i nomi sdX:
sudo sed -i 's@/dev/hd@/dev/sd@g' /etc/mdadm/mdadm.conf
sudoedit /etc/mdadm/mdadm.conf
- Nel caso si utilizzino dischi PATA e si utilizza smart, assicurarsi che i dischi siano definiti con i nomi sdX:
sudoedit /etc/smartd.conf
Aggiornamento MySQL
- Proporrà la rimozione della versione 5.0:
sudo apt-get install mysql-server mysql-client
Aggiornamento Postfix
- Aggiornare, se serve anche con mysql:
sudo apt-get install postfix postfix-mysql
- La versione attuale non supporta più l'elenco delle opzioni su più righe. Ad esempio, formattare le opzioni come:
sudoedit /etc/postfix/main.cf
mynetworks = 127.0.0.0/8, 192.168.15.254
Aggiornamento base
- Aggiornare i pacchetti che non richiedono rimozioni, oppure proseguire con i singol:
sudo apt-get upgrade
Aggiornamento restanti pacchetti
- Aggiornare gli altri pacchetti:
sudo apt-get dist-upgrade
- Se rimangono dei pacchetti held back, aggiornarli usando ancora
sudo apt-get dist-upgrade
oppure
sudo apt-get -f install package
oppure, VERIFICANDO le eventuali rimozioni proposte
sudo aptitude dist-upgrade
Modifiche configurazioni
Aggiornamento amanda
Amanda server
- Togliere la direttiva tapebufs, deprecata
sudo sed -i 's/^tapebufs/#tapebufs/' /etc/amanda/DailySet1/amanda.conf sudo sed -i 's/^rawtapedev/#rawtapedev/' /etc/amanda/DailySet1/amanda.conf
- L'eseguibile ammt non esiste più. Utilizzare mt.
sudo apt-get install mt-st
- Sostituire quindi negli script di backup
# eject tape /usr/sbin/ammt -f /dev/st0 rewoffl
con
# eject tape /bin/mt -f /dev/st0 rewoffl
Amanda client
- Assicurarsi che l'access inetd sia attivo:
sudoedit /etc/inetd.conf
amanda dgram udp wait backup /usr/sbin/tcpd /usr/lib/amanda/amandad -auth=bsd amdump amindexd amidxtaped amandaidx stream tcp nowait backup /usr/lib/amanda/amindexd amindexd -auth=bsd amdump amindexd amidxtaped amidxtape stream tcp nowait backup /usr/lib/amanda/amidxtaped amidxtaped -auth=bsd amdump amindexd amidxtaped
oppure
amandaidx stream tcp nowait backup /usr/sbin/tcpd /usr/lib/amanda/amindexd amindexd -auth=bsd amdump amindexd amidxtaped amidxtape stream tcp nowait backup /usr/sbin/tcpd /usr/lib/amanda/amidxtaped amidxtaped -auth=bsd amdump amindexd amidxtaped amanda dgram udp wait backup /usr/sbin/tcpd /usr/lib/amanda/amandad -auth=bsd amdump amindexd amidxtaped
- Riavviare inet
sudo invoke-rc.d openbsd-inetd restart
Aggiornamento Cups
- Se non si riesce ad accedere in ssl a cups, vedi Impossibile accedere a CUPS errore 400 Bad Request
Aggiornamento dhcp3-server
Il pacchetto è sostituito da
isc-dhcp-server
La configuration directory diventa
/etc/dhcp
Il file di default configuration è
/etc/default/isc-dhcp-server
Il file init.d è
/etc/init.d/isc-dhcp-server
Aggiornamento nut
- I files di configurazione usano delle nuove direttive, cambiate come segue.
- ACL ACCEPT e REJECT non si usano più. Si usa listen:
sudoedit /etc/nut/upsd.conf
LISTEN 127.0.0.1 3493 LISTEN 192.168.x.x 3493
- allowfrom non si usa più, perchè lagestione degli accessi via ip è demandata a tcp-wrappers, togliere quindi da
sudoedit /etc/nut/upsd.users
allowfrom = localhost
- Eliminare, se non già fatto dalla procedura di upgrade (#562064 - deprecated udev rules installed by nut in /etc/udev/rules.d/52-nut-usbups.rules - Debian Bug report logs, #522327 - nut: upsdrvctl does not start due to an udev configuration change - Debian Bug report logs), le regole udev, perchè inserite in
/lib/udev/rules.d/52-nut-usbups.rules
sudo svn delete --force /etc/udev/rules.d/52_nut-usbups.rules
Aggiornamento fetchmail
- È necessario inserire il parametro bad-header, altrimenti i messaggi mal formattati verranno skippati:
sudoedit /etc/fetchmailrc
poll server.name.dom bad-header accept
Aggiornamento courier-imap
Se alla connessione con un client imap si ottiene l'errore:
Filesystem notification initialization error -- contact your mail administrator (check for configuration errors with the FAM/Gamin library)
Occorre installare la libreria gamin al posto di fam:
sudo apt-get install libgamin0
Riavviare courier
for script in /etc/init.d/courier*; do sudo $script restart;done
Aggiornamento configurazione dovecot
- Utilizza ucf, quindi il confronta non va:
cd /etc/dovecot sudo vimdiff dovecot.conf.ucf-old dovecot.con sudo invoke-rc.d dovecot restart
Aggiornamento Configurazione postgrey
sudo sed -i 's/check_policy_service inet:127.0.0.1:60000/check_policy_service inet:127.0.0.1:10023/' /etc/postfix/main.cf
Migrazione concurrent boot
Se la migrazione al nuovo sistema non avviene automaticamente, rilanciare la migrazione e leggere gli errori:
sudo dpkg-reconfigure sysv-rc
- Se ci sono errori tipo
package packagename removed but not purged
è necessario purgare il pacchetto
sudo aptitude purge packagename
- Se ci sono errori tipo:
insserv: warning: script 'firewall' missing LSB tags and overrides
Aggiungere un'intestazione LSB allo script, tipo:
sudoedit /etc/init.d/firewall
#!/bin/sh -e ### BEGIN INIT INFO # Provides: firewall # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: S # Default-Stop: 0 1 6 # X-Interactive: false # Short-Description: Start/stop iptables firewall ### END INIT INFO # sudo update-rc.d firewall start 43 S . stop 32 0 . stop 32 1 . stop 32 6 .
Disabilitazione errore pcspkr
Amavisd-new e AVG
Come scritto in Installazione e configurazione di AVG su Debian, impostare l'uso con socket
sudoedit /etc/amavis/conf.d/15-av_scanners
['AVG Anti-Virus',
\&ask_daemon, ["SCAN {}\n", '/opt/avg/avg8/var/run/avgsocket'],
qr/^200/m, qr/^403/m, qr/^403 .*?: ([^\r\n]+)/m ],
Pulizia modprobe.d
sudo svn delete /etc/modprobe.d/arch/
Aggiornamento configurazione locale
Impostazione orario UTC
- Impostare l'orario in UTC seguendo: Impostare l'orario di una macchina in UTC
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
Verifica aggiornamento grub2
- Se non si aggiorna grub2, fare
sudo apt-get install -f grub
- Riavviare
sudo reboot
- Se tutto è ok, passare a grub2
sudo upgrade-from-grub-legacy
- Impostare la modalità testuale e l'impostazione della root come device name
sudo sed -i 's/^#GRUB_DISABLE_LINUX_UUID=true/GRUB_DISABLE_LINUX_UUID=true/; s/^#GRUB_TERMINAL=console/GRUB_TERMINAL=console/' /etc/default/grub
sudo update-grub
- Riavviare
sudo reboot
- Se il boot ha successo, eliminare i vecchi files di configurazione:
sudo rm -f /boot/grub/menu.lst*
Fancontrol
- Verificare se ci sono sensori
sudo sensors-detect
- Abilitare
sudo pwnconfig
- Se non ci sono sensori, rimuovere:
sudo apt-get remove --purge fancontrol
Migrazione ext4
Pulizia pacchetti
- Rimuovere i vecchi kernel:
dpkg -l | grep linux-image | tr -s ' ' | cut -f 2 --delim=' ' | sort sudo apt-get remove --purge linux-image-2.6.26-2-686 package_name
- Pulizia vecchi files initramfs-tools: vedi Evitare l'errore update-initramfs /boot/initrd.img-x.x.xx-x-xxx does not exist. Cannot update.
- Se non servono, rimuovere i seguenti pacchetti:
sudo apt-get remove --purge portmap avahi-daemon avahi-utils dbus
- Rimuovere i pacchetti auto non necessari
sudo apt-get autoremove --purge
- 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
sudo aptitude purge ~c
- Se non si desidera più utilizzare il proxy per APT, eliminarlo dalla configurazione:
sudo sed -i '/Acquire::http::Proxy/d' /etc/apt/apt.conf
- Commit etc
cd /etc sudo ~/bin/svnaddmissing sudo ~/bin/svndelmissing sudo svn ci -m "* First Squeeze commit"
- sudo reboot
Altro
- dhcp3 (replaced by isc-dhcp)
D* uring the upgrade, you will normally have been offered the option to "chainload" GRUB 2: that is, to keep GRUB Legacy as the primary boot loader but to add an option to it to load GRUB 2 and then start your Debian GNU/Linux system from that. This allows you to verify that GRUB 2 works on your system before committing to use it permanently.
Once you have confirmed that GRUB 2 works, you should switch to using it properly: the chainloading setup is only intended to be used temporarily. You can do this by running upgrade-from-grub-legacy.
- mysql-server-5.0, successor is mysql-server-5.1.
- Munin web path change
For squeeze, the default location for the generated web content of munin has been changed from /var/www/munin to /var/cache/munin/www and therefore /etc/munin/munin.conf needs to be adapted on upgrades, if it has been changed by the admin. If you are upgrading, please read /usr/share/doc/munin/NEWS.Debian.gz.