90DaysOfDevOps 第 20 天:开发工作站配置——用 dotfiles、Zsh 与 Oh My Zsh 打造高效 Linux 桌面

发布时间:2026/10/8 18:48:00
90DaysOfDevOps 第 20 天:开发工作站配置——用 dotfiles、Zsh 与 Oh My Zsh 打造高效 Linux 桌面
文档/教程【免费下载链接】90DaysOfDevOpsThis repository started out as a learning in public project for myself and has now become a structured learning map for many in the community. We have 3 years under our belt covering all things DevOps, including Principles, Processes, Tooling and Use Cases surrounding this vast topic.项目地址https://gitcode.com/gh_mirrors/90/90DaysOfDevOps点击查看免费下载在 90DaysOfDevOps 的 Linux 学习收尾阶段2022/tr/Days/day20.md原文为土耳其语对应英文版 2022/Days/day20.md聚焦Dev 工作站配置这一实战主题从 dotfiles 入手把 Ubuntu 桌面从默认的 bash 体验升级为以 Zsh Oh My Zsh 为核心的个性化开发环境。读完本文你将掌握 dotfiles 的工作原理、Zsh 的安装与切换、Oh My Zsh 主题与插件的配置以及一套可直接复制的开发工具链清单。说明本主题的目标是**开发工作站桌面环境**的个性化与效率提升而非服务器环境的配置方式两者不应混淆。文中所有命令与配置均在 Ubuntu 20.04 虚拟机VirtualBox环境中验证仓库 2022/Days/Linux/VAGRANTFILE 提供了对应的 Vagrant 定义。环境准备Ubuntu 20.04 虚拟机作者 Michael Cade 使用 Ubuntu 虚拟机配合 VirtualBox 作为日常驾驶的开发桌面。仓库中提供了该环境的可复现定义2022/Days/Linux/VAGRANTFILE 使用chenhan/ubuntu-desktop-20.04镜像并配置了 8GB 内存、4 核 CPU、128MB 显存Vagrant.configure(2) do |config| config.vm.box chenhan/ubuntu-desktop-20.04 config.vm.provider :virtualbox do |v| v.memory 8096 v.cpus 4 v.customize [modifyvm, :id, --vram, 128] end end配套的 create-user.sh 脚本则展示了如何在虚拟机中快速创建带密码的用户sudo useradd -m $username与sudo chpasswd并支持通过del参数删除用户——这套流程很适合在多台开发机上初始化环境。系统开箱后桌面上运行的是默认的 bash shell。接下来的一切定制都围绕一个核心概念展开dotfiles。dotfilesLinux 配置的灵魂Linux 系统的本质由大量配置文件组成这些以.开头的隐藏文件被称为dotfiles点文件。几乎所有软件都会把自己的配置存放在这类文件中dotfiles 也因此成为定制系统的入口。dotfiles 的作用远不止让桌面变好看美化调整提示符、主题、背景让界面更赏心悦目生产力为命令提示符添加别名alias、为不同工具添加路径PATH增加或移除功能甚至走极简路线。文件名中的点号.使其默认隐藏避免被误操作。以默认的 bash 为例家目录下会出现.bashrc和.bash_profile两个配置文件。可以通过ls -al查看当前系统的 dotfilesls -al下图即是在虚拟机终端中执行ls -al后的典型输出可以看到.bash_history、.bashrc等点文件与其他项目目录共存很多开发者会把 dotfiles 公开分享、纳入版本管理从而在任意新机器上快速复现自己的环境。这是开发工作站配置最常见的落地方式。本文随后将把 shell 从 bash 切换为 Zsh届时家目录中会出现新的.zshrc配置文件。Zsh切换默认 Shell在切换之前先认识一下 Zsh。它与 bash 高度相似但在交互体验上有明显优势交互式 Tab 补全按Tab智能补全命令与参数自动文件搜索正则表达式集成用于定义命令作用域的进阶简写丰富的主题引擎。安装与首次配置Ubuntu 下可直接用apt安装在 VM 控制台操作即可无需图形界面sudo apt install zsh安装完成后运行zsh会启动首次配置向导会生成配置文件。向导向导中可以选择配置选项如果选择1还能看到更多可调项。若用0退出向导则只会生成基础的.zshrc之后可用以下命令确认新配置文件已创建ls -al | grep .zshrc将 Zsh 设为默认 Shell要让每次打开终端都默认使用 Zsh需要修改登录 Shell。执行以下命令系统会要求输入密码chsh -s $(which zsh)$(which zsh)会动态解析 zsh 二进制的绝对路径如/usr/bin/zsh并传给chsh -s。修改后重新登录即可生效。若不想注销重登可在当前会话中立即切换exec zsh切换完成后可用下面这条命令验证当前 Shell 路径which $SHELL如果输出为/usr/bin/zsh之类的路径说明切换成功。作者的个人经验是在每个新 Ubuntu 桌面上都会执行此步骤并主观感受 zsh 略快于 bash。土耳其语译者补充了一个值得注意的观点sh永远是最轻量、最快的选择且几乎必然存在但 zsh 的个性化能力更强、日常交互更高效在编写脚本时需意识到目标系统不一定包含 bash 之外的高级 Shell——这是跨发行版脚本兼容性的一条重要经验。Oh My Zsh开箱即用的配置框架为了让终端更好看并增加交互功能下一步引入Oh My Zsh——一个免费开源的 zsh 配置管理框架。它通过大量插件、主题与社区资源让 zsh 的定制能力大幅提升原文档称之为天文级别的可管理性。Oh My Zsh 提供curl、wget、fetch三种安装方式Ubuntu 默认自带前两者。使用curl安装sh -c $(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)该命令会从官方安装脚本地址下载并执行安装典型输出如下克隆项目到.oh-my-zsh、备份旧配置、生成新的.zshrcOh My Zsh 内置了 100 多个主题可供选择。作者推荐的是 Dracula 主题详见后文。此外有两个插件被认为是使用 Oh My Zsh 时必备的git clone https://github.com/zsh-users/zsh-autosuggestions.git $ZSH_CUSTOM/plugins/zsh-autosuggestions git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlightingzsh-autosuggestions根据历史命令给出灰色建议按右键一键补全zsh-syntax-highlighting命令语法实时高亮合法/非法命令一目了然。插件克隆到$ZSH_CUSTOM/plugins/后还需要用文本编辑器此前章节介绍过的 nano 或 vim编辑~/.zshrc把插件加入启用列表plugins( git zsh-autosuggestions zsh-syntax-highlighting )git插件是 Oh My Zsh 的默认插件提供大量 git 别名如gst、ga等日常开发中非常实用。Gnome 扩展桌面体验增强在桌面层面作者还使用一组 Gnome 扩展通过 extensions.gnome.org 安装推荐清单如下Caffeine防止屏幕休眠/锁屏长任务运行时很有用CPU Power Manager管理 CPU 功耗模式Dash to Dock把应用收藏栏变为可用的 DockDesktop Icons在桌面上显示图标User Themes允许加载自定义 Shell/GTK 主题Dracula 主题落地依赖它。这些扩展配合前面配置的终端环境共同构成完整的桌面工作流。开发工具链清单作者在自己的开发机上通过apt安装的核心软件清单如下这些工具覆盖了容器、云、IaC 与 API 调试等 DevOps 日常场景VSCode代码编辑器azure-cliAzure 云 CLIcontainerd.io容器运行时docker / docker-ce容器引擎google-cloud-sdkGCP 云 CLIinsomniaAPI 调试客户端packer镜像构建terminator终端模拟器terraform基础设施即代码vagrant虚拟机环境管理其中terminator是作者偏爱的终端而译者习惯使用 Tilix同样支持多标签/多窗格。两者都是 zsh Oh My Zsh 的良好载体可按个人偏好选择。Dracula 主题统一全端观感作者使用的主题是Draculadraculatheme.com。它清晰、干净并且为大量常见软件提供官方配色方案因此即使装了多种工具整体观感也能保持一致。配置步骤分为两部分Zsh 主题在 Dracula 官网搜索 zsh至少能找到两个安装选项手动或 git 安装。安装后编辑.zshrc将ZSH_THEME设置为 Dracula 主题Gnome Terminal 主题同样从官网获取用于把终端配色与整体主题统一。完成主题与插件配置后重启终端即可看到最终效果。下图展示了配置完成后的终端——多标签页布局、样式化输出toiletASCII 艺术以及工具类应用的共存体现了开发工作站的个性化与生产力结合小结Linux 章节收官到此90DaysOfDevOps 的 Linux 部分正式收官。整个过程的要点可总结为一条主线从默认 bash 出发 → 通过 dotfiles 理解配置机制 → 安装 Zsh 并切换默认 Shell → 用 Oh My Zsh 管理主题与插件 → 用 Gnome 扩展与 Dracula 主题统一桌面观感 → 用 apt 补齐开发工具链。这套流程与仓库中的 VAGRANTFILE、create-user.sh 配合可在任意 Ubuntu 桌面上快速复现。正如原文档所强调的主动研究与大量练习是巩固知识的唯一途径自己动手获得的经验往往最难忘。下一站将开启 7 天网络专题为 DevOps 场景建立网络基础认知见 day21.md。赞分享文档/教程【免费下载链接】90DaysOfDevOpsThis repository started out as a learning in public project for myself and has now become a structured learning map for many in the community. We have 3 years under our belt covering all things DevOps, including Principles, Processes, Tooling and Use Cases surrounding this vast topic.项目地址https://gitcode.com/gh_mirrors/90/90DaysOfDevOps点击查看免费下载相关推荐90DaysOfDevOps 第 20 天用 dotfiles、ZSH 与 Oh My ZSH 打造个性化 Linux 开发工作站90DaysOfDevOps 第 20 天用 dotfiles、ZSH 与 Oh My ZSH 打造个性化 Linux 开发工作站 本文是 90DaysOfD文档/教程90DaysOfDevOps 第 20 天Linux 开发工作站配置——用 dotfiles、ZSH、Oh My Zsh 与 Dracula 主题打造高效终端90DaysOfDevOps 第 20 天Linux 开发工作站配置——用 dotfiles、ZSH、Oh My Zsh 与 Dracula 主题打造高效终端文档/教程90DaysOfDevOps Day 20Linux 开发者工作站美化实战——dotfiles、ZSH 与 Oh My ZSH 打造高效终端环境90DaysOfDevOps Day 20Linux 开发者工作站美化实战——dotfiles、ZSH 与 Oh My ZSH 打造高效终端环境 本篇是 90文档/教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考