编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

Mac系统的必备基础知识(mac系统操作指南)

wxchong 2024-07-07 00:00:23 开源技术 14 ℃ 0 评论

1、OpenSSL

确认已安装的openssl的版本和位置

$ which openssl

确定版本

$ openssl version

brew安装openssl

$ brew install openssl

brew更新openssl

$ brew upgrade openssl

brew强制链接到openssl

$ brew link openssl --force

Mac OSX 安装新版OpenSSL问题


2、文件类型

dmg:安装包

pkg:

dylib:动态链接库


dmg with pkg:像 git-2.5.3-intel-universal-mavericks.dmg

这种 dmg 打包的是 git command CLI 的安装 pkg,需要使用 DiskImageMounter 挂载 dmg,然后打开 pkg(使用 Installer),按照引导一步步 next 即可安装完成。当然也可使用 命令行 完成挂载安装操作。

除了使用 dmg、pkg 来安装软件外,Mac 下同样有优秀的软件包管理工具,可以下载、安装和管理大量 AppleStore 没有提供、而又经常会用到的开源软件。我们有两种选择 —— MacPorts 和 Homebrew。
MacPorts
MacPorts (DarwinPorts) 是由 FreeBSD 的 port 移植而来的软件包管理系统,用来简化 Mac OS X和 Darwin 操作系统上软件的安装。

在 Mac 中安装 MacPorts 让你在Mac 的 Shell 下更加游刃有余。MacPorts 有个原则,对于软件包之间的依赖,都在 MacPorts 内部(/opt/local)解决,

无论系统本身是否包含了需要的库,都不会加以利用。这使得 MacPorts 庞大臃肿,导致系统出现大量软件包的冗余,占用不小的磁盘空间,同时稍大型一点的软件编译时间都会难以忍受。

Homebrew
Homebrew(简称 brew)是 Mac OS X 不可或缺的软件管理工具(The missing package manager for OS X),让 Mac 拥有类似 apt-get 的功能,用以简化软件的安装、升级和卸载过程。

Homebrew is the easiest and most flexible way to install the UNIX tools.

Homebrew 是一款使用 Ruby 进行开发的托管于 GitHub 上的自由及开放源代码的软件包管理系统,通过用户的贡献扩大对软件包的支持。


MacPorts vs Homebrew
MacPorts 和 Homebrew 这两种包管理系统的工作方式都是下载源代码,然后在本地编译。但是这两种包管理系统还是存在很大差异的,主要差异有以下三点:

MacPorts 的理念是尽量减少对系统现有库的依赖,编译时间较长;而 Homebrew 则是尽量依赖系统现有库,编译时间会显著减少。

MacPorts 的 Package 是安装到 /opt/local

,不会与系统现有的软件发生冲突;而 Homebrew 的 Package 是安装到 /usr/local

,可能与系统自带的软件发生冲突。

Macports 使用 rsync 进行同步(也可以使用svn),而 Homebrew 使用 git 进行同步。

总体来说,Homebrew 使用简单,编译时间短,比较适合新手使用。MacPorts 编译时间长,命令还要带上 sudo,易用性上没有 Homebrew 好,但是比较干净,适合有洁癖的人使用。

以上梳理了 Linux 和 Mac 下的包管理机制,下面重点介绍 Mac OS X 上的包管理 CLI 命令行工具 brew 及其增强工具 brew-cask。


brew (homebrew)
brew 是从软件包仓库下载源代码码到本地进行解压,进而执行 ./configure && make install,将软件编译安装到单独的目录(/usr/local/Cellar)下,然后软链(symlink)到 /usr/local

目录下,同时会自动检测下载相关依赖库,并自动配置好各种环境变量。这个对程序员来说简直是福音,使用简单的指令就能快速安装、升级和卸载本地的各种开发环境。


Mac 下的软件安装 —— 从 pkg,dmg 到 brew,cask

3、文件上传下载

Mac OS的shell自带命令scp,可以通过scp来上传和下载文件

#上传
scp -r local_folder remote_username@remote_ip:remote_folder

#下载
scp -r remote_username@remote_ip:remote_folder local_folder

#scp命令参数
1.-v 显示进度
2.-r 递归处理
3.-C 压缩选项
4.-P 选择端口



Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表