Mac是基于Linux构建的系统,很多东西都是大同小异的,但是在软件安装方面和Linux还是有差别的。
homebrew
原理:homebrew 将软件安装在 /usr/local/Cellar
单独目录中,然后软链接到 usr/local
。
作用:brew 是从下载源码解压然后 ./configure && make install
,同时会包含相关依存库。并自动配置好各种环境变量,而且易于卸载。
备注:由于国内网络环境的关系,brew执行命令时每次会执行更新,但是会一直卡住,可以通过添加环境变量的方式关闭自动更新 export HOMEBREW_NO_AUTO_UPDATE=true
更新所有的包:brew upgarde
homebrew-cask
一套建立在 homebrew
基础上的Mac软件安装命令行工具。
作用:brew cask 是已经编译好了的应用包 (.dmg/.pkg),仅仅是下载解压,放在统一的目录中/opt/homebrew-cask/Caskroom
,省掉了自己去下载、解压、拖拽(安装)等蛋疼步骤,同样,卸载相当容易与干净。这个对一般用户来说会比较方便,包含很多在 AppStore 里没有的常用软件。
安装
- 安装
Xcode
(Mac App Store免费一键下载) - 安装
homebrew
(一行命令直接搞定,easy) - 安装
homebrew-cask
(也是一行命令搞定,一点难度都木有)brew tap phinze/homebrew-cask && brew install brew-cask # homebrew/core是brew的默认仓库,可以使用如下命令进行扩展,使用untap repo移除,直接使用brew tap可以参看当前的所有扩展。 brew tap <gihhub_user/repo>
缓存与清除
# cache查询与清除:
brew --cache
# 可以查看下载文件的位置:
# 默认路径/Users/sky/Library/Caches/Homebrew,
# homebrew cask下载的文件在上面文件下的子文件cask下。
brew cleanup
homebrew&homebrew cask卸载
cd `brew --prefix`
rm -rf Cellar
brew prune
rm `git ls-files`
rm -r Library/Homebrew Library/Aliases Library/Formula Library/Contributions
rm -rf .git
rm -rf ~/Library/Caches/Homebrew
brew update
之前由于国内网络环境的问题,将每次安装时的自动 brew update
关闭了。同时由于mac升级了新版系统,到 brew install nginx
失败。原因其实升级一下 brew 即可,但是总是升级不成功。通过切换镜像来解决
# 替换 homebrew 默认源
cd "$(brew --repo)"
git remote set-url origin git://mirrors.ustc.edu.cn/brew.git
# 替换 homebrew-core 源
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin git://mirrors.ustc.edu.cn/homebrew-core.git
# 设置 bintray 镜像
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
再次执行 brew update
,可能还是会卡住,但是稍等一下,还是可以更新成功的。由于之前一直嫌弃 xcode 更新太大了,一直没有更新,因此会提示 xcode 需要升级,升级后 brew install nginx
就会很顺利了。
666