Brew services a installé ce fichier plist pour mysql.
~ $ brew services list
Name Status User Plist
mysql56 started mh /Users/mh/Library/LaunchAgents/homebrew.mxcl.mysql56.plist
Ce fichier est-il sûr à éditer (c'est-à-dire que le brassage écrasera-t-il les modifications apportées ici)? Existe-t-il une autre méthode que je devrais utiliser pour modifier le fichier?
Tout .plist
les fichiers fournis avec les formules se trouvent dans le répertoire Cellar. Par exemple homebrew.mxcl.mysql.plist
est dans /usr/local/Cellar/mysql/5.7.14
. Vous pouvez le modifier et brew services
l'utilisera.
Vous pouvez également modifier /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
et le rendre immuable avec Sudo chflags uchg /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
. Cela ne permettra pas à brew
de réécrire ou de modifier .plist
fichier.
Je (malheureusement) ne sais pas quel fichier vous pouvez modifier, mais je peux confirmer que l'édition de quoi que ce soit dans le Library/LaunchAgents
le répertoire sera écrasé par brew services
au prochain démarrage, donc la modifier directement ne va pas aider.
/Users/mh/Library/LaunchAgents/homebrew.mxcl.mysql56.plist
quelque partbrew services start mysql56 {path to modified copy of plist file}
Lorsque vous installez un package avec la formule Homebrew
un fichier .plist est placé dans le dossier du package
(généralement/usr/local/Cellar/... dossier)
sous OSX, ce fichier est copié/supprimé vers/depuis le
/ Bibliothèque/LaunchDaemons /
dossier à chaque fois que vous démarrez/arrêtez le service avec Homebrew:
brew services start <the-app>
brew services stop <the-app>
Mieux vaut alors "bloquer" ce fichier
agit sur le fichier dans le dossier de votre package ...
cet exemple est pour OSX/Mojave & MariaDB:
supposons que vous souhaitiez modifier le dossier de données par défaut
et le port TCP de 3306 à 3308
modifier le
/usr/local/Cellar/mariadb/10.4.6_1/homebrew.mxcl.mariadb.plist
localisez cette section dans le XML
apportez les modifications souhaitées (choisissez le dossier souhaité):
...
<string>/usr/local/opt/mariadb/bin/mysqld_safe</string>
<string>--datadir=/DAT/mariadb</string>
<string>--port=3308</string>
...
puis arrêtez et redémarrez le service avec Homebrew
et voilá ... vous pouvez utiliser netsat pour confirmer:
netstat|grep 3308
Réponse courte:
Modifiez la configuration dans usr/local/Cellar/
+ Nom du fichier Formula/+ .plist
PAS dans le fichier répertorié à côté du démon dans la liste brew services
Longue réponse:
Lorsque vous installez une formule, son fichier plist
atterrit dans usr/local/Cellar
, Dans un répertoire nommé d'après la formule.
Lorsque vous générez un démon avec brew services start
, Ce fichier est alors copié vers l'utilisateur en cours d'exécution Library/LaunchAgents/
, Par exemple:
pour root, c'est Library/LaunchAgents/
pour un utilisateur normal - ~/Library/LaunchAgents
C'est important, cela ne sert à rien de changer ce fichier, c'est juste une copie qui sera écrasée la prochaine fois que vous exécuterez le service en tant que cet utilisateur.
Cependant, vous pouvez examiner ce fichier pour voir quelle configuration a été utilisée pour cette instance particulière du service.