美文网首页exam
Mac安装brew

Mac安装brew

作者: Kandy | 来源:发表于2018-01-02 13:08 被阅读0次

    HomeBrew简介

    我们在使用Linux系统的时候,都很喜欢 (Debian/Ubuntu)系列的apt包管理系统和(Redhat/Fedora)系列的yum包管理系统。Mac OS X系统下面有apple的官方Mac App Store。但是好多软件是找不到的,所以我们也向在苹果下找到一款比较方便的包管理系统,就是Homebrew。

    什么是Homebrew呢?Homebrew is the easiest and most flexible way to install the UNIX tools Apple didn’t include with OS X. 官方的解释非常明了,Homebrew是一个包管理器,用于在Mac上安装一些OS X没有的UNIX工具(比如著名的wget),能在Mac中方便的安装软件或者卸载软件,可以说Homebrew就是mac下的apt-get、yum神器。

    Homebrew安装

    Homebrew的安装非常简单,打开终端,执行以下命令:

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

    中途需要Press RETURN to continue,输入系统密码等操作就完成了安装。
    Homebrew安装成功后,会自动创建目录/usr/local/Cellar 来存放Homebrew安装的程序,并在 /usr/local/bin 中创建符号链接. 在命令行状态下面就可以使用 brew 命令了.

    brew 使用方法

    举个例子,安装git:

    搜索git(此步骤非必须)
    brew search git
    安装软件
    brew install git
    卸载软件
    brew uninstall git
    显示已经安装软件列表
    brew list

    常用命令

    brew list       #列出已安装的软件
    brew update     #更新brew
    brew home       #用浏览器打开brew的官方网站
    brew info       #显示软件信息
    brew deps       #显示包依赖
    brew upgrade    #更新某个具体软件
    brew outdated   #查看那些包需要更新
    

    卸载brew

    cd `brew –prefix`
    rm -rf Cellar
    brew prune
    rm `git ls-files`
    rm -rf Library .git .gitignore bin/brew
    rm -rfREADME.mdshare/man/man1/brew
    rm -rf Library/Homebrew Library/Aliases
    rm -rf Library/Formula Library/Contributions
    rm -rf ~/Library/Caches/Homebrew
    

    brew更新源

    参考http://blog.csdn.net/u010275932/article/details/76080833
    在网上找个更新源的配置,网上教程数不胜数,最后看到上文链接,解释的很详细易懂。感谢作者的分享!

    更新源的机制

    Homebrew的更新源由三部分组成:本体(brew.git)、核心(homebrew-core.git)以及二进制预编译包(homebrew-bottles)。

    在很多教程中,只会提及到更换本体,而未涉及到核心与二进制预编译包的更换。这样实际上效果是不完全的(尽管这样也无法做到完全,毕竟有一些软件包的地址是不被收录的,只能从它们提供的链接处下载)。

    从.git的后缀名可以看出,Homebrew的更新源是以Git仓库的形式存在的,这便是为什么需要用到Git的原因。也正是如此,使得可以对其进行克隆,成为新源。

    更新源的选择

    默认官方的更新源都是存放在GitHub上的,这也是中国大陆用户访问缓慢的原因,一般来说我们会更倾向选择国内提供的更新源,在此推荐中国科大以及清华大学提供的更新源,因为它们能够完整以上源组成的三个部分。并且在此感谢他们为大家提供的服务。

    替换更新源
    # 替换brew.git:
    $ cd "$(brew --repo)"
    # 中国科大:
    $ git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
    # 清华大学:
    $ git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
    
    # 替换homebrew-core.git:
    $ cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
    # 中国科大:
    $ git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
    # 清华大学:
    $ git remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
    
    # 替换homebrew-bottles:
    # 中国科大:
    $ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
    $ source ~/.bash_profile
    # 清华大学:
    $ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
    $ source ~/.bash_profile
    
    # 应用生效:
    $ brew update
    

    以上在中国科大和清华大学任选其一即可,在使用其他源的时候,最好先尝试访问其链接看看是否健在,并且因为历史原因,最初的brew.git是叫homebrew.git的,而现在部分更新源早已随官方更名,所以切记要验证。
      并且没有严格规定必须三个组成部分必须是来自同一提供,可随性发挥。
      且Homebrew在早期版本中更新源的是在/usr/local目录下的,而现在是在/usr/local/Homebrew,不过应该都是可以使用"$(brew --repo)"来自动指向目录的,所以无需理会。
      如果你之前折腾过不少导致你的Homebrew有点问题,那么可以尝试使用如下方案:

    # 诊断Homebrew的问题:
    $ brew doctor
    
    # 重置brew.git设置:
    $ cd "$(brew --repo)"
    $ git fetch
    $ git reset --hard origin/master
    
    # homebrew-core.git同理:
    $ cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
    $ git fetch
    $ git reset --hard origin/master
    
    # 应用生效:
    $ brew update
    
    重置更新源

    所谓有进则有退,在某些时候也有换回官方源的需求。

    # 重置brew.git:
    $ cd "$(brew --repo)"
    $ git remote set-url origin https://github.com/Homebrew/brew.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,本质上作为一个环境变量的存在,之前的命令也只是将其写入到/usr/.bash_profile中,并且只是在文件尾部添加一行。所以之前的命令不推荐重复执行,在未掌握相关命令技巧的前提下,我推荐直接去修改.bash_profile文件:


    .bash_profile

    当然这里的主题是重置更新源,所以我们直接选择删除环境变量HOMEBREW_BOTTLE_DOMAIN,使其成为默认值即可。
    当然,最后不要忘记$ brew update进行应用。

    在完成更新源的更换后,我们可以使用$ brew upgrade将现有的软件进行更新至最新版本,这样便能很直接的看出速度上的变化了。最后不要忘记$ brew cleanup将旧有的软件安装包进行清理。

    以上都是经过本人测试后整理的,自用。

    相关文章

      网友评论

        本文标题:Mac安装brew

        本文链接:https://www.haomeiwen.com/subject/lujfnxtx.html