点击上方“程序员小明”,选择“星标”

今晚可以不加班!

最近小明刚换置了一个 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)"  

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

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

猜你还想看

SpringBoot:优雅地处理全局异常

漫画:有趣的“帽子问题”

brew安装指定版本ruby_Mac安装Homebrew的那些事儿相关推荐

  1. 【Python】Python安装指定版本库

    Python安装指定版本库 安装指定的版本库在平时代码开发中是很有必要的操作,毕竟有些库之间相互依赖,如果版本不在依赖的范围之内,我们安装的库会报安装的依赖版本有问题. 先看一下命令: pip ins ...

  2. brew安装指定版本mysql,Mac 系统为 Valet 开发环境安装指定版本 MySQL

    Mac 系统为 Valet 开发环境安装指定版本 MySQL 由 学院君 创建于1年前, 最后更新于 5个月前 版本号 #3 1547 views 1 likes 0 collects 在 Mac 系 ...

  3. MacOSX系统下HomeBrew安装指定版本的软件 IntelliJ IDEA 设置多个Go语言版本开发

    HomeBrew安装指定版本的软件 快速多版本切换 通过 brew install [formula]@[tag] 安装多个版本,然后把其他版本移动到[formula]默认目录中,然后通过brew s ...

  4. Mac安装指定版本的node

    Mac安装指定版本的node 安装Homebrew Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装.卸载.更新.查看.搜索等很多实用的功能.简单的一条指令,就可以实现包管理,而不用 ...

  5. 安装指定版本Angular-CLI

    卸载并安装指定版本Angular CLI 卸载之前的版本 npm uninstall -g @angular/cli 清除缓存,确保卸载干净 npm cache clean 检查是否卸载干净 输入ng ...

  6. CentOS 6.9/7通过yum安装指定版本的JDK/Maven

    说明:通过yum好处其实很多,环境变量不用配置,配置文件放在大家都熟悉的地方,通过rpm -ql xxx可以知道全部文件的地方等等. 一.安装JDK(Oracle JDK 1.8) # wget -- ...

  7. 运维笔记--ubuntu安装指定版本的RabbitMQ

    场景描述: 日常开发or生产环境经常会需要安装指定版本的软件,出于和其他软件的配合兼容性,以及稳定性的考虑. 现在我们的需求是安装指定版本的RabbitMQ,版本号: 操作步骤: 注意事项: 异常处理 ...

  8. yum 安装指定版本php,怎样通过yum安装指定版本的php

    通过yum安装指定版本的php的方法:首先执行[yum -y install epel-release]命令安装源:然后执行[yum-config-manager –enable remi-php71 ...

  9. Cloudera Manager安装之利用parcels方式(在线或离线)安装3或4节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(Ubuntu14.04)(五)...

    如果大家,在启动的时候,比如遇到如下问题,则 明明已经授权了啊,怎么被拒绝,纳尼??? 解决办法 然后,再来这样,就可以了. 注意,在此之前. ubuntucmbigdata1机器上,则需要执行 bi ...

最新文章

  1. chatbot:基于 AIML 的 PHP 聊天机器人
  2. 生产系统支撑终端故障处理的三个误区
  3. Device eth0 does not seem to be present, delaying initialization.转载
  4. ML之回归预测:以某个数据集为例从0到1深入理解科学预测之回归(实数值评分预测)问题的思路框架
  5. centos nginx不是命令_虚拟机下Centos 8.0 安装PHP+Mysql+Nginx
  6. 云信小课堂丨简单四步,快速搭建协同办公系统!
  7. 计算机图形几个小常识
  8. matlab 输入矩形序列,从python调用Matlab函数:“初始值设定项必须是矩形嵌套序列”...
  9. java 命令行运行 打包 IDEA
  10. 通用版工业制程SPC管理系统,源代码分享
  11. vim/nvim键盘映射
  12. rapidminer java,rapidminer 数据导入及几个算子简单应用
  13. DB2也可以PINNED
  14. 如何把源代码格式复制到WPS文档中
  15. python模拟手机按键_Appium+Python-模拟手机按键操作
  16. Google Nexus 5 root后显示文件系统/system只读
  17. linux查看是centos几版本
  18. C++小实验之vector的 push_back 和 emplace_back 及其使用时机
  19. 618微信小程序电商销售数据出炉(附完整报告)
  20. echarts图表生成base64

热门文章

  1. 程序员伪装 AI 编程,竟骗来 2 亿的投资!
  2. NASA 遭攻击,安全 Bug 仍未解决!
  3. 关于 CSDN 下载频道知识产权保护的声明
  4. 全方位测评Hive、SparkSQL、Presto 等七个大数据查询引擎,最快的竟是……| 程序员硬核测评...
  5. 叫板苹果谷歌,微软将开发者应用分成上调至 95%
  6. 日本要向中国收二维码使用费?每人一分钱?
  7. 漫画:什么是外部排序?
  8. 颠覆网站 C/S 模式,没有服务器的网站会怎样?
  9. 微信数据有望彻底删除了!史上最严隐私法规 GDPR 正式推行
  10. 蹭着 Java 热点出生的 JavaScript 已经 22 岁了!