Homebrew

概念

Homebrew是一款自由及开放源代码的软件包管理系统,类似于linux的apt-get,用以简化MacOS系统上的软件安装过程。

Homebrew以Ruby语言写成,针对于MacOS操作系统自带Ruby的版本。

默认安装在/usr/local,由一个核心git版本库构成,以使用户能更新Homebrew。

安装Homebrew

安装

Homebrew依赖xcode和其Command Line Tools。

  1. 在App Store中安装最新版本的xcode;

  2. 执行xcode-select --install安装Command Line Tools。

把Homebrew安装到/usr/local

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
1

卸载

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
1

重装

  1. 备份/usr/local/Cellar

  2. 删除Homebrew相关文件。

    cd /usr/local
    sudo rm -rf Library .git .gitignore bin/brew README.md share/man/man1/brew
    sudo rm -rf Homebrew
    sudo rm -rf ~/Library/Caches/Homebrew
    
    1
    2
    3
    4
  3. 卸载Homebrew。

    ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
    
    1
  4. 安装Homebrew。

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
    1
  5. 将第1步中的备份拷贝回/usr/local/Cellar

  6. 更新Homebrew及其管理的各软件。

    brew update
    brew upgrade
    brew cleanup
    
    1
    2
    3
  7. brew doctor检测Homebrew潜在问题,并自行排错。如使用brew link 软件名将备份的软件重新symlink到Homebrew上。

使用Homebrew

安装软件

brew install 软件名,如brew install git

卸载软件

brew uninstall 软件名,如brew uninstall git

查找软件

brew search 查询内容

  1. 普通查询,brew search git

  2. 正则查询,brew search /gi*/

升级软件

brew upgrade 软件名:更新指定软件,如brew upgrade git

brew upgrade:更新所有软件。

可以先用brew outdated查看哪些软件可以升级。

注意,软件升级后,其旧版本仍然会保留,需要使用brew cleanup 软件名来清理。

要获取最新的软件的列表,需要先用brew update来更新Homebrew自身。

清理软件

brew cleanup -n:查看哪些软件包要被清除。

brew cleanup 软件名:清除指定软件包的所有老版本。

brew cleanup:清除所有软件包的所有老版本。

锁定软件

brew pin 软件名:锁定某个软件,升级命令会忽略它。

brew unpin:取消某个软件的锁定。

关联软件

brew prune:清理无用的symlink,且清理与之相关的位于/Applications~/Applications中的无用App链接。

brew link 软件名:将指定软件的安装文件symlink到Homebrew上。

  • brew install安装的软件会自动执行link操作;

  • DIY安装的需要手动执行link操作;

  • 加上--overwrite选项,会先删除旧的symlink,再进行新的link操作。

信息查询

brew -v:查看Homebrew版本号。

brew list:列出已安装的软件。

brew home:用浏览器打开homebrew官网。

brew info:显示软件信息。

依赖查询

brew deps 软件名:查看指定软件的依赖关系树状图。

brew deps --installed --tree:查看已安装软件的依赖关系树状图。

其他操作

brew update:升级Homebrew自身。

brew doctor:检测系统中与Homebrew有关的潜在问题。

疑难杂症

文件权限问题

/usr/local权限问题:

  1. 打开Finder;
  2. 前往文件夹/usr
  3. 右键文件夹local,点击显示简介;
  4. 给当前用户添加对/usr/local的读写权限

/usr/local读写权限

/usr/local/share权限问题:

sudo chown -R $(whoami) /usr/local/share/
1

代理问题

利用ProxyChains-NG实现网络代理。