`
vipshichg
  • 浏览: 266308 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Linux下对/etc目录进行版本控制

阅读更多
在Linux系统中,/ etc目录中包含重要与系统相关的以及应用程序的各种配置文件。特别是在服务器生产环境中,明智的做法就是对/etc目录进行定期备份。如果能对/etc目录文件及软件配置信息进行“版本控制”,让您可以跟踪配置变更,或恢复以前的配置状态,那么将是非常方便的。
在Linux中,etckeeper一个 版本内容的集合工具,特别是在/etc目录中。 etckeeper使用现有的版本控制系统(例如git, bzr, mercurial,darcs)来存储版本历史信息并保存在相应的后端资源库中。etckeeper优势是它被集成在软件包管理器中(例如:apt, yum),能对/etc目录下的软件包的安装,更新,移除进行自动提交。
在本教程中,我将介绍如何在Linux系统中使用etckeeper 对/etc目录进行版本控制。在这里,我会对etckeeper进行相关配置并使用bzr作为后端的版本控制资源库。

Install Etckeeper on Linux
安装 etckeeper和bzr(Ubuntu, Debian or Mint)
$ sudo apt-get install etckeeper bzr


$ sudo yum install etckeeper etckeeper-bzr

安装 etckeeper和bzr(Fedora, simply run)
$ sudo yum install etckeeper etckeeper-bzr


etckeeper安装后要做的第一件事是编辑它的配置文件。您也可以保留其他选项为默认值。
$ sudo vi /etc/etckeeper/etckeeper.conf

# The VCS to use.
VCS="bzr";

# Avoid etckeeper committing existing changes to /etc automatically once per day.
AVOID_DAILY_AUTOCOMMITS=1

初始化etckeeper
$ sudo etckeeper init

此时,etc目录中的所有内容已被添加到后端的bzr仓库。但是请注意,之前的内容未被提交。您需要提交手动提交,或者通过安装/升级一个软件包,如apt或yum,这时它将自动触发第一次提交。在这里,我会做一次手动提交如下。
$ sudo etckeeper commit "initial commit"

Etckeeper Examples
检查/etc目录状态
$ sudo etckeeper vcs status

显示最后一次提交版本和当前状态的差异
$ sudo etckeeper vcs diff /etc

提交当前状态
$ sudo etckeeper commit "any comment"


  
本文同时发布于J4ML
5
1
分享到:
评论
2 楼 vipshichg 2013-08-12  
tyro_sun 写道
好东西,哥mark了!博主多提交点LINUX的技术文章!


感谢支持!
1 楼 tyro_sun 2013-08-12  
好东西,哥mark了!博主多提交点LINUX的技术文章!

相关推荐

    解决Cent0S 6.7直接在/etc/resolv.conf文件下修改DNS地址重启不生效问题

    在Linux系统中,尤其是CentOS 6.7版本,配置网络连接时,有时会遇到一些问题,例如在`/etc/resolv.conf`文件中修改DNS地址后,重启系统或网络服务,这些更改不会生效。这个问题通常与网络服务的管理方式有关,特别是...

    Linux系统中账号管理最重要的两个文件:/etc/passwd和/etc/shadow

    在Linux系统中,用户管理和权限控制是至关重要的部分,而这一切的核心都离不开两个文件:`/etc/passwd` 和 `/etc/shadow`。这两个文件对于系统的正常运行至关重要,没有它们,几乎无法进行用户登录或执行与账户相关...

    linux根文件系统构建(etc目录包)

    1. 定期备份:对/etc目录进行定期备份,以防意外更改导致问题。 2. 权限管理:确保每个文件和目录都有正确的权限,防止未经授权的访问。 3. 日常检查:定期检查配置文件,确保它们与当前系统设置匹配。 4. 跟踪变更...

    解决Linux上MongoDB启动脚本错误---env: /etc/init.d/mongodb : no such file or directory

    总之,解决"env: /etc/init.d/mongodb : no such file or directory"错误需要对Linux系统管理和MongoDB的安装配置有深入了解。根据具体情况,可能需要调整启动脚本、检查系统路径、适应Systemd环境或手动创建启动...

    操作系统安全:配置etchosts.allow及etchosts.deny.docx

    /etc/hosts.allow和/etc/hosts.deny两个文件是控制远程访问设置的,通过他可以允许或者拒绝某个ip或者ip段的客户访问linux的某项服务。 比如SSH服务,我们通常只对管理员开放,那我们就可以禁用不必要的IP,而只开放...

    linux下常见文件

    系统服务的配置文件通常存放在/etc/sysconfig/目录下,比如网络服务配置文件位于/etc/sysconfig/network-scripts/下。 在邮件服务方面,/etc/postfix目录包含了Postfix邮件传输代理的各种配置文件,包括主要配置...

    linux etc/rc.d 系统启动服务详解

    在Linux操作系统中,`/etc/rc.d` 是一个非常重要的目录,它包含了系统启动时运行的各种脚本和服务配置。这个目录是基于传统的init系统的一部分,主要用于管理系统的启动、停止、重启以及服务的控制。让我们深入了解...

    etc.tar.gz

    这些文件和目录是Linux系统的核心组件,通过解压并应用到目标系统,可以实现对系统行为的精确控制和调整。对于学习者来说,了解每个文件的作用和如何修改它们是理解嵌入式Linux系统的关键步骤。同时,这个压缩包也...

    Linux /etc/network/interfaces配置接口方法

    在Linux系统中,网络接口的配置是通过编辑 `/etc/network/interfaces` 文件来完成的。这个文件主要用于设置网络接口的各种参数,如IP地址、子网掩码、默认网关等,以便于管理和控制网络连接。本文将详细介绍如何使用...

    OA.rar_../../../etc/passwd_../../etc/passwd_../etc/passwd_/etc/p

    5. **源代码管理和版本控制**:“OA”文件可能包含源代码,所以使用Git等版本控制系统进行代码版本管理、协同开发和回溯更改历史是非常重要的实践。 6. **Web应用程序安全**:OA系统作为一个Web应用,需要遵循OWASP...

    Linux 系统shell编程

    Linux系统中的Shell编程是一种强大的工具,它允许用户与操作系统进行交互,执行命令,自动化任务...通过对`/etc/shells`文件的理解,`$SHELL`变量的使用,以及掌握基本的Shell脚本语法,你可以在Linux世界中游刃有余。

    Linux基础课件用户组文件-/etc/gshadow文件

    【标题】"Linux基础课件用户组文件-/etc/gshadow文件"主要涉及的是Linux操作系统中...通过学习这门课件,用户不仅可以掌握`/etc/gshadow`的基本知识,还能提升在Linux环境下的系统管理技能,对日常运维工作大有裨益。

    blog.rar_../../../etc/passwd_../../etc/passwd_/etc/passwd_Note.h

    3. **/etc/passwd文件**:理解Linux系统的用户管理和权限控制,包括如何查看和管理`/etc/passwd`文件,以及防止恶意访问。 4. **用户隐私保护**:随着个人信息的增多,保护用户数据安全是博客系统设计时必须考虑的...

    Linux基础课件用户账户文件-/etc/shadow文件

    然而,出于安全考虑,自Linux的Shadow Suite引入以来,明文密码被移动到了`/etc/shadow`文件中,使得`/etc/passwd`文件对所有用户可读,但`/etc/shadow`仅对管理员(root)可见。 其次,`/etc/shadow`文件的结构。...

    etc.tar.gz-Linux下etc配置文件目录样例

    在Linux操作系统中,`etc`目录是一个至关重要的部分,它包含了系统级别的配置文件和目录。`etc`在英文中是"etcetera"的缩写,意为"等等",在Linux世界里,它代表着系统运行所需的众多配置选项。这个目录下的文件用于...

    Blog.rar_../../../etc/passwd_../etc/passwd_/etc/passwd_java博客_博客

    标题中的"Blog.rar_../../../etc/passwd_../etc/passwd_/etc/passwd_java博客_博客"提到了几个关键点:一个使用Java制作的博客网站,以及涉及到Linux系统中`/etc/passwd`文件的路径。这暗示了可能在讨论关于安全性...

    exam_jsp.zip_../../../etc/passwd_../../etc/passwd_../etc/passwd_

    目录遍历攻击是黑客利用Web应用程序的漏洞,尝试访问超出他们权限范围的文件或目录,例如这里的"/etc/passwd"文件,它是Unix/Linux系统中存储用户账户信息的重要文件。 描述中提到的"JSP在线考试系统"是一个基于B/S...

    linux init.d目录理解

    在早期的 Linux 发行版中,系统服务的启动和停止通过 `/etc/rc.d/init.d/` 目录下的脚本来控制。这些脚本相当于 Windows 操作系统中的注册表条目,在系统启动时会执行特定的脚本。为了便于管理和组织这些脚本,引入...

    linux里etc下的文件解析

    ### Linux里/etc下的文件解析 在Linux系统中,`/etc`目录是非常...综上所述,`/etc`目录下的文件对于Linux系统的正常运行至关重要。了解这些文件的功能和用法不仅有助于更好地管理系统,还能帮助解决遇到的各种问题。

    Linux基础课件用户组文件-/etc/group文件共9

    了解并能操作/etc/group文件是Linux系统管理的基本技能,这对于设置权限、控制访问以及实现多用户环境下的协作至关重要。在学习过程中,你将学习到如何创建、删除和修改用户组,以及如何调整用户与组之间的关系。...

Global site tag (gtag.js) - Google Analytics