Auteur Sujet: Mettre à jour un serveur d'Ubuntu 20.04 LTS vers Ubuntu 22.04 LTS  (Lu 3895 fois)

0 Membres et 1 Invité sur ce sujet

vivien

  • Administrateur
  • *
  • Messages: 48 042
    • Twitter LaFibre.info
Mettre à jour un serveur d'Ubuntu 20.04 LTS vers Ubuntu 22.04 LTS
« Réponse #12 le: 11 mars 2023 à 18:30:50 »
/etc/mysql/mysql.conf.d/mysqld.cnf : MySQL

mv /etc/mysql/mysql.conf.d/mysqld.cnf.dpkg-old /root/sav_conf_maj_ubuntu

nano  /root/sav_conf_maj_ubuntu/mysqld.cnf.dpkg-old
: Regarder les modifications apportées au fichier

nano /etc/mysql/mysql.conf.d/mysqld.cnf : Apporter les mêmes modifications au nouveau fichier.

Exemple 1 : Rajouter en fin de fichier (donc encore dans la section [mysqld] )

#Modif vivien pour désactiver les bin log
disable_log_bin
Sans quoi toutes les requêtes seront logées, saturation de l'espace disque en quelques jours.

Exemple 2 : modifier l'emplacement des log, pour les mettre dans un ramdisque afin de limiter les écritures sur un SSD :

#Modif Vivien pour SSD
#log_error = /var/log/mysql/error.log
log_error = /tmp/mysql-error.log

nano /etc/logrotate.d/mysql-server : Vérifier que c'est bien /tmp/mysql-*.log pour le logrotate

vivien

  • Administrateur
  • *
  • Messages: 48 042
    • Twitter LaFibre.info
Mettre à jour un serveur d'Ubuntu 20.04 LTS vers Ubuntu 22.04 LTS
« Réponse #13 le: 11 mars 2023 à 18:33:48 »
Si la mise à jour vous dit que /etc/apt/apt.conf.d/50unattended-upgrades a été mis à jour, c'est la mise à jour automatique du servuer.

La configuration a été écrasée par la mise à jour.

Il faut donc réactiver les mises à jour automatiques de nuit en suivant le tutoriel.
⇒ 7/ Automatiser l'installation des mises à jour de sécurité de nuit

vivien

  • Administrateur
  • *
  • Messages: 48 042
    • Twitter LaFibre.info
Mettre à jour un serveur d'Ubuntu 20.04 LTS vers Ubuntu 22.04 LTS
« Réponse #14 le: 11 mars 2023 à 18:38:39 »
/etc/munin/plugin-conf.d/munin-node

Pour en savoir plus sur Munin => Faire des statistiques IPv6 avec Munin

Si vous avez eu ce message, où je vous invite à installer la version du responsable du paquet :


mv /etc/munin/plugin-conf.d/munin-node.dpkg-old /root/sav_conf_maj_ubuntu
nano /root/sav_conf_maj_ubuntu/munin-node.dpkg-old


Repérer les modifications du type :
env._dev_sda4_warning 70
sed -i -e "s/env.warning 92/env.warning 60/g" /etc/munin/plugin-conf.d/munin-node
sed -i -e "s/env.critical 98/env.critical 90/g" /etc/munin/plugin-conf.d/munin-node
nano /etc/munin/plugin-conf.d/munin-node


Recopier les modifications.
Dans [df*] modifier la ligne env.exclude_re : Modifier la ligne env.exclude_re : env.exclude_re /run /dev/shm /run/lock /sys/fs/cgroup /boot/efi ^/run/user

Sous la section [df*], rajouter : (permet d'avoir une alarme si on dépasse 40% de SWAP)
[diskstats]
env.exclude loop

[memory]
env.swap_warning 30%

munin-node-configure --suggest --shell | sh => Activer les plugins
cd /etc/munin/plugins/

ce qui est inutile :
rm df_inode ; rm forks ; rm threads ; rm proc_pri ; rm vmstat ; rm entropy ; rm open_files ; rm irqstats ; rm open_inodes ; rm interrupts ; rm users ; rm netstat ; rm fw_packets ; rm netstat ; rm processes ; rm if_virbr0*; rm munin_stats ; rm swap ; rm cpuspeed

Si pas besoin de monitorer Postfix (envoi de mail) : rm postfix_mail*

Si pas besoin de monitorer les données Smart des SSD : rm smart_sda

Uniquement pour MySQL : rm mysql_bin_relay_log ; rm mysql_files_tables ; rm mysql_innodb_bpool ; rm mysql_innodb_bpool_act ; rm mysql_innodb_log ; rm mysql_innodb_semaphores ; rm mysql_replication ; rm mysql_sorts ; rm mysql_table_locks ; rm mysql_tmp_tables ; rm mysql_myisam_indexes ; rm mysql_qcache_mem ; rm mysql_qcache ; rm mysql_select_types

Les interfaces ethernet en trop :
ls -l | grep if_
rm if_eno? ; rm if_err_eno?
rm if_enp1s0f1 ; rm if_err_enp1s0f1
rm if_enp2s0f1 ;  rm if_err_enp2s0f1


systemctl restart munin-node.service
Vérification : systemctl status munin-node.service



Munin : rotation des log dans /tmp

mv /etc/logrotate.d/munin-node.xxxxxxxxxxxx /root/sav_conf_maj_ubuntu
sed -i -e "s/\/var\/log\/munin\/munin/\/tmp\/munin/g" /etc/logrotate.d/munin-node
sed -i -e "s/rotate 7/rotate 2/g" /etc/logrotate.d/munin-node
sed -i -e "s/compress/nocompress/g" /etc/logrotate.d/munin-node


Vérification : nano /etc/logrotate.d/munin-node

vivien

  • Administrateur
  • *
  • Messages: 48 042
    • Twitter LaFibre.info
Mettre à jour un serveur d'Ubuntu 20.04 LTS vers Ubuntu 22.04 LTS
« Réponse #15 le: 11 mars 2023 à 18:45:42 »
Et à la fin ?

Une fois tous les fichiers de configuration modifiés par la mise à jour sont remis en place, il ne faut pas oublier de redémarrer une dernière fois le serveur

sudo reboot

Ensuite, il y a une longue étape qui consiste à vérifier service après service que tout fonctionne.

Pour avoir une liste des services sur le serveur, plusieurs solutions :
- ls /etc/apache2/sites-enabled/ : lister les sites web installés
- sudo certbot certificates : voir l'ensemble des certificats Let's Encrypt.

Bien vérifier les statistiques Munin, si vous en avez, pour voir ce qui cloche.

vivien

  • Administrateur
  • *
  • Messages: 48 042
    • Twitter LaFibre.info
Mettre à jour un serveur d'Ubuntu 20.04 LTS vers Ubuntu 22.04 LTS
« Réponse #16 le: 11 mars 2023 à 18:52:38 »
Vérifier si le système comporte des paquets qui ne sont plus maintenus

Avec les installations / désinstallations de paquets et les mises à jour, vous pouvez avoir des paquets qui ne sont plus maintenus.

On va utiliser la commande pro security-status qui est normalement installé sur tout serveur à jour.

Pour en savoir plus sur cette nouvelle commande : pro security-status --help

Pour lister les paquets qui ne sont plus maintenus, on utilise pro security-status --unavailable

Voici un exemple avec un vieux serveur où il y a pas mal de vieux paquets qui sont restés :



Il faudra les supprimer manuellement : sudo apt purge [non du paquet]




J'en profite, si vous souhaitez connaitre la version initialement installée : cat /var/log/installer/media-info
Exemple :
Ubuntu-Server 14.04.5 LTS "Trusty Tahr" - Release amd64 (20160803)
Date de l'installation initiale : ls -l /var/log/installer/media-info | awk '{print "Install date =", $6, $7, $8}'
Exemple :
Install date = nov. 6 2016
Mise à jour vers la version : grep "release-upgrader version" /var/log/dist-upgrade/main.log
Exemple :
2021-09-21 15:47:25,460 INFO release-upgrader version '20.04.36' started
Date de la mise à jour : ls -l /var/log/dist-upgrade/main.log | awk '{print "Upgrade date =", $6, $7, $8}'
Exemple :
Upgrade date = sept. 21 2021

vivien

  • Administrateur
  • *
  • Messages: 48 042
    • Twitter LaFibre.info
Mettre à jour un serveur d'Ubuntu 20.04 LTS vers Ubuntu 22.04 LTS
« Réponse #17 le: 11 mars 2023 à 18:53:03 »

En cas de problème ?

Vérifier le statut du service. Par exemple pour Apache :
systemctl status apache2

Il faut avoir le réflexe d'aller voir les logs pour voir ce qui a changé et que vous devez adapter à la nouvelle version

Quelques exemples :
journalctl -k
tail /var/log/apache2/error.log


Il est possible que des commandes dans vos host apache soient à modifier (surtout si vous avez une configuration complexe et non standard).

Des petites commandes sympathiques :

netstat -an|awk '/tcp/ {print $6}'|sort|uniq -c : affiche des statistiques TCP

      3 CLOSING
     98 ESTABLISHED
     13 FIN_WAIT1
     28 FIN_WAIT2
      2 LAST_ACK
    232 LISTEN
      4 SYN_RECV
    499 TIME_WAIT

ps -elfT | wc -l : Le nombre de threads en cours d'exécution
1335
lsof | wc -l : Le nombre de fichiers ouverts
5440
Quelques utilitaires système :
La liste est sous la ligne "Outils pour aider la gestion du serveur" dans le tutoriel Base: Installation et sécurisation d'un serveur Ubuntu




Si vous avez des suggestions, des idées, n'hésitez pas !