Etckeeper
Etckeeper — это коллекция инструментов для хранения /etc в репозитории VCS. Получает доступ к apt/yum/packman/etc для автоматического внесения изменений, выполняемых в /etc в ходе обновления пакета. Имеет модульное исполнение и широкие возможности настройки, а также несложен в использовании при наличии понимания базовых принципов работы с VCS.
Проще говоря, утилита позволяет автоматически сохранять изменения в конфигурационных файлах при помощи таких средств как git, bazaar, mercurial, darcs. Использование систем контроля версий позволяет легко отслеживать критические изменения в настройках, производить откат на предыдущие версии и анализировать работу с директорией /etc.
Установка
Установить пакет etckeeper из репозитория
Настройки
Файл конфигурации - /etc/etckeeper/etckeeper.conf
По умолчанию задаётся система контроля версий git, её можно изменить, убрав комментарии в начале.
Так же можно добавить параметры для VCS, изменив переменную *_COMMIT_OPTIONS
и задать некоторые другие параметры
Использование
После установки пакета, для инициализации репозитория используется команда
etckeeper init
После чего нужно провести первый коммит, от которого начнётся вестись слежка за изменениями
etckeeper commit "Initial commit"
Теперь после каждой установке пакета при помощи apt-get автоматически будет создаваться коммит с изменениями, которые произошли в /etc
Автоматическая загрузка на удалённый репозиторий
Периодически бывает удобно хранить /etc на удалённом репозитории, etckeeper поддерживает такой функционал. Для этого сначала нужно создать удалённый репозиторий и добавить его в SCV
su -
cd /etc/
git remote add origin *адрес удалённого репо*
После чего нужно редактировать файл настроек /etc/etckeeper/etckeeper.conf
.
В нём задать значение переменной PUSH_REMOTE="origin"
Теперь при каждом вызове etckeeper commit
автоматически будет происходить загрузка на удалённый репозиторий.