Mac安装Homebrew的那些事儿

最近小明刚换置了一个 Mac 本,想搭建一个属于自己的博客网站,需要用到 Node.js 环境,而Node.js 在 MacOS 中是由 Homebrew 进行安装管理的……因此,便有了Homebrew的安装历程。

什么是Homebrew?

简而言之,Homebrew是Mac Os的包管理工具,相当于Redhat Linux(Centos/RHEL/Fedora)的yum或者Debian Linux(Debian/Ubuntu)的apt-get

如何安装Homebrew?

我们使用官网提供的统一安装方法,只需执行下面的命令即可

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

Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,Mac上默认已经给我们安装好了。一段漫长的时间过后,当出现Installation successful!提示时就表示已经安装成功。

如果文章到此结束,那这篇文章的价值也太低了吧。接下来给大家扩展一下。

安装时可能遇到的问题

读写权限不够

小明安装的时候遇到一个问题就是出现如下的提示,表明当前用户权限不够:

touch: /Users/xiaoming/Library/Caches/Homebrew/.cleaned: Permission denied

解决方案

需要超级管理员(root)赋予权限,执行以下的命令:

sudo chown -R ${USER} /Users/xiaoming/Library/Caches/Homebrew/

根据提示输入密码即可。

chown指令是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的文件拥有者,也没有权限可以自己的文件拥有者改设为别人。只有系统管理者(root)才有这样的权限。表示使用root用户赋予当前用户对该目录的操作权限。

如何提高brew安装软件的速度?

当我们一路披荆斩棘或者顺风顺水安装成功brew过后,即可执行自己为所欲为安装自己想要的软件,比如

brew install node

但是好像有点不妙,执行命令过后,下载安装的速度怎么这么感人?发现问题是一个很好的开始,有强迫症的小明第一时间就在网上搜集各种资料,一边享受着互联网时代的福祉,一边自己不停的踩坑,经历过数次下载-安装-卸载过后终于从坑里成功爬出。

更换Bottles源

Homebrew 安装的软件默认都在以下目录中:

/usr/local/Cellar/

Cellar意为酒窖、地窖,⽽Homebrew官⽅预先编译好的⼀个软件叫做⼀个 Bottle(酒瓶⼦),Bottles就是很多酒瓶⼦(即软件),Homebrew把安装⼀个软件叫做把⼀个酒瓶⼦放到酒窖(地窖)⾥(不过其实是pour,即倒到酒窖⾥)。

Homebrew官⽅的软件(即Bottles)是放在 bintray (https://bintray.com/)⽹站中的,因为是国外⽹站及众所周知的原因,如果直接从这⾥下载是⾮常慢的,所以我们还是要把它换成国内的源(由中科⼤提供):

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile

该命令执行过后,我们就可以体验一下飞一般的速度了~嗖嗖嗖~

等一下(尔康表情包),顺便再提一嘴,明哥经常用到的几个命令吧。

brew几个基本使用命令

  • 查询软件

    brew search 软件名
  • 安装软件

    brew install 软件名
  • 启动|停止|重启软件

    对于需要在后台运行的软件,大部分可用以下方式启动|停止|重启(它的原理是用launchctl+plist,用这种方式启动的软件重启电脑后也会自动启动)

    brew services start|stop|restart 软件名

关于brew services的原理及详细用法,大家可以查看:Mac服务管理 – launchd、launchctl、LaunchAgent、LaunchDaemon、brew services详解。

  • 卸载软件

    brew uninstall 软件名
  • 查看软件的信息

    brew info 软件名
  • 查看安装了哪些软件

    brew list 软件名
  • 查看安装了哪些软件

    brew list 软件名
  • 查看帮助

    brew help

以上就是brew常用的几个命令,最后的最后再说一下,再多提一嘴,如何和优雅地和brew说分手。

卸载brew

因为一开始我们使用的是官方安装方式,因此好聚好散,我们还是使用官方的卸载方式:

/usr/bin/ruby -e "$(curl -fsSL https://mirrors.aliyun.com/homebrew/brew/install/master/uninstall)"  

执行过后,一切宛如初见~

各位,祝好。有什么问题记得留言哈。

Mac安装Homebrew的那些事儿的更多相关文章

  1. 解决mac安装homebrew后报错-bash: brew: command not found

    解决mac安装homebrew后报错-bash: brew: command not found     参照官网上很简单的一句安装命令, /usr/bin/ruby -e "$(curl ...

  2. Mac 安装 Homebrew

    为什么要在 MAC 上安装 Homebrew 它干什么用的呢?我们知道在 CentOS 和 Ubuntu 上都有自己的包管理工具,但是在 MAC 上却没有这样类似的管理工具. # CentOS $ y ...

  3. Mac安装homebrew,postman,charles

    Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装.卸载.更新.查看.搜索等很多实用的功能.简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷. 1. ...

  4. Mac 安装HomeBrew 出错

    错误如下: error: could not lock config file /usr/local/Homebrew/.git/config: Permission denied fatal: co ...

  5. Mac安装homebrew安装到指定目录

    第一种直接安装在/usr/local目录下 mac 打开终端输入 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebr ...

  6. mac 安装 homebrew 配置

    前言:刚开始转换系统可能安装各种软件继续中... 1. 打开 Mac 中的命令行工具(终端) 2. 在打开的命令行工具中输入如下语句: ruby -e "$(curl --insecure ...

  7. Mac 安装 homebrew 流程 以及 停在 Updating Homebrew等 常见错误解决方法

    懒人操作顺序:S_01>>>S_02>>>S_03 首先这是homebrew的官网 https://brew.sh/index_zh-cn 安装方法是在终端中输入 ...

  8. Mac安装Homebrew

    Homebrew的安装,打开终端复制.粘贴以下命令,回车 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/i ...

  9. Mac安装Homebrew记录

    在终端输入: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install) ...

随机推荐

  1. SPOJ:NPC2016A(数学)

    http://www.spoj.com/problems/NPC2016A/en/ 题意:在一个n*n的平面里面,初始在(x,y)需要碰到每条边一次,然后返回(x,y),问最短路径是多长. 思路:像样 ...

  2. HDU 5723:Abandoned country(最小生成树+算期望)

    http://acm.hdu.edu.cn/showproblem.php?pid=5723 Abandoned country Problem Description   An abandoned ...

  3. django基础知识之csrf:

    csrf 全称Cross Site Request Forgery,跨站请求伪造 某些恶意网站上包含链接.表单按钮或者JavaScript,它们会利用登录过的用户在浏览器中的认证信息试图在你的网站上完 ...

  4. Oracle数据库---存储过程、存储函数

    --创建存储过程CREATE OR REPLACE PROCEDURE first_procISBEGIN DBMS_OUTPUT.PUT_LINE('我是过程'); DBMS_OUTPUT.PUT_ ...

  5. .Net Core 学习依赖注入自定义Service

    1. 定义一个服务,包含一个方法 public class TextService { public string Print(string m) { return m; } } 2. 写一个扩展方法 ...

  6. DataGrid通过DataSet保存为xml文件,并导入

    做了个小的DataGrid通过DataSet保存为xml_测试,DataGrid通过DataSet保存为xml_测试,通过dataSet.writeXML()和dataSet.readXML()方法完 ...

  7. 题解 P3811 【【模板】乘法逆元】

    P3811 [模板]乘法逆元 一个刚学数论的萌新,总结了一下这题的大部分做法 //一.费马小定理+快速幂 O(nlogn) 64分 #include<cstdio> using names ...

  8. 2019年7月20日 - LeetCode0003

    https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/submissions/ 我的解法: c ...

  9. python以ATM+购物车剖析一个项目的由来及流程

    ATM+购物车 一个项目是如何从无到有的 ''' 项目的由来,几个阶段 0.采集项目需求 1.需求分析 2.程序的架构设计 3.分任务开发 4.测试 5.上线运行 ''' 需求分析: # 对项目需求进 ...

  10. 2015.11.27---Java

    public class star{ public static void main(String[] args) { System.out.print("ha"); } }