跳转到内容
返回首页

Unix-like 系统配置记录 (macOS & Linux)

本文档记录 macOS 和 Linux 系统的配置方法。由于两者都是 Unix-like 系统,大部分配置方法通用,平台特定的配置会特别标注。

目录

Open 目录

开发配置

Ubuntu Dektop 禁用图形界面

禁用 GNOME 图形界面

  1. 禁用显示管理器(GDM3)

    sudo systemctl set-default multi-user.target

    禁用它可防止系统启动 GUI,这会将系统默认启动目标设为“多用户命令行模式”。

  2. 立即停止当前图形界面(可选)

    sudo systemctl isolate multi-user.target

    如果当前已登录图形桌面,可以立即停止它而不重启。执行后,系统会退出图形界面,回到 TTY 命令行(通常是黑屏,按 Ctrl+Alt+F2 或 F3 切换到终端)。

  3. 卸载 GNOME 组件(可选)

    sudo apt remove --purge ubuntu-desktop gnome-shell gdm3
    sudo apt autoremove

临时停止图形界面

  1. 临时停止图形界面,释放显存:

    sudo systemctl stop gdm3

    这会立即终止 GNOME 和 Xorg/Wayland 进程,释放显存。但下次重启后 GUI 仍会启动。停止 gdm3 后,可能需要通过 Ctrl+Alt+F2 切换到 TTY2 登录。

  2. 重新启用图形界面:

    sudo systemctl set-default graphical.target
    sudo systemctl start gdm3
    
    // 或者重启系统
    sudo reboot

Frp 内网穿透 SSH

  1. frpc.toml 配置文件示例:

    [common]
    server_addr = x.x.x.x        # 服务器公网 IP 地址
    server_port = 7000           # frp 服务器端口
    
    token = "your_strong_secret_token"  # 必须与 frps 一致
    
    [ssh]
    type = tcp
    local_port = 22
    remote_port = 1234  # 云服务器上暴露的端口
  2. 配置 systemd 自启

    创建 /etc/systemd/system/frpc.service 文件:

    [Unit]
    Description=frpc daemon
    After=network.target
    
    [Service]
    Type=simple
    ExecStart=/home/xu/frp/frpc -c /home/xu/frp/frpc.toml
    Restart=always
    RestartSec=10
    
    [Install]
    WantedBy=multi-user.target
  3. 启动并设置开机自启

    sudo systemctl daemon-reload
    sudo systemctl start frpc
    sudo systemctl enable frpc

系统配置

1. Zsh 安装与配置

安装 Zsh

Linux:

# 安装 Zsh
sudo apt update
sudo apt install zsh

# 查看 Zsh 的版本
zsh --version

# 设置 Zsh 为默认 shell
chsh -s $(which zsh)

macOS:

# macOS 已内置 Zsh (Catalina 及以后版本默认使用 Zsh)
# 查看 Zsh 的版本
zsh --version

# 如需安装最新版本
brew install zsh

# 设置 Zsh 为默认 shell
chsh -s $(which zsh)

安装 Zimfw

2025.02.16:使用 Zimfw 代替 Oh My Zsh,集成度和效率更高

# 查看当前使用的 shell
echo $SHELL
# 通过 curl 安装 Zimfw
curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
echo $ZSH

Zsh 插件与主题配置

# 添加 powerlevel10k 模块
zmodule romkatv/powerlevel10k
zimfw install
zimfw update
zimfw upgrade

# 安装 Zoxide(非 Zimfw 安装)
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh

大部分 Oh My Zsh 需要手动配置的插件(如 compinit、SHARE_HISTORY、CORRECT 等)在 Zim 中已经默认启用,只需要手动添加需要的模块和主题,使用 zimfw install 即可自动安装。

2. macOS 初始化配置

系统设置

macOS 常用工具

功能名称备注下载链接
解压缩Keka官网免费官网
卸载AppCleaner免费官网
快捷操作Raycast基本功能免费官网
PDF 阅读PDF Expert收费官网
截图PixPin基本功能免费官网
右键管理iRightMouse免费版 / 专业版App Store
软件包管理HomeBrew开源官网
菜单管理Ice开源brew install jordanbaird-ice
终端iTerm2开源官网
SSHTermius内购官网
剪切板Raycast (部分功能)基本功能免费官网
窗口管理Loop开源brew install --cask loop
网络唤醒wakeonlan开源brew install wakeonlan
声音管理SoundSource付费官网
声音管理LosslessSwitcher开源GitHub
键鼠共享DeskFlow开源GitHub
播放器IINA开源官网
Shell自动补全Amazon Q开源GitHub

移除登录项

3. Ubuntu 系统优化

SSH 服务端优化

优化 SSH 连接速度,禁用不必要的 DNS 解析和 GSSAPI 认证,强制使用 IPv4:

# 修改配置文件
sudo sed -i '$a UseDNS no\nGSSAPIAuthentication no\nAddressFamily inet' /etc/ssh/sshd_config

# 应用更改 (针对 Ubuntu 24.04 Socket 激活模式)
sudo systemctl daemon-reload
sudo systemctl restart ssh.socket ssh.service

增加Linux 内核允许用户程序“监控文件变化”的上限

防止 VS Code 因为无法实时监听文件变化而变得迟钝:

# 临时生效
# 定义了单个用户可以创建的 inotify 监听器(Watcher)的总数,默认 8192
sudo sysctl fs.inotify.max_user_watches=524288
# 定义了单个用户可以创建的 inotify 实例(Instance)的总数,默认为128
sudo sysctl fs.inotify.max_user_instances=512

# 永久生效(写入配置文件)
echo "fs.inotify.max_user_watches=524288" | sudo tee -a /etc/sysctl.conf
echo "fs.inotify.max_user_instances=512" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

CPU 高性能模式

将 CPU 调频策略切换为性能模式,提升系统响应速度:

# 查看支持的模式
powerprofilesctl

# 切换为高性能模式
sudo powerprofilesctl set performance

优化虚拟内存

Ubuntu 默认的 swappiness 值为 60,这意味着系统会较早地开始将内存数据交换到硬盘(即使你内存还够)。对于高性能机器,可以降低这个值,让系统优先使用物理内存:

# 修改为 10, 只有内存几乎用满时才用 Swap
sudo sysctl vm.swappiness=10
# 永久生效
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf

启用中断平衡

处理大量网络包(SSH、文件传输)时,如果压力全在一个核心上,会造成单核瓶颈。irqbalance 能将硬件中断负载均匀分配到所有核心:

sudo apt install irqbalance
sudo systemctl enable --now irqbalance

内核与文件监控上限

提高文件监控上限,避免开发工具(如 IDE、构建工具)因监控文件数量限制而报错,同时优化内存交换策略:

# 写入内核配置文件
sudo tee -a /etc/sysctl.conf <<EOF
fs.inotify.max_user_watches=524288
fs.inotify.max_user_instances=512
vm.swappiness=10
EOF

# 立即应用
sudo sysctl -p

日志优化

限制系统日志大小,防止日志占用过多磁盘空间:

# 限制日志最大占用 500M
sudo journalctl --vacuum-size=500M

# 永久限制:修改配置文件
sudo sed -i 's/#SystemMaxUse=/SystemMaxUse=500M/' /etc/systemd/journald.conf
sudo systemctl restart systemd-journald

4. 欧陆词典无限试用 (macOS)

欧路词典 Mac 版和 Windows 版有差异,Mac 版不购买注册版本有试用次数的限制。但可以通过修改本地偏好设置的方式绕过。具体过程记录如下;

重新打开欧路词典,即可无限次使用专业功能,升级也不会失效。

5. Micro 编辑器配置

Micro 是一个现代化、易于使用的终端文本编辑器,支持跨平台使用。以下是在 macOS 和 Ubuntu 上的优化配置。

macOS 配置

macOS 环境下使用外部剪贴板,方便与系统其他应用交互:

{
    "clipboard": "external",
    "mkparents": true,
    "savecursor": true,
    "autosu": true,
    "tabsize": 4,
    "tabstospaces": true,
    "hlsearch": true,
    "softwrap": true
}

配置说明:

Ubuntu 配置

Ubuntu 环境下使用终端剪贴板,配置更简洁:

{
    "autosu": true,
    "clipboard": "terminal",
    "hlsearch": true,
    "mkparents": true,
    "savecursor": true,
    "softwrap": true,
    "tabstospaces": true
}

配置说明:

配置文件位置:~/.config/micro/settings.json


本文使用“CC BY-NC-SA 4.0”进行许可。商业转载请联系站长获得授权。非商业转载请注明本文出处及文章链接。如果您混合、转换或者基于本作品进行创作,您必须基于相同的协议分发您贡献的作品。

分享这篇文章到:

上一篇
低性能云服务器配置记录
下一篇
随笔 | 旧居记忆