6 linux 制作raw命令_搭建 MacOS/Linux 统一开发环境(Homebrew)

本文介绍了Homebrew这款MacOS和Linux的包管理工具,它能简化软件安装、卸载过程,处理依赖关系。内容包括Homebrew的安装(远程与本地安装及镜像设置)、使用(基本操作、Cask的加载与使用、Services的使用)、以及调试方法,帮助开发者创建高效开发环境。
摘要由CSDN通过智能技术生成
本文使用 Zhihu On VSCode 创作并发布

Homebrew 简介

相比于 Windows,MacOS 的软件管理在大多数时候都相对简单,解压安装即可,而且安装路径都统一在Applications文件夹下。但涉及到一些含有依赖(dependency)的开发软件,如 MySQL 等,有时就会麻烦很多,加之 MacOS 长期受人诟病的窗口管理,一旦文件夹层级过多,操作起来分成不方便。Homebrew 是一款 MacOS 平台下的包管理工具,拥有安装、卸载、更新、查看、搜索等诸多实用的功能。简单的一条命令,就可以实现包管理,自动处理相应依赖,所有的文件都会被统一安放在几个指定的文件夹里,几乎不用额外关心。

更重要的是 Homebrew 同样适用于 Linux,换句话说,在 Windows Subsystem Linux(WSL)中,同样可以使用 Homebrew。当然,有人会说,使用 Ubuntu 原生的 apt-get 非常方便。各有所爱吧,我个人觉得 brew 的更为方便,不仅可以管理软件,还可以管理服务,而且不用经常因为管理员权限敲密码,更重要的是命令简洁统一。比如apt-get install是安装,卸载却变成了apt-get remove,而不是apt-get uninstall,反直觉,不爱了。

详细介绍,可前往
Homebrew 官网​brew.sh

Homebrew 的安装

Homebrew 需要在 MacOS 上预先安装 Xcode 命令行工具。

xcode-select --install

远程安装

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

卸载方法类似:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

本地安装

如果发现因为"墙"的原因连接不上,如果发现因为"墙"的原因连接不上,

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

也可以使用国内镜像采用如下步骤进行本地安装:

# 下载源到本地
curl -fsSL https:/raw.githubusercontent.com/Homebrew/install/master/install >> brew_install
# 显修改镜像源
vi brew_install

打开 /usr/bin/ruby/brew_install 文件,进行如下修改:

BREW_REPO     = "https:/mirrors.tuna.tsinghua.edu.cn/brew.git".freeze
CORE_TAP_REPO = "https:/mirrors.tuna.tsinghua.edu.cn/homebrew-core.git".freeze

修改完毕,返回系统环境,安装

/usr/bin/ruby brew_install

镜像

如果速度实在太慢,可以考虑使用中科大镜像,使用如下命令:

git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git

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

清除镜像,使用原始链接,可以使用如下命令

# 复原
git -C "$(brew --repo)" remote set-url origin https:/github.com/Homebrew/brew.git
git -C "$(brew --repo homebrew/core)" remote set-url origin https:/github.com/Homebrew/homebrew-core.git
git -C "$(brew --repo homebrew/cask)" remote set-url origin https:/github.com/Homebrew/homebrew-cask.git

Homebrew 的使用

基本操作

# 安装
brew install [package_name]
# 卸载
brew uninstall [package_name]
# 升级自身
brew update
# 升级
brew upgrade [package_name]
# 升级全部
brew upgrade
# 查看已安装列表
brew list
# 查看可升级列表
brew outdated
# 查找
brew search [package_name]
# 清理缓存
brew cleanup
# 查看信息
brew info
# 自身诊断
brew doctor

Cask 的加载

Cask 可以看作是 Homebrew 的软件源,是其外在延申。Homebrew 的官方 Cask 包含了大量的基于图形用户界面(GUI)的软件,有大量的维护者,所以一般常用软件,无论中英文,都可以在其中找到。Cask 使用brew tap命令进行加载。

# 官方源
brew tap homebrew/homebrew-cask
# 字体
brew tap homebrew/cask-fonts
# 过往版本
brew tap homebrew/cask-versions
# java 环境
brew tap adoptopenjdk/openjdk
# linux 安装包
brew tap athrunsun/linuxbinary
# 生物相关(支持 linux)
brew tap brewsci/bio


欲查询安装脚本的详细信息,可前往

Homebrew Formulae​formulae.brew.sh
f22b36b83b7cd55f192ab251d2564bfb.png

Homebrew 允许用户建立自己的 Cask,如添加我个人的(含有每日英语、法语、西语听力等软件):

brew tap integzz/extras
后面会介绍怎么构建 Cask。

Cask 的使用

Cask 的使用与 Homebrew 本身大同小异,只需将brew变为brew cask即可。这里有两处需要注意:

  • Cask 中软件的搜索依然是brew search
  • Cask 中软件的升级很多时候需要使用贪婪模式,即brew cask update --greedy

Services 的使用

Homebrew 绑定了 Services 工具包,可以非常便捷地管理系统服务:

# 开启
brew services start mysql
# 停止
brew services stop mysql
# 重启
brew services restart mysql
# 列出当前的状态
brew services list

Homebrew 的调试

一些参数

# 关闭自动升级
export HOMEBREW_NO_AUTO_UPDATE = true

报错

对于更新失败等一般报错,使用自带的重置功能:

# 一般报错
brew update-reset && brew update
# Error: parent directory is world writable but not sticky
sudo chmod +t /private/tmp/

对于复杂报错,进入 Homebrew 所在目录,强制重置:

cd /usr/local/Homebrew
sudo git reset --hard
sudo git clean -df
brew update
sudo git stash
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值