在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
分享到:
相关推荐
/etc/hosts.allow和/etc/hosts.deny两个文件是控制远程访问设置的,通过他可以允许或者拒绝某个ip或者ip段的客户访问linux的某项服务。 比如SSH服务,我们通常只对管理员开放,那我们就可以禁用不必要的IP,而只开放...
对/home目录进行压缩备份(采用bzip2压缩),备份文件名为home.tar.bz2,比较二种工具的压缩能力 c.在/home目录下建立文件a,在/home目录下建立目录test,在/home/test目录下建立文件b(用vi编辑任意内容) d.对/...
本程序可实时监控linux下的一个目录,当目录中有新文件产生时本程序会进行简单的统计。另外把该程序写成服务chkpicd,把该程序放到/etc/init.d目录下即可,使用命令:service chkpic start/stop可控制服务开启/关闭。
chroot_list_file=/etc/vsftpd/chroot_list //一般情况下都将这个文件写在/etc/vsftpd目录下,这个文件就是设置锁定用户的一个列表文件,其中一行就代表一个用户 设置欢迎信息 dirmessage_enable=YES message_file=....
/etc/hosts.allow和/etc/hosts.deny两个文件是控制远程访问设置的,通过他可以允许或者拒绝某个ip或者ip段的客户访问linux的某项服务。 比如SSH服务,我们通常只对管理员开放,那我们就可以禁用不必要的IP,而只开放...
12、安装Linux系统对磁盘分区的要求是( ) A 至少有一个磁盘分区 B 至少有两个磁盘分区 C 至少有三个磁盘分区 D 至少有四个磁盘分区 13、下面哪个文件包含了主机名到ip地址的映射关系() A. /etc/hostname B. ...
Linux文件系统通过把i节点和文件名进行连接,当需要读取该文件时,文件系统在当前目录表中查找该文件名对应的项,由此得到该文件相........ root@xxx:#crontab prgx;在每日早晨8:00之前开机后即可自动启动crontab。...
1.掌握在Linux系统下利用命令方式实现用户和组的管理; 2.掌握利用Linux-conf进行用户和组的管理; 3.理解文件权限 4.进行系统进程管理。 二、实验内容 1. 用户的管理 创建一个新用户user01,设置其主目录为/...
第3步,配置PAM信息,在/etc/pam.d/下新建一个文件,名字为vsftpd.pam,文件内容如下: auth required pam_userdb.so db=/etc/vsftpd/vsftpd.login account required pam_userdb.so db=/etc/vsftpd/vsftpd.login 第4...
在/etc/init.d下创建文件nginx [root@localhost ~]# vim /etc/init.d/nginx 其内容参考nginx官方文档 需要注意的配置: nginx=”/usr/local/nginx/sbin/nginx” //修改成nginx执行程序的路径。 NGINX_CONF_FILE=”/...
vsftp的主目录的位置在/var/ftp下,并且是系统默认,不能更改。vsftp在通过rpm包安装好后,打开其服务并设为自动运行后,ftp就可以 提供服务了。 20.1.2 vsftp安装与启动 如果没有安装的话,通过以下方式进行安装...
对/home/stooges目录设置权限,使GID位目录(2)、所有者(7)和组(7)具有完全的读取和写入执行权限,而其他用户对该用户没有权限。 修改全局登陆脚本,使普通用户拥有一个umask设置,该设置将阻止其他人查看或...
springboot操作海康设备SDK Linux,调用海康设备我们需要用到的SDK分为Windows版本和Linux版本SDK,里面继承单一springboot项目,可以直接idea启动,控制摄像头转动,抓图等 注意:配置环境变量 进入/etc/profile下,...
Linux的默认安全设置是root不能从远程工作站登录,这使我们对Linux服 务器进行远程管理造成了不小的麻烦,/etc/securtty正是控制这一机制的关键文件,在这个配置文件的root小节中加入pts/0、pts/1 等你希望root能够...
基于嵌入式Linux系统的ETC车道控制系统研究.pdf
在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件。 前四行是用来配置crond任务运行的环境变量,第一行SHELL变量指定了系统要使用哪个shell,这里是bash,第二行PATH变量指定了系统执行命令的路径,...
vsftp的主目录的位置在/var/ftp下,并且是系统默认,不能更改。vsftp在通过rpm包安装好后,打开其服务并设为自动运行后,ftp就可以 提供服务了。 20.1.2 vsftp安装与启动 如果没有安装的话,通过以下方式进行安装。...
由于 linux操作系统的设备在系统中是以文件的形式存在,将这些文件进行分类管理以及提供和内核交互的接口,就形成一定的目录结构也就是文件系统,文件系统是为用户反映系统的一种形式,为用户提供一个检测控制系统的...
安装完毕后,在/etc/ssh目录中,会增加一个opensshd 的配置文档"sshd_config"。 启动sshd服务即可: root@fredchen:/etc/init.d# ./ssh start * Starting OpenBSD Secure Shell server sshd [ OK ] win 下...