#1 Le 03/02/2018, à 12:26
- Desty Nova
Systemctl - suspendre le redémarrage automatique des services
Bonjour,
Sur un VPS en Ubuntu 16.04, dans le cadre de la recopie de données d'un disque que je souhaite remplacer par un autre de plus grande taille, j'ai besoin d'arrêter des services de type apache, mysql.
Je cherche donc un moyen simple pour stopper ces services le temps de ma copie pour les redémarrer manuellement (ou automatiquement au reboot).
Pour mysql, le fichier
/etc/systemd/system/multi-user.target.wants/mysql.service
contient
# MySQL systemd service file
[Unit]
Description=MySQL Community Server
After=network.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
PermissionsStartOnly=true
ExecStartPre=/usr/share/mysql/mysql-systemd-start pre
ExecStart=/usr/sbin/mysqld
ExecStartPost=/usr/share/mysql/mysql-systemd-start post
TimeoutSec=600
Restart=on-failure
RuntimeDirectory=mysqld
RuntimeDirectoryMode=755
J'ai tenté de changer
Restart
pour
on-abnormal
ou
no
puis appliqué cette modif par un
systemctl --system daemon-reload
mais rien à faire, mysql redémarre toujours après un arrêt manuel avec
systemctl stop mysql.service
J'ai tenté de chercher dans le paramétrage entier du service avec
systemctl show mysql.service
en m'aidant de la doc, mais rien décelé.
Je me demande si je pourrais pas suspendre watchdog le temps de ma manip et bloquer ainsi le redémarrage automatique de tous les services que je voudrais maintenir down.
Quelqu'un aurait une idée ?
Dernière modification par Desty Nova (Le 03/02/2018, à 12:26)
Hors ligne
#2 Le 03/02/2018, à 12:36
- inbox
Re : Systemctl - suspendre le redémarrage automatique des services
Salut,
Après avoir remis en état ton fichier de configuration de Mysql, tu essaieras ce qui est indiqué dans la documentation du forum sur Mysql, en l'occurrence pour l'arrêter proprement.
A+
Un problème résolu ? Indiquez le en modifiant le titre du sujet.
Hors ligne
#3 Le 03/02/2018, à 12:42
- Desty Nova
Re : Systemctl - suspendre le redémarrage automatique des services
Hello, merci pour ton indication.
J'aurais dû préciser que c'est ce que j'ai tenté en premier, un petit
service mysql stop
mais systemctl s'occupe de le relancer quoi qu'il arrive.
Hors ligne
#4 Le 03/02/2018, à 12:55
- inbox
Re : Systemctl - suspendre le redémarrage automatique des services
Cela ne me semble pas normal. Ton service Mysql ne devrait redémarrer automatiquement qu'en cas d'erreur.
Il faut analyser le contenu du journal syslog. A ta place, je ferai un arrêt normal du service avec la commande citée. Tu attends que l'automatisme relance le service et tu va lire la log. Tu peux en coller le contenu en retour.
Un problème résolu ? Indiquez le en modifiant le titre du sujet.
Hors ligne
#5 Le 03/02/2018, à 13:12
- Desty Nova
Re : Systemctl - suspendre le redémarrage automatique des services
Le contenu du syslog au moment où mysql est relancé :
Feb 3 13:00:59 klabs-test monit[2739]: 'mysql' process is not running
Feb 3 13:00:59 klabs-test monit[2739]: Collector: cannot open a connection to http://127.0.0.1:2912/ -- Transport endpoint is not connected
Feb 3 13:00:59 klabs-test monit[2739]: Collector: no server available -- aborting message
Feb 3 13:00:59 klabs-test monit[2739]: 'mysql' trying to restart
Feb 3 13:00:59 klabs-test monit[2739]: 'mysql' start: /opt/psa/admin/sbin/pleskrc
Feb 3 13:00:59 klabs-test monit[2739]: Collector: cannot open a connection to http://127.0.0.1:2912/ -- Transport endpoint is not connected
Feb 3 13:00:59 klabs-test monit[2739]: Collector: no server available -- aborting message
Feb 3 13:01:00 klabs-test systemd[1]: Starting MySQL Community Server...
et même check 5 minutes plus tard
Je dois en conclure que c'est le script Plesk
/opt/psa/admin/sbin/pleskrc
qui le relance ?
Hors ligne
#6 Le 03/02/2018, à 13:52
- bruno
Re : Systemctl - suspendre le redémarrage automatique des services
Bonjour,
systemd ne redémarre pas automatiquement les services arrêtés manuellement. Tu dois avoir quelque chose d'installé qui relance automatiquement les services. Au vu des logs je suppose que c'est monit ou effectivement Plesk.
Ceci dit, tu ne devrais pas faire une copie à chaud à chaud, mais plutôt arrêter ton VPS, faire la copie, puis le relancer.
Dernière modification par bruno (Le 03/02/2018, à 13:54)
#7 Le 03/02/2018, à 15:55
- Desty Nova
Re : Systemctl - suspendre le redémarrage automatique des services
Un peu des deux au final :
Pour la postérité : l'extension Plesk watchdog embarque un runtime monit dans /opt/psa/admin/bin/modules/watchdog/monit et configuré par /opt/psa/modules/watchdog/monitrc
J'oubliais : la recopie ne concernait pas la partition sur laquelle est installé le système, mais la partition d'un disque additionnel
Dernière modification par Desty Nova (Le 03/02/2018, à 16:04)
Hors ligne