Upgrade di Debian da Wheezy a Jessie: Difference between revisions
Jump to navigation
Jump to search
Created page with "=Preparazione= * Avviare screen * Registrare la sessione: script -t 2>~/upgrade-jessie.time -a ~/upgrade-jessie.script ==Backup del Sistema== Come sempre ... * Fare una c..." |
|||
| (11 intermediate revisions by the same user not shown) | |||
| Line 9: | Line 9: | ||
* Fare una copia di comodo locale della etc: | * Fare una copia di comodo locale della etc: | ||
sudo mkdir -p /files; sudo tar --exclude=.svn --exclude=.git -cvf /files/etc.tar /etc | sudo mkdir -p /files; sudo tar --exclude=.svn --exclude=.git -cvf /files/etc-wheezy.tar /etc | ||
* Fermare cfengine o puppet, se attivi | * Fermare cfengine o puppet, se attivi | ||
| Line 17: | Line 17: | ||
==Aggiornamento Wheezy== | ==Aggiornamento Wheezy== | ||
* Aggiornare ad ultimi rilasci | * Aggiornare ad ultimi rilasci | ||
sudo apt-get update | sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get clean | ||
==Pulizia Pacchetti== | ==Pulizia Pacchetti== | ||
| Line 96: | Line 95: | ||
<pre> | <pre> | ||
deb http://ftp.it.debian.org/debian | deb http://ftp.it.debian.org/debian jessie main contrib non-free | ||
deb http://ftp.it.debian.org/debian | deb http://ftp.it.debian.org/debian jessie-updates main contrib non-free | ||
deb http://security.debian.org | deb http://security.debian.org jessie/updates main contrib non-free | ||
</pre> | </pre> | ||
| Line 108: | Line 103: | ||
<pre> | <pre> | ||
deb http://mirrors.kernel.org/debian | deb http://mirrors.kernel.org/debian jessie-backports main contrib | ||
deb-src http://mirrors.kernel.org/debian | deb-src http://mirrors.kernel.org/debian jessie-backports main contrib | ||
</pre> | </pre> | ||
* Se sono presenti fonti agguntive, verificare se è necessario aggiornarle (virtualbox, per webmin, rimane ancora valido sarge) | * Se sono presenti fonti agguntive, verificare se è necessario aggiornarle (virtualbox, per webmin, rimane ancora valido sarge) | ||
| Line 128: | Line 121: | ||
==Aggiornamento APT== | ==Aggiornamento APT== | ||
sudo apt-get install apt | sudo apt-get install apt | ||
==Aggiornamento Kernel== | ==Aggiornamento Kernel== | ||
| Line 143: | Line 136: | ||
: You can check whether your computer has PAE by running. If it does not (i.e. the command outputs no), you should install linux-image-486 and then remove linux-image-686 and/or linux-image-2.6-686 if they are currently installed. | : You can check whether your computer has PAE by running. If it does not (i.e. the command outputs no), you should install linux-image-486 and then remove linux-image-686 and/or linux-image-2.6-686 if they are currently installed. | ||
grep -q '^flags.*\bpae\b' /proc/cpuinfo && echo sudo apt-get install linux-image-686 || echo sudo apt-get install linux-image-486 | grep -q '^flags.*\bpae\b' /proc/cpuinfo && echo sudo apt-get install linux-image-686-pae || echo sudo apt-get install linux-image-486 | ||
| Line 150: | Line 143: | ||
:oppure: | :oppure: | ||
sudo apt-get install linux-image-686 | sudo apt-get install linux-image-686-pae | ||
* Assicurarsi che grub si installi correttamente. In particolare se la root è su un volume RAID, installarlo su ogni DISCO fisico | * Assicurarsi che grub si installi correttamente. In particolare se la root è su un volume RAID, installarlo su ogni DISCO fisico: | ||
sudo grub-install --recheck /dev/sda; sudo grub-install --recheck /dev/sdb; | sudo grub-install --recheck /dev/sda; sudo grub-install --recheck /dev/sdb; | ||
==Aggiornamento base== | ==Aggiornamento base== | ||
* Aggiornare i pacchetti che non richiedono rimozioni, oppure proseguire con i | * Aggiornare i pacchetti che non richiedono rimozioni, oppure proseguire con i singoli: | ||
sudo apt-get upgrade | sudo apt-get upgrade | ||
==Aggiornamento restanti pacchetti== | ==Aggiornamento restanti pacchetti== | ||
| Line 172: | Line 164: | ||
sudo apt-get dist-upgrade | sudo apt-get dist-upgrade | ||
=Preparazione al riavvio= | |||
* Ora è installato systemd, quindi il riavvio va fatto con | |||
sudo systemctl reboot | |||
* Testare il tutto dopo il riavvio | |||
* | |||
* | * Rimuovere i pacchetti non necessari | ||
sudo apt-get autoremove --purge | |||
* Rimuovere i pacchetti che non hanno dipendenze necessarie: | |||
* | |||
if [ ! -e /usr/bin/deborphan ]; then sudo apt-get install deborphan; fi | |||
<pre> | <pre> | ||
if [ -z "$(deborphan)" ]; \ | |||
then \ | |||
echo "Nothing to Remove"; \ | |||
else \ | |||
sudo apt-get remove --purge $(deborphan) | |||
fi | |||
</pre> | </pre> | ||
sudo apt-get --purge autoremove | |||
sudo | |||
* Rimuovere le configurazione dei pacchetti disinstallati: | |||
<pre> | <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> | </pre> | ||
* Rimuovere pacchetti obsoleti: | |||
sudo | sudo apt-get autoremove --purge $(dpkg -l | grep 'deb7\|wheezy' | tr -s ' ' | cut -f 2 --delimiter=' ') | ||
* Riavviare e ritestare: | |||
* | sudo systemctl reboot | ||
== | =Note per pacchetti specifici= | ||
==nagios-nrpe-server== | |||
* La versione di Jessie è stata compilata per ignorare la direttiva | |||
dont_blame_nrpe=1 | |||
== | |||
* La | |||
* Quindi se un server nagios passa dei parametri ai check, vengono ignorati anche se si setta la variabile dont_blame_nrpe=1 | |||
* Occorre riscrivere i check per funzionare senza parametri | |||
==mediawiki== | |||
* Mediawiki è ora disponibile SOLO nei jessie-backports. | |||
* Se non si abilitano i jessie-backports, rimane installata la versione di wheezy | |||
* Se si aggiorna, vengono eliminate le estensioni dal pacchetto mediawiki.extensions | |||
* Aggiornare il DB puntando a http://server.example.com/mediawiki/mw-config | |||
Latest revision as of 10:38, 3 October 2018
Preparazione
- Avviare screen
- Registrare la sessione:
script -t 2>~/upgrade-jessie.time -a ~/upgrade-jessie.script
Backup del Sistema
Come sempre ...
- Fare una copia di comodo locale della etc:
sudo mkdir -p /files; sudo tar --exclude=.svn --exclude=.git -cvf /files/etc-wheezy.tar /etc
- Fermare cfengine o puppet, se attivi
sudo invoke-rc.d cfengine2 stop sudo invoke-rc.d puppet stop
Aggiornamento Wheezy
- Aggiornare ad ultimi rilasci
sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get clean
Pulizia Pacchetti
- Rimuovere i pacchetti non necessari
- Rimuovere i pacchetti che non hanno dipendenze necessarie:
if [ ! -e /usr/bin/deborphan ]; then sudo apt-get 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
- 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
- Rimuovere eventuali vecchie configurazioni:
cd /etc
sudo git rm $(sudo find . -name \*.dpkg-dist) sudo git rm $(sudo find . -name \*.dpkg-old) sudo git rm $(sudo find . -name \*.dpkg-new)
sudo git rm $(sudo find . -name \*.ucf-old) sudo git rm $(sudo find . -name \*.ucf-new)
sudo rm $(sudo find . -name \*.dpkg-dist) sudo rm $(sudo find . -name \*.dpkg-old) sudo rm $(sudo find . -name \*.dpkg-new)
sudo rm $(sudo find . -name \*.ucf-old) sudo rm $(sudo find . -name \*.ucf-new)
sudo etckeeper commit -m "Removed dpkg old"
- Verificare se ci sono pacchetti in hold o marcati per la rimozione. Se ci sono holds, disabilitarli:
sudo dpkg --audit sudo aptitude search "~ahold" sudo dpkg --get-selections | grep 'hold$'
- To unset the “hold” state:
echo package_name install | sudo dpkg --set-selections
Upgrade
Sistemazione fonti apt
- Cambiare wheezy in jessie in sources.lists
- Sostituire "wheezy" con "jessie" in /etc/apt/sources.list
sudo sed -i 's/wheezy/jessie/g' /etc/apt/sources.list
- La lista delle sorgenti dovrebbe essere simile a:
sudoedit /etc/apt/sources.list
deb http://ftp.it.debian.org/debian jessie main contrib non-free deb http://ftp.it.debian.org/debian jessie-updates main contrib non-free deb http://security.debian.org jessie/updates main contrib non-free
- Sostituire, se presenti, le sorgenti backports con
deb http://mirrors.kernel.org/debian jessie-backports main contrib deb-src http://mirrors.kernel.org/debian jessie-backports main contrib
- Se sono presenti fonti agguntive, verificare se è necessario aggiornarle (virtualbox, per webmin, rimane ancora valido sarge)
ls /etc/apt/sources.list.d
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
Aggiornamento Kernel
- Installare i firmware non free per ogni hardware che li necessita :
sudo apt-get install firmware-linux firmware-linux-nonfree firmware-realtek
- Identificare i kernel installati
dpkg -l "linux-image*" | grep ^ii
- Identificare il kernel in uso
uname -r
- Kernel flavor selection: Debian's 686 kernel configuration has been replaced by the 686-pae.
- You can check whether your computer has PAE by running. If it does not (i.e. the command outputs no), you should install linux-image-486 and then remove linux-image-686 and/or linux-image-2.6-686 if they are currently installed.
grep -q '^flags.*\bpae\b' /proc/cpuinfo && echo sudo apt-get install linux-image-686-pae || echo sudo apt-get install linux-image-486
- Installare la versione più recente nel caso di kernel standard, oppure quello adeguato:
sudo apt-get install linux-image-amd64
- oppure:
sudo apt-get install linux-image-686-pae
- Assicurarsi che grub si installi correttamente. In particolare se la root è su un volume RAID, installarlo su ogni DISCO fisico:
sudo grub-install --recheck /dev/sda; sudo grub-install --recheck /dev/sdb;
Aggiornamento base
- Aggiornare i pacchetti che non richiedono rimozioni, oppure proseguire con i singoli:
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 apt-get dist-upgrade
Preparazione al riavvio
- Ora è installato systemd, quindi il riavvio va fatto con
sudo systemctl reboot
- Testare il tutto dopo il riavvio
- Rimuovere i pacchetti non necessari
sudo apt-get autoremove --purge
- Rimuovere i pacchetti che non hanno dipendenze necessarie:
if [ ! -e /usr/bin/deborphan ]; then sudo apt-get install deborphan; fi
if [ -z "$(deborphan)" ]; \
then \
echo "Nothing to Remove"; \
else \
sudo apt-get remove --purge $(deborphan)
fi
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
- Rimuovere pacchetti obsoleti:
sudo apt-get autoremove --purge $(dpkg -l | grep 'deb7\|wheezy' | tr -s ' ' | cut -f 2 --delimiter=' ')
- Riavviare e ritestare:
sudo systemctl reboot
Note per pacchetti specifici
nagios-nrpe-server
- La versione di Jessie è stata compilata per ignorare la direttiva
dont_blame_nrpe=1
- Quindi se un server nagios passa dei parametri ai check, vengono ignorati anche se si setta la variabile dont_blame_nrpe=1
- Occorre riscrivere i check per funzionare senza parametri
mediawiki
- Mediawiki è ora disponibile SOLO nei jessie-backports.
- Se non si abilitano i jessie-backports, rimane installata la versione di wheezy
- Se si aggiorna, vengono eliminate le estensioni dal pacchetto mediawiki.extensions
- Aggiornare il DB puntando a http://server.example.com/mediawiki/mw-config