5 votes

Pourquoi Brew signale-t-il toujours un succès alors qu'il ne parvient pas à démarrer un service ?

J'essaie d'installer httpd avec HomeBrew sur un Mac.

Comme je appris douloureusement aujourd'hui , brew services start rapporte toujours un succès, même si httpd ne parvient pas à démarrer.

Exemple d'échecs rapportés comme des succès :

  • échec du démarrage httpd car une autre instance (démarrée en dehors de brew ) est déjà en cours d'exécution ;
  • échec au démarrage httpd en raison d'une erreur de syntaxe dans un fichier de configuration

Par exemple, disons que je mets délibérément des caractères aléatoires dans httpd.conf et exécuter :

$ sudo brew services restart httpd

Brew rapporte heureusement le succès :

==> Successfully stopped `httpd` (label: homebrew.mxcl.httpd)
Warning: Taking root:admin ownership of some httpd paths:
  /usr/local/Cellar/httpd/2.4.41_1/bin
  /usr/local/Cellar/httpd/2.4.41_1/bin/httpd
  /usr/local/opt/httpd
  /usr/local/opt/httpd/bin
  /usr/local/var/homebrew/linked/httpd
This will require manual removal of these paths using `sudo rm` on
brew upgrade/reinstall/uninstall.
==> Successfully started `httpd` (label: homebrew.mxcl.httpd)

Même si httpd est évidemment pas en cours d'exécution :

$ sudo ps -A |grep httpd
 9481 ttys000    0:00.01 grep httpd
 (nothing else)

$ sudo lsof -iTCP:80 -sTCP:LISTEN
 (nothing)

Quel est le problème ? Est-ce un bug dans brew ?

1 votes

Pourquoi n'ouvrez-vous pas un dossier sous Homebrew/brasseur ?

1 votes

J'ai exactement le même problème. L'avez-vous résolu ? Pour aggraver la situation, Homebrew pense qu'Apache est en cours d'exécution, mais lorsque vous regardez les processus, ce n'est pas le cas.

1 votes

@AdamChristianson Malheureusement non. Je me suis éloigné de MacOS après l'avoir essayé pendant quelques jours, en raison de trop nombreux problèmes comme celui-ci.

2voto

GregC Points 129

Il peut être difficile d'essayer de résoudre les problèmes d'Apache sur n'importe quel ordinateur, mais il suffit de savoir quelles commandes et quels fichiers examiner. Tout d'abord, essayez de démarrer Apache à l'aide de la commande apachectl et recherchez les erreurs affichées à l'écran.

$ sudo apachectl start

S'il y a une erreur dans les fichiers conf d'apache ou un problème système, vous pouvez le voir là.

Vous devez également examiner le fichier journal et voir ce que le service écrit sur lui-même. Pour homebrew, le fichier journal est généralement appelé -

/usr/local/var/log/httpd/error_log

Souvent, lorsque je constate qu'Apache ne démarre pas, c'est parce qu'il y a un fichier de verrouillage pid qui fait croire à Apache qu'une autre instance est déjà en cours d'exécution, ce que vous verrez dans le fichier journal. Supprimez le fichier de verrouillage et essayez à nouveau de démarrer le service.

/usr/local/var/run/httpd/httpd.pid

Pour finir, Andy Miller, sur getgrav.org, constitue une excellente ressource pour l'utilisation de homebrew afin de mettre en place et de faire fonctionner un environnement LAMP sous OSX. https://getgrav.org/blog/MacOS-catalina-apache-multiple-php-versions ). Suivez ces instructions et vous êtes prêt à partir

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X