chezmoi 离线安装包
它是什么chezmoi 是用 Go 编写的 dotfiles 管理工具,用一条命令把配置同步到新机器,用 Go template 处理多系统差异、用 age 加密私密文件
chezmoi 是用 Go 编写的 dotfiles 管理工具,用一条命令把配置同步到新机器,用 Go template 处理多系统差异、用 age 加密私密文件、用 run_onchange 脚本按变更触发装包,适合跨 macOS、Linux、Windows 统一配置的开发者与运维人员。
详细介绍
简介
chezmoi 是用 Go 编写的 dotfiles 管理工具,用来把 ~/.bashrc、~/.gitconfig 这类散落的配置文件纳入版本管理,并在多台计算机之间同步。它针对三个具体问题:多台机器配置逐渐漂移、私密文件不敢直接进仓库、换新机器后要逐项手工补齐环境。适合同时使用 macOS、Linux、Windows 的开发者,以及需要统一团队配置基线的运维人员。核心优势是用 Go template 描述机器差异、用 age 加密私密文件、用 run_onchange 脚本按变更触发软件包安装,并可与 Git、1Password、AWS Secrets Manager 等对接。
核心功能
- 单命令部署新机器:chezmoi init --apply https://github.com/... 会克隆你的 dotfiles 仓库并立即应用到当前机器。
- 用 Go template 处理机器差异:源文件只维护一份,渲染时按主机或系统输出各自内容。
- age 加密私密文件:敏感内容以密文形式存放在仓库中,不以明文形式提交。
- run_onchange_ 脚本:脚本内容或其依赖数据变化时才执行,用于自动补齐软件包。
- 密钥集成:可从 1Password、AWS Secrets Manager 等外部来源读取秘密,密钥本身不入库。
- 多包管理器统一处理:在 apt、brew、cargo 和自定义脚本中管理软件包,外部二进制走 chezmoi externals。
- .chezmoidata 数据驱动:用数据文件声明要装什么包,再由 run_onchange_ 脚本消费这份数据调用包管理器。
- 跨平台且基于 Git:同一份 dotfiles 覆盖 macOS、Linux、Windows,变更历史由 Git 版本控制记录。
使用场景
- 拿到一台新机器:执行 chezmoi init --apply 加仓库地址,一次性还原终端、Git 等配置。
- 同时使用三个操作系统:用模板抹平 macOS、Linux、Windows 的路径与配置差异,保持一份源。
- 团队统一配置基线:把共享配置放进仓库,同时保留每台机器的特定行为与覆盖项。
- 管理带凭据的配置:私密文件用 age 加密,或运行时从 1Password、AWS Secrets Manager 取值。
- 声明式补齐软件包:把包名写进 .chezmoidata,由 run_onchange_ 脚本调用 apt、brew、cargo 等完成。
- 离线或内网机器:先在有网机器上取得预编译产物,再拷贝到目标机器使用。
安装与获取步骤
- 打开官方 Install 页面 https://chezmoi.io/install/ ,页面按来源分为六类:One-line package install、One-line binary install、Download a pre-built package、Download a pre-built binary、Install from source、Verify your download。
- 有网络的机器可选 One-line package install(走系统包管理器)或 One-line binary install(一条命令取二进制)。
- 离线场景选 Download a pre-built package 或 Download a pre-built binary,在有网机器上取下预编译产物,再拷贝到目标机器。
- 需要自行编译时走 Install from source,按官方页面给出的源码构建流程操作。
- 取到文件后按 Verify your download 一节校验,具体校验方式与校验值以官方页面为准。
- 准备 dotfiles 仓库并执行 chezmoi init --apply https://github.com/用户名/仓库名,完成首次同步。
与同类方案的区别
- 相比直接用 Git 裸仓库管理 dotfiles,chezmoi 额外提供模板渲染与加密两层,能同时共享通用配置并保留机器特定行为。
- 配置同步与软件包补齐是两条线:前者由 chezmoi 的 apply 驱动,后者由 run_onchange_ 脚本按需触发,互不耦合。
- 包管理器不绑定单一生态:apt、brew、cargo 与自定义脚本可并存,外部二进制另有 chezmoi externals 承接。
- 秘密管理不自建存储:密钥来自 1Password、AWS Secrets Manager 等既有系统,仓库内只保留引用与密文。
注意事项
- 下载完成后按官方 Install 页面的 Verify your download 一节校验,具体哈希与签名信息以官方页面为准。
- 本页不给出版本号、文件大小与哈希值,这些数据一律以官方页面为准。
- 用 age 加密的文件依赖密钥解密,密钥一旦丢失内容无法恢复,需单独备份在仓库之外。
- run_onchange_ 脚本在数据变化时执行,编写前先确认其中的命令可重复运行且中途失败可恢复。
- chezmoi externals 拉取外部二进制需要网络,离线机器要提前把这些文件准备好。
- 模板渲染依赖 .chezmoidata 中声明的变量,新增机器前先补齐变量,否则渲染结果与预期不符。
- 通过 SSH 在远程机器上部署 dotfiles 而不使用 chezmoi 的需求仍在 GitHub issue #1410 讨论中,不要假设该流程已可用。
更新记录
最近更新:2026-10-10
软件参数速览
参数对比
| 项目 | chezmoi 离线安装包 |
|---|---|
| 版本 | 2.73.2 |
| 大小 | 41.0 MB |
| 平台 | win |
| 网盘 | 百度 |
历史版本
本站收录该软件的多个真实版本,可按下表选用:
| 版本 | 平台 | 大小 | 网盘 | 入口 | 官网 |
|---|---|---|---|---|---|
| 2.73.2 | win | 41.0 MB | 百度 | chezmoi 离线安装包 2.73.2(查看/下载) | —— |
下载
下载由本站收录的国内网盘提供(夸克 / 百度 / 蓝奏),国内访问快、不限速;网盘链接均经审核,如失效欢迎反馈。
常见问题
在没有网络的机器上如何拿到 chezmoi 可执行文件?
官方 Install 页面提供 Download a pre-built package 与 Download a pre-built binary 两类预编译产物,可在有网机器上取下后拷贝到目标机器;具体平台产物与校验方式以官方页面为准。
chezmoi init --apply 后面应该填什么地址?
填你存放 dotfiles 的仓库地址,例如 https://github.com/用户名/仓库名。该命令会克隆仓库并把其中的配置应用到当前机器,是官方 Quick start 给出的新机器初始化方式。
三台机器系统不同、配置内容不一致怎么办?
用 Go template 描述差异:在模板中按主机名或操作系统分支,渲染出各机器各自的最终内容,源文件只维护一份,这正是 chezmoi 处理机器差异的做法。
私密文件如何避免以明文进仓库?
chezmoi 支持用 age 加密私密文件,也可以从 1Password、AWS Secrets Manager 等外部来源读取密钥;仓库中只保留密文或引用,密钥本身不提交。
想让装包脚本只在列表变化时执行,该怎么组织?
把要装的包写进 .chezmoidata 数据文件,再用 run_onchange_ 前缀的脚本读取这份数据调用包管理器;数据不变时脚本不会重复执行。
apt、brew、cargo 混用时如何统一管理?
chezmoi 支持在 apt、brew、cargo 和自定义脚本中统一处理软件包安装,外部二进制则通过 chezmoi externals 管理,不必为每个管理器单独写一套流程。
下载的二进制怎么确认没被篡改?
官方 Install 页面列出 Verify your download 一项,按其给出的方式校验;具体哈希值与签名信息以官方页面为准,不要使用来路不明的镜像产物。
能不能不在这台机器上装 chezmoi 就把配置推过去?
GitHub issue #1410 正在讨论通过 SSH 远程部署 dotfiles 而不使用 chezmoi 的需求,该需求仍在讨论中,当前请按官方文档的常规流程操作。