S'ils sont présent, **désactiver les backports** car plus nécessaire sinon s'ils doivent vraiment être conservés, à mettre dans _/etc/apt/preferences.d/0-backports-defaults_ et s'assurer d'un pinning correct.
Il faut vérifier que le process ne se bloque pas avec `ps auwwwx |grep insserv`. Si c'est le cas, il est conseillé de redémarrer le système avant de poursuivre.
Il faut également stopper les instances Mysql/MariaDB supplémentaires car non gérées lors de l'upgrade (et cela va casser avec *There is a MySQL server running, but we failed in our attempts to stop it*) :
Ensuite, appliquer les mises à jour non triviales (nécessitant des changements de paquets dépendants, des suppressions…) afin d'avoir un œil plus précis sur ce qui sera fait, avant de valider :
# apt install acl php7.0-soap php-soap php-net-url php-net-dime php-http-request etc.
~~~
Enfin, il faut redémarrer sur le nouveau noyau Linux installé :
~~~
# reboot
~~~
## APT
APT utilise maintenant l'utilisateur *_apt* pour certaines de ses fonctionnalités (ex. téléchargement des paquets), les dossiers `/etc/apt/` et `/var/cache/apt/` doivent donc être en *755* :
Les fichiers `/etc/apt/apt.conf.d/10evolix` et `/etc/apt/apt.conf.d/80evolinux` ont été concaténés en un seul fichier `/etc/apt/apt.conf.d/z-evolinux.conf` :
La configuration spécifique d'Apache est maintenant faite dans les 2 fichiers _/etc/apache2/conf-available/z-evolinux-defaults.conf_ et _/etc/apache2/conf-available/zzz-evolinux-custom.conf_. Les fichiers de configuration standards tel que _apache.conf_ doivent donc être ceux de l'_upstream_ et les modifications éventuelles ajoutées dans _/etc/apache2/conf-available/zzz-evolinux-custom.conf_.
désormais il renverra une erreur `AH01144: No protocol handler was valid for the URL /foo/bar. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.`si on lui parle en HTTP, cf <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=880195>
décommenter dans `/etc/vim/vimrc` : `let g:skip_defaults_vim = 1`
## log2mail
La configuration de `log2mail` est maintenant répartie dans plusieurs fichier dépendamment des services surveillés: _/etc/log2mail/config/mysql.conf_, _/etc/log2mail/config/apache_ et _/etc/log2mail/config/squid.conf_
`log2mail` est lancé par une unité systemd et non plus par un script sysV init, à mettre dans _/etc/systemd/system/log2mail.service_.
L'attribution des droits sudo des utilisateurs admin se fait à travers le groupe _evolinux-sudo_ (à créer). Le fichier _/etc/sudoers.d/evolinux_ est à mettre à jour en conséquence.
Les utilisateurs admin sont aussi à ajouter au groupe _adm_.
MariaDB est la version utilisée par défaut au lieu de Oracle MySQL qui n'est plus du tout inclus (il est possible d'avoir Oracle MySQL 5.7 via un repository extérieur mais on déconseille sauf si complètement bloquant).
La migration va conserver un fichier `/etc/mysql/my.cnf.migrated` (`/etc/mysql/my.cnf` est un lien symbolique vers `/etc/alternatives/my.cnf` lui-même un lien symbolique vers `/etc/mysql/my.cnf.migrated`).
ATTENTION : `/etc/mysql/mariadb.conf.d/*` n'est pas pris en compte avec cette ancienne configuration ! Il ne faut pas déplacer les fichiers de configuration et les laisser dans `/etc/mysql/mariadb.conf.d/*`?
Après la mise à jour, bien penser regarder les logs MySQL, il est parfois nécessaire de faire manuellement un `mysql_upgrade` si c'est indiqué dans les logs.
La configuration spécifique doit être faite dans les 2 fichiers de configuration _/etc/php/7.0/cli/conf.d/z-evolinux-defaults.ini_ et _/etc/php/7.0/cli/conf.d/zzz-evolinux-custom.ini_.
La configuration est éclatée dans plusieurs fichier de configuration: _/etc/squid/evolinux-defaults.conf_, _/etc/squid/evolinux-defaults.conf_, _/etc/squid/evolinux-acl.conf_, _/etc/squid/evolinux-httpaccess.conf_ et _/etc/squid/evolinux-custom.conf_. La liste blanche des sites se trouve dans _/etc/squid/evolinux-whitelist-defaults.conf_ et _/etc/squid/evolinux-whitelist-custom.conf_.
Il faut mettre à jour le fichier _/etc/default/squid_ pour que la directive _CONFIG_ pointe sur _/etc/squid/evolinux-defaults.conf_.
On passe de Fail2Ban 0.8 à 0.9, et il y a un certain nombre de changements :
- la jail _ssh_ est renommée en _sshd_ : **attention, cela peut avoir des conséquences importantes, il faut adapter sa configuration spécifique qui utilise cette jail !**
- pour cette jail concernant SSH, elle définissant `maxretry = 6`, ce n'est plus le cas donc cela change et revient au paramètre par défaut, à savoir `maxretry = 5` en Debian 9
- le paramètre par défaut `maxretry = 3` passe à `maxretry = 5`
Installer le paquet *libconfig-inifiles-perl* pour éviter l'erreur :
~~~
Can't locate Config/IniFiles.pm in @INC (you may need to install the Config::IniFiles module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.24.1 /usr/local/share/perl/5.24.1 /usr/lib/x86_64-linux-gnu/perl5/5.24 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.24 /usr/share/perl/5.24 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at /usr/bin/mytop line 18.
BEGIN failed--compilation aborted at /usr/bin/mytop line 18.
Celui-ci est utilisé par quelques programmes (dont des modules LSB) qui ont besoin de connaitre la version source d'une distribution. Aujourd'hui, on utilise dans la majorité des cas le fichier /etc/debian_version a la place de /etc/lsb-release qui peut être supprimé.
Avant la supression des anciennes versions, il faudra bien penser à vérifier qu'elles peuvent supporter les mises à jours.
La méthode a suivre est de recréer de nouvelles instances avec les bonnes versions pour que le client puisse tester son bon fonctionnement. Seulement après les bascules ont réalise les suppressions.