Brew服务已经为mysql安装了这个plist文件。
~ $ brew services list
Name Status User Plist
mysql56 started mh /Users/mh/Library/LaunchAgents/homebrew.mxcl.mysql56.plist
这个文件是否可以安全编辑(即将会覆盖此处所做的更改)?我应该使用另一种方法来修改文件吗?
答案 0 :(得分:25)
可以在Cellar目录中找到公式附带的所有.plist
个文件。例如homebrew.mxcl.mysql.plist
位于/usr/local/Cellar/mysql/5.7.14
。您可以修改它,brew services
将使用它。
或者,您可以修改/Library/LaunchDaemons/homebrew.mxcl.mysql.plist
并使其sudo chflags uchg /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
不可变。这不允许brew
重写或修改.plist
文件。
答案 1 :(得分:6)
我(遗憾的是)我不知道您可以编辑哪个文件,但我可以确认Library/LaunchAgents
目录中的任何内容都会被brew services
覆盖在下一个开始,所以直接编辑它是不会有帮助的。
答案 2 :(得分:3)
/Users/mh/Library/LaunchAgents/homebrew.mxcl.mysql56.plist
某处brew services start mysql56 {path to modified copy of plist file}
答案 3 :(得分:1)
简短答案:
在usr/local/Cellar/
+公式名称/ + .plist
文件中编辑配置
brew services
列表中守护程序旁边列出的文件中否
长答案:
安装公式时,其plist
文件位于usr/local/Cellar
中,该文件以该公式命名的目录中。
当您使用brew services start
生成守护程序时,此文件将被复制到运行用户的Library/LaunchAgents/
中,例如:
对于root,它是Library/LaunchAgents/
对于普通用户-~/Library/LaunchAgents
这很重要,更改此文件没有任何意义,它只是一个副本,下次您以该用户身份运行服务时将被覆盖。
但是,您可以检查此文件,以查看用于此特定服务实例的配置。
答案 4 :(得分:0)
使用Homebrew公式安装软件包时
.plist文件放置在程序包文件夹中
(通常是/ usr / local / Cellar / ...文件夹)
在OSX中,此文件是从/ p复制/删除的。
/ Library / LaunchDaemons /
文件夹 每次您使用Homebrew启动/停止服务时:
brew services start <the-app>
brew services stop <the-app>
最好然后“阻止”此文件
正在处理您的包文件夹中的文件...
此示例适用于OSX / Mojave和MariaDB:
假设您要更改默认数据文件夹
和TCP端口从3306到3308
修改
/usr/local/Cellar/mariadb/10.4.6_1/homebrew.mxcl.mariadb.plist
在XML中找到此部分
进行所需的更改(选择所需的文件夹):
...
<string>/usr/local/opt/mariadb/bin/mysqld_safe</string>
<string>--datadir=/DAT/mariadb</string>
<string>--port=3308</string>
...
然后使用Homebrew停止并重新启动服务
等等...您可以使用netsat进行确认:
netstat|grep 3308