Lors de l'installation de certains packages (comme RabbitMQ) sur des machines Debian / Ubuntu, l' post-install
étape par défaut démarre le service.
Bien que cela soit excellent dans la plupart des cas, dans certains cas (lorsque vous avez déjà un service en cours d'exécution sur le port requis par exemple), cela échoue, ce qui rend l' apt-get
échec complet.
Existe-t-il un moyen de dire apt-get
de sauter toutes ces post-install
étapes afin qu'il puisse toujours s'installer correctement?
Remarque Il ne s'agit pas de questions pendant l'installation, même dans les sessions interactives, ces installations échouent car l' post-install
échec de l' étape échoue n'est pas géré correctement
Réponses:
Comment demander à apt-get d'ignorer les étapes de configuration interactive post-installation?
Edit : oui, c'était pour sauter (enfin, automatiser) les questions post-installation , vrai - désolé.
Il n'y a aucun moyen d'ignorer les scripts post-installation . La politique officielle de Debian consiste à modifier le script pour renvoyer une erreur non terminale ou à corriger le script. Voir http://www.debian-administration.org/articles/251
Il semble que vous automatisiez cela pour de nombreux serveurs, auquel cas, vous souhaiterez probablement créer votre propre version du package et la déployer. Une autre option consiste à envoyer un e-mail au responsable du package et à discuter si un échec au démarrage doit être une erreur de terminal pour la post-installation (je ne pense pas que ce soit pour d'autres packages comme apache ou lighttpd, par exemple, mais je peux me tromper .)
la source
post-install
étapes non interactives qui échouent en cas d'service rabbitmq-server start
échec.sudo DEBIAN_FRONTEND=noninteractive apt-get -y [packagename]
Ce que vous voudrez peut-être faire, c'est quelque chose avec le policy-rc.d . Voir la page de manuel pour invoke-rc.d. Vous pouvez définir une stratégie pour que les services ne soient pas démarrés automatiquement.
la source
cela devrait fonctionner
la source