brew
简介:
Homebrew 都干了什么安装完毕Homebrew之后, 可以说整个/usr/local/下的东西都是Homebrew自动创建出来的, 一个新的Mac系统默认情况下/usr/local是空的, 安装了Homebrew之后就有了bin, sbin, share, Cellar, Homebrew...
Homebrew 都干了什么
- 安装完毕Homebrew之后, 可以说整个/usr/local/下的东西都是Homebrew自动创建出来的, 一个新的Mac系统默认情况下/usr/local是空的, 安装了Homebrew之后就有了bin, sbin, share, Cellar, Homebrew的文件夹, 可以这么说有在开发中这个目录下放的几乎就是Homebrew安装的软件, 就如同在Linux上使用yum安装, 安装到了/usr/local下是一个道理
- 在Linux在使用yum安装在rpm包中会有.services文件, 在Homebrew中会有一个.plist文件, 就是一个服务配置文件, 使用launchctl可以启动, 也可以使用brew services name start启动, 类似于Linux上的systemctl start name
- 我们通过brew install lftpd, 默认是在/usr/local/Cellar目录创建一个lftp的目录, 在该目录下有一个版本号的目录, 进去就是一个小型的文件系统, 里面有bin, sbin, lib, share都是独立方式的, 这就是homebrew优越于yum的地方的, yum安装的rpm包, 里面的可执行文件是放在/usr/bin或者/usr/local/bin下的, 库文件是放在/usr/lib或者/usr/local/lib下的, 这样会非常的会乱, 而brew是分开来的
- 但是这样还是会有问题, 当/usr/local/Cellar/lftp/0.5.5/bin/lftp在PATH中不能找的, 其实Homebrew都把/usr/local/Cellar/lftp/0.5.5/bin/lftp创建一个alias当/usr/local/bin目录下, 其他的目录下的程序也都是这样通过alias到/usr/local/sbin等目录下的, 这样问题就解决了
注意
- 使用brew安装的软件, 我们可以这样认为: 我们知道在Unix文件系统中/usr/local/目录可以是一个完全独立的王国, 所以brew仅将该/usr/local/目录当做Linux下的/目录
- 仔细地想一想, 在Linux中httpd的html文件是在/var/www/下, 而在Mac OSX中是放在/usr/local/var/www目录下的, 由此可知/usr/local/ -- > /