Featured image of post macOS设置brew安装的软件自启动

macOS设置brew安装的软件自启动

macOS设置brew安装的软件自启动

Home-brew 简介

先介绍一下本篇文章的主角:Home-brew,它是一款macOS的软件包管理器,当然也同样适用于Linux(不会真的有人 Linux 服务器用 brew 吧?)。

它的官网上有关于 brew 非常详细的文档,大家可以自己去看看。介绍了以后就到了我们的安装环节了!

安装 Brew

安装 brew 非常的简单,就需要一条命令就可以了,当然大家 99% 会遇到网络问题,安装过程中建议最好用 v 要不然缓慢的到超时的网络会让你年轻漂亮有活力的 ?!

1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

brew 换源

平时我们执行 brew 命令安装软件的时候,跟以下 3 个仓库地址有关:

  1. brew.git
  2. homebrew-core.git
  3. homebrew-bottles

通过以下操作将这 3 个仓库地址全部替换为 Alibaba 提供的地址

替换 / 还原 brew.git 仓库地址

1
2
3
4
5
6
7
# 替换成阿里巴巴的 brew.git 仓库地址:
cd "$(brew --repo)"
git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git
#=======================================================
# 还原为官方提供的 brew.git 仓库地址
cd "$(brew --repo)"
git remote set-url origin https://github.com/Homebrew/brew.git

替换 / 还原 homebrew-core.git 仓库地址

1
2
3
4
5
6
7
# 替换成阿里巴巴的 homebrew-core.git 仓库地址:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git
#=======================================================
# 还原为官方提供的 homebrew-core.git 仓库地址
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://github.com/Homebrew/homebrew-core.git

替换 / 还原 homebrew-bottles 访问地址

这个步骤跟你的 macOS 系统使用的 shell 版本有关系

所以,先来查看当前使用的 shell 版本

1
2
3
echo $SHELL
# 如果你的输出结果是 /bin/zsh,参考?的 zsh 终端操作方式
# 如果你的输出结果是 /bin/bash,参考?的 bash 终端操作方式

zsh 终端操作方式

1
2
3
4
5
6
7
8
# 替换成阿里巴巴的 homebrew-bottles 访问地址:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc
#=======================================================
# 还原为官方提供的 homebrew-bottles 访问地址
vi ~/.zshrc
# 然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置
source ~/.zshrc

bash 终端操作方式

1
2
3
4
5
6
7
8
# 替换 homebrew-bottles 访问 URL:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
#=======================================================
# 还原为官方提供的 homebrew-bottles 访问地址
vi ~/.bash_profile
# 然后,删除 HOMEBREW_BOTTLE_DOMAIN 这一行配置
source ~/.bash_profile

安装软件

当我们已经配置好国内源时,我们就可以正式使用 brew 来安装一些软件了

eg:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
JokerMBP L-🌵-轩-🍂-X ~ 
812 ◯ : brew install nginx                                                ⏎ [~]
==> Downloading https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/bottles/ng
==> Downloading from https://d29vzk4ow07wi7.cloudfront.net/9deda8734db308f21e3c8
######################################################################## 100.0%
==> Pouring nginx-1.19.5.big_sur.bottle.tar.gz
==> Caveats
Docroot is: /usr/local/var/www

The default port has been set in /usr/local/etc/nginx/nginx.conf to 8080 so that
nginx can run without sudo.

nginx will load all files in /usr/local/etc/nginx/servers/.

To have launchd start nginx now and restart at login:
  brew services start nginx
Or, if you don't want/need a background service you can just run:
  nginx
==> Summary
🍺  /usr/local/Cellar/nginx/1.19.5: 25 files, 2.2MB
==> `brew cleanup` has not been run in 30 days, running now...
Pruned 0 symbolic links and 1 directories from /usr/local

可以看到在安装完成后 brew 给了我们很多有用的信息

我先来总结一下:

1:Docroot is: /usr/local/var/www

默认文档位置在 /usr/local/var/www

2:The default port has been set in /usr/local/etc/nginx/nginx.conf to 8080

你丫的没有用sudo安装,我只能把默认端口给设置为 8080,你丫要是想改默认端口就要修改 /usr/local/etc/nginx/nginx.conf里的配置

3:To have launchd start nginx now and restart at login: brew services start nginx

你小子要想让 nginx 开机自启动就要运行: brew services start nginx

4:if you don’t want/need a background service you can just run: nginx

你小子 要死 要是想让 nginx 不开机自启动,直接运行命令: nginx 就可以了。

就这一小段话,如果你没有注意,或者直接忽略了,那你可能在以后的使用过程中就会遇到很多的麻烦事!而且百度还可能找不到问题的答案!所以我就建议大家在安装完软件以后留意一下这个Tips

设置软件开机自启

既然 brew 可以设置开机自启动那这篇文章还有啥意义?

其实只是想让大家了解 macOS 开机自启的原理而已

现在大家应该都知道了 brew 安装软件的具体位置了,没错就是在 /usr/local/Cellar 文件夹下面,比如说我安装的 nginx 就在 /usr/local/Cellar/nginx/ 下面。我们不妨看看文件夹里面有啥:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
JokerMBP L-?-轩-?-X /usr/local/Cellar/nginx 
978 ◯ : ls 1.19.5                                                                                                                                                                                                                       total 640
-rw-r--r--  1 frelon  staff   300K 11 24 23:06 CHANGES
-rw-r--r--  1 frelon  staff   791B  2 22 20:09 INSTALL_RECEIPT.json
-rw-r--r--  1 frelon  staff   1.4K 11 24 23:06 LICENSE
-rw-r--r--  1 frelon  staff    49B 11 24 23:06 README
drwxr-xr-x  3 frelon  staff    96B 11 24 23:06 bin
-rw-r--r--  1 frelon  staff   571B  2 22 20:09 homebrew.mxcl.nginx.plist
lrwxr-xr-x  1 frelon  staff    16B  2 22 20:09 html -> ../../../var/www
drwxr-xr-x  4 frelon  staff   128B 11 24 23:06 share

可以看到啊,哪里有一个显眼的 .plist 结尾的文件,此时此刻我相信大家心里面肯定有答案了,开机自启动肯定和这个文件有着千丝万缕的关系。大家不要急哈,一步一步来!先把这个文件软连接到 /Library/LaunchAgents/ 目录下,然后就可以执行

1
launchctl load /Library/LaunchAgents/homebrew.mxcl.xxx.plist

此时此刻这个软件就可以开机自启了!要知道有一些小众软件并不能通过 brew 安装,我们只能手动编译安装,这个时候如果我们想要使它开机自启动怎么办?没有了 brew 是不是突然就不知所措了!其实这个 .plist 文件我们自己也是可以手动编写的,我们再通过上面的步骤是不是就可以很容易的就让一个自己编译的软件开机自启动了。

本文参考博客园用户:wygbbb & tulintao 的文章而写,侵联删。

Licensed under CC BY-NC-SA 4.0