macOS的系统设置记录(一)基础配置

macOS

本文所写的内容全部基于macOS Big Sur 11.1

作为一个用了N年Windows的人,对于mac那是一直非常馋的,但是由于对峡谷的热爱和囊中羞涩,一直到了去年年底才入手了第一台mbp。
拿到手那肯定是要开始折腾了,于是就开始了没有尽头的踩坑之路。所以一直计划着写一篇包括了设置系统、装软件、配路径等等内容包含在内的一篇文章,来帮助自己再买新电脑的时候如果time machine没法用,还有的参考。

系统设置

初次开机踩的坑

开机设置其实没什么难的,跟着引导一步步操作就好,这里只有一个坑点需要稍微注意一下。在进入系统之前,==单指轻触是没有开的!!!==所以你要用力按下去才是点击。GXX在初始化设置的时候卡在这里可能得有一个小时- –

进入桌面以后如果对单指轻触有需求,从左上角的系统偏好设置触摸板进行修改。

同时也建议花上几分钟在这个设置里面学习一下。

时间机器(Time machine)

时间机器可以说是macOS的一个非常有标志的特色了,它可以帮助你快速的把系统恢复到一个你保存过的状态。是的,听起来就像是虚拟机恢复快照一样。

所以开机后第一件事最好就是找一块移动硬盘做一次全量的备份,这样后面折腾一些东西崩了的时候还有机会恢复到最纯净的状态(重装当然也可以,只不过这样比较快)

时间机器的问题就在系统偏好设置时间机器

image-20210421103722828

image-20210421103722828

启动台

启动台里的应用图标默认是5行8列的大图标,显示的内容是比较少的,如果不想分组归类的话也可以通过命令进行设置,命令如下:

bash


defaults write com.apple.dock springboard-columns -int 9


defaults write com.apple.dock springboard-rows -int 6


killall Dock

设置完成以后的显示效果看起来好了不少

如果你想恢复默认的话可以使用下面的命令。恢复默认的配置:

bash


defaults write com.apple.dock springboard-rows Default
defaults write com.apple.dock springboard-columns Default


killall Dock

Dock栏

Dock栏的设置总的来说就是移除一些基本在国内不会用到的Apple的应用,然后根据用途把图标放在一起。这里gxx推荐把dock放在侧边,可以有效的利用屏幕空间。

终端设置

用上了mac,就无可避免的会用的终端,下面就记录一下对命令行和终端应用的优化与配置。

Terminal

Terminal(终端)是macOS自带的命令行终端,可通过点击Dock图标、Command+空格搜索、在启动台-实用工具中打开。

终端的偏好设置没有特别多的可以设置的地方,可以在描述文件里面更改一下主题,默认主题看的时间长了感觉有点刺眼。

Homebrew

Homebrew 是一款自由及开放源代码的软件包管理系统,用以简化macOS系统上的软件安装过程
后面许多安装都可以依靠homebrew,可以说大部分免费的软件只有你想不到,没有它装不了,因此首先在terminal里安装homebrew

原始安装

bash

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


sudo chown -R $(whoami) /usr/local/*


echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc

source ~/.zshrc


brew update

国内安装

无法🔬上网的国内安装可以使用如下脚本,会自动写入清华源

bash

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

重置brew

初次接触包管理器的话很容易就把自己玩儿崩了,不过不要慌,利用如下命令重置即可,然后再手动删除在zshrc中的源即可。如果是利用cunkai大佬脚本安装的,再执行一次就重置了

bash

重置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

再删除掉zshrc中与brew有关的内容
brew clean up
brew update

重启中断
image-20210422220526408

image-20210422220526408

软件备份

bash

brew bundle dump --describe --force --file="~/Desktop/Brewfile"

批量更新

bash

brew update && brew upgrade

brew tap caskroom/cask
brew tap buo/cask-upgrade
brew cu -a

brew install mas
mas upgrade

iTerm2

iTerm2 is a replacement for Terminal and the successor to iTerm. It works on Macs with macOS 10.12 or newer. iTerm2 brings the terminal into the modern age with features you never knew you always wanted.

官方下载地址:https://iterm2.com
也可以使用brew 进行安装:brew install iterm2

上来先展示最终优化的效果

image-20210421170605437

image-20210421170605437

启动页美化

screenfetch是一款可以用来生成那些漂亮的终端主题信息和用 ASCII 构成的发行版标志,它可以自动检测你的发行版并显示 ASCII 版的发行版标志,并且在右边显示一些有价值的信息。

mac下安装:

bash


brew install screenfetch

screenfetc -D 'Mac OS X'

安装完成之只需要在Preferences->Profiles->General->Command里面输入screenfetch就可以

image-20210421142614071

image-20210421142614071

标签页位置调整

标签页的位置在上面容易误关,在下面又不好点击,于是乎它就来到了左边。在Preferences->Appearance-General里面将Tab bar location选择为left即可。

顺便如果你选择激活Status bar location建议选择Bottom放在下面。

image-20210421161517558

image-20210421161517558

字体设置

Preferences->Profiles->Text->Font里面可以选择字体字号,这里选用的是Monaco。需要注意的是在下文中所提及的某些ohmyzsh的主题可能会对字体有特殊的要求。

image-20210421161907169

image-20210421161907169

设置完字体以后还需要对字符编码进行一下设置,不然会很奇妙的乱码,在Preferences->Profiles->Terminal->Ternimal Emulation中选择Character encoding:Unicode(UTF-8)即可

image-20210421161943023

image-20210421161943023

窗体设置

窗体的设置可以按照下面标注的自行设置成自己喜欢的感觉就好。

image-20210421164126615

image-20210421164126615

热键呼出iTerm2

有时候在浏览网页做一些配置的时候,频繁的切换应用很麻烦,分屏显示又很丑,这个时候就可以用上这招了。在Preferences->Keys->Hotkey里面选择Create a Dedicated Hotkey Window

image-20210421171216800

image-20210421171216800

在设置里面首先选择启动方式,这里推荐Double-tap key防止热键莫名的冲突。最后如果你想在全屏模式下依然能够唤醒iTerm2的话勾选上Floating window

image-20210421171321260

image-20210421171321260

实用热键设置

  1. 以单词为单位前进后退,在Preferences->Keys->Key Bindings里面选择左下角的➕新建快捷键,Keyboard Shortcut自行决定,Action选择Send Escape SequenceEsc+选择填入fb

    前进

    前进

    后退

    后退

  2. 在当前目录打开新标签页/窗口,在系统偏好设置键盘快捷键服务里,找到New iTerm2 Tab/Window Here自行设定即可

    image-20210421195611315

    image-20210421195611315

实用命令

  1. 允许App的来源
    当我们安装第三方软件经常会需要系统偏好设置安全性与隐私通用里要选择允许从任何来源下载的App,但是最新的系统这个选项默认都是隐藏的,因此需要在终端输入以下命令来显示选项。

    bash

    
    sudo spctl --master-disabl
    
    image-20210421194902100

    image-20210421194902100

  2. 修改主机名/共享名称

    bash

    
    sudo scutil --set HostName xxxxx
    
    
    sudo scutil --set ComputerName xxxxx
    
  3. 安装xcode工具
    Command Line Tools 是在 Xcode 中的一款工具,macOS 下不少开发工具都会依赖这个,所以我们手动安装一下,后面安装其他工具可以省下不少麻烦

    bash

    
    xcode-select --install
    
  4. 关闭SIP(可选的)
    后面不关闭SIP的话类似于 proxychains-ng 这种代理神器就无法使用。重启Mac,按住Option键进入启动盘选择模式,按 + R 进入 Recovery 模式。「菜单栏」 ->「 实用工具(Utilities)」-> 「终端(Terminal)」:

    bash

    
    csrutil disable
    
    csrutil enable
    
    csrutil status
    System Integrity Protection status: disabled.(表明关闭成功)
    
  5. 计算文件hash

    bash

    md5 file_name
    shasum -a 1/256 file_name
    

    命令行代理

🔬上网以后,命令行默认是不走代理的,因此我们需要一些工具或者环境变量的设置

proxychains

终端命令行下代理神器,可以让指定的命令走设置好的代理,内网渗透、科学上网必备工具

bash


brew install proxychains-ng


vim /usr/local/etc/proxychains.conf

socks5 127.0.0.1 xxxx

环境变量法

使用proxychains的话需要关闭SIP,对于不想关闭的同学的话也可以使用环境变量法

bash

export http_proxy=http://127.0.0.1:1087;export https_proxy=http://127.0.0.1:1087;

这会临时在当前终端的 shell 环境生成一个 http 与 https 代理,想要永久代理的话就将这两条命令写入到 .zshrc 的配置文件即可,再补充一个使用 socks5 代理的命令:

bash

export all_proxy="socks5://127.0.0.1:1086"

这种方法更便捷的一种实现方式,也是最像proxychains的方式就是利用alias设置别名开关

bash

proxy='export all_proxy=socks5://127.0.0.1:1081'
unproxy='unset all_proxy'

ZSH & ohmyzsh

Z shellZsh)是一款可用作交互式登录的shell及脚本编写的命令解释器。Zsh对Bourne shell做出了大量改进,同时加入了Bash、ksh及tcsh的某些功能。

简而言之,Zsh就是很好用的shell,自2019年起,macOS的默认Shell已从Bash改为Zsh。由于Zsh的配置略显繁琐,所以这里引入了一个开源的框架ohmyzsh
Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with thousands of helpful functions, helpers, plugins, themes, and a few things that make you shout…
根据官方所形容的,ohmyzsh是一个拥有大量功能、插件、主题等等优秀功能的框架来帮助我们使用Zsh,当然事实也是如此。那么如何使用ohmyzsh呢?

安装Zsh&ohmyzsh

  1. 首先检查一下默认的shell是不是Zsh。如果是进入步骤4,如果不是进入步骤2.
  2. 检查系统里有没有安装Zsh,如果有进入步骤4,如果没有进入步骤3

    bash

    cat /etc/shells
    
    
    
    
    /bin/bash
    /bin/csh
    /bin/dash
    /bin/ksh
    /bin/sh
    /bin/tcsh
    /bin/zsh
    
  3. 安装Zsh
  4. 将默认shell修改为Zsh

    bash

    
    chsh -s /usr/local/bin/zsh
    
    chsh -s /bin/zsh
    
  5. 安装ohmyzsh

    bash

    
    proxychains4 -q /bin/bash
    
    export ALL_PROXY=socks5://127.0.0.1:1086
    
    sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
    
    sh -c "$(curl -fsSL https://gitee.com/mirrors/oh-my-zsh/blob/master/tools/install.sh)"
    
  6. 相关报错解决

    bash

    
    [oh-my-zsh] Insecure completion-dependent directories detected:
    ...
    
    chmod 755 /usr/local/share/zsh
    chmod 755 /usr/local/share/zsh/site-functions
    

主题和插件

ohmyzsh是有很多默认主题和第三方主题的,这里的,在.zshrc文件里面修改即可,自带主题的效果可以在github查看 https://github.com/ohmyzsh/ohmyzsh/wiki/Themes

bash


vim ~/.zshrc

ZSH_THEME="theunraveler"

插件推荐三个必不可少的,剩下的就看个人需求

  1. autojump

    bash

    
    brew install autojump
    
    plugins=(autojump)
    
    ~ cd Documents/Hexo
    Hexo cd ~
    
    ~ j hexo
    
  2. zsh-autosuggestions

    bash

    
    
    git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
    
    plugins=(autojump zsh-autosuggestions)
    
  3. zsh-syntax-highlighting

    bash

    
    
    git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $&
    
    plugins=(autojump zsh-autosuggestions zsh-syntax-highlighting)
    

别名(alias)设置

别名是一种给常用命令起别称的做法,可以极大提高我们的效率,例如可以设置alias la='ls- la'这样我们只需要敲入la即可完成想要的命令
下面给出几个GXX常用的别名,大家可以自行设置:

bash

cls=clear
sz='source ~/.zshrc'
vz='open /Applications/Visual\ Studio\ Code.app/ ~/.zshrc'

macOS的基础配置就写到这里了,其他一些如python、java的开发环境、软件的安装、工具的设置等等将会另起一到两篇文章进行介绍。


参考链接

  1. 国光-国光的macOS配置优化记录
  2. Github issue-https://github.com/szc188/MSI-B460M-MORTAR-10700K-5500XT-OC/issues/7
  3. ohmyzsh-https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH
© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享