用etckeeper来解救运维工程师
对于运维工程师来讲,etc环境是一个痛点,各种配置,各种修改,某些软件的配置关联因素过多的话,那就更加痛苦了,改完发现不对再想改回去都千难万难, 现在有一个好的解决方案,那就是用etckeeper,绝对是解救运维工程师的利器之一!
etckeeper本质上就是 git 管理 etc 版本环境的思维, 由于etc中有的文件信息较为敏感,因此,etckeeper还附带了一些工具来保证安装性。
ubuntu下的安装和使用:
1. 安装: sudo apt-get install etckeeper
2. 初始化etc git仓库: sudo etckeeper init
2.1 如果出现如下locale问题:
perl: warning: Setting locale failed. perl: warning: Please check that your locale settings:
可以通过:
安装 localepurge 管理语言文件:
sudo apt-get install localepurge
也可以通过: sudo dpkg-reconfigure localepurge 来重新设置。
又或者: sudo locale-gen zh_CN.UTF-8 en_US.UTF-8 来生成自己想要的语言
然后,locale查看一下。
另外,默认情况下终端 ssh 的时候会将本地的 locale 传到服务器中,可以通过命令指定 ssh 服务器的语言:
LC_ALL=en_US.UTF-8 ssh <host>
2.2 如果出现:
/etc/etckeeper/init.d/40vcs-init: bzr: not found
表明etckeeper安装后默认设置是使用bzr作为版本控制器,可以打开/etc/etckeeper/etckeeper.conf,修改默认的VCS为git,当然此时你应该装上了git,
然后再执行:
root@localhost:/etc# rm -rf .bzr root@localhost:/etc# rm .bzrignore
避免现有的仓库对etckeeper的执行造成影响。
然后再次etckeeper init 就可以成功了。
3. 修改 .gitignore
根据需要来修改.gitignore
4. 每次修改后使用git提交,git status; git add .; git commit -m "xxxxx"
5. 配置远程仓库,将仓库转移。
git remote add origin xxxxxxx
最重要的是,你可以自建多个分支,用于配置不同的软件,这样就可以以分支为基础库,主库上如果想配置啥,只管cherry-pick,轻松搞定各种需求。
出处: http://www.cnblogs.com/todototry/
关注语言: python、javascript(node.js)、objective-C、java、R、C++
兴趣点: 互联网、大数据技术、大数据IO瓶颈、col-oriented DB、Key-Value DB、数据挖掘、模式识别、deep learning、开发与成本管理
产品:
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架