Cómo administrar /etc. con control de versiones usando etckeeper en Linux
- 3451
- 655
- Sra. Lorena Sedillo
En la estructura de directorio de Unix/Linux, el /etc
El directorio es donde se encuentran los archivos y directorios de configuración de todo el sistema específicos del host; Es una ubicación central para todos los archivos de configuración de todo el sistema. Un archivo de configuración es un archivo local utilizado para controlar cómo funciona un programa: debe ser estático y no puede ser un binario ejecutable.
Para realizar un seguimiento de los cambios en los archivos de configuración del sistema, los administradores del sistema normalmente hacen copias (o copias de seguridad) de los archivos de configuración antes de modificarlos. De esa manera, si modificaron directamente el archivo original y cometieron un error, pueden volver a la copia guardada.
ETCHOFEEKE es una colección de herramientas simple, fácil de usar, modular y configurable /etc
ser administrado usando el control de la versión. Le permite almacenar cambios en el /etc
directorio en un sistema de control de versiones (VCS) como git (que es el VCS preferido), Mercurial, Bazaar o Darcs Repository. Permitiéndole usar GIT para revisar o revertir los cambios que se hicieron a /etc
, En caso de un error.
Sus otras características son:
- Admite la integración con los administradores de paquetes frontales que incluyen APT, YUM, DNF, Zypper y Pacman-G2 Para confirmar automáticamente los cambios realizados a
/etc
Durante las actualizaciones de paquetes. - rastrea los metadatos del archivo (como los permisos de archivo) que Git no suele admitir, pero eso es importante para
/etc
, y - Incluye tanto un trabajo cron como un system temporizador, que cada uno puede cometer cambios en los cambios a
/etc
automáticamente una vez al día.
Cómo instalar etckeeper en Linux
ETCHOFEEKE está disponible en Debian, Ubuntu, Fedora, y otras distribuciones de Linux. Para instalarlo, use su Administrador de paquetes predeterminado como se muestra. Tenga en cuenta que este comando también se instalará git y algunos otros paquetes como dependencias.
$ sudo apt-get instalación etckeeper #ubuntu y debian #apt-get instalación etckeeper #debian como usuario root #dnf instalación etckeeper #fedora 22+ $ sudo zypper instalación etcukeeper #opensuse 15
En Enterprise Linux distribuciones como Redhat Enterprise Linux (Rhel), Cento y otros, necesitas agregar el Repositorio de epel Antes de instalarlo como se muestra.
# yum instalación Epel-liberase # yum instalación etckeeper
Configuración de Etckeeper en Linux
Una vez que haya instalado ETCHOFEEKE Como se muestra arriba, debe configurar cómo funcionará y su archivo de configuración principal es /etc/etckeeper/etckeeper.confusión. Para abrirlo para editar, use cualquiera de sus editores basados en texto favoritos como se muestra.
# vim/etc/etckeeper/etckeeper.conf o $ sudo nano/etc/etckeeper/etckeeper.confusión
El archivo contiene varias opciones de configuración (cada una con una descripción de uso pequeña y clara) que le permiten establecer el sistema de control de versiones (VCS) para usar, pase las opciones para VSC; para habilitar o deshabilitar el temporizador, habilitar o deshabilitar la advertencia especial de archivos, habilitar o deshabilitar, etc. Comprometer los cambios existentes a /etc
Antes de la instalación.
Además, puede establecer el Administrador de paquetes de nivel frontal o superior (como APT, YUM, DNF, etc.) y Administrador de paquetes subyacentes o de bajo nivel (DPKG, RPM, etc.) trabajar con ETCHOFEEKE.
Si ha realizado algún cambio en el archivo, guárdelo y cierre el archivo.
Inicializar el repositorio de git y realizar la confirmación inicial
Ahora que ha configurado etckeeper, debe inicializar el Git repositorio para comenzar a rastrear cualquier cambio en su /etc
Directorio de la siguiente manera. Solo puedes correr ETCHOFEEKE con permisos de raíz, de lo contrario usar sudo.
$ cd $ sudo etckeeper initInicializar el repositorio de git en /etc
A continuación, pasa por ETCHOFEEKE Para poder trabajar automáticamente, debe ejecutar el primer compromiso para comenzar a realizar un seguimiento de los cambios en /etc
, como sigue.
$ sudo etckeeper compromiso "primer compromiso"Ejecutar Git Commit para rastrear los cambios en el sistema de archivos /etc
Hacer cambios y comprometer
Después de ejecutar su primer commit, ETCHOFEEKE a través de git ahora está rastreando cualquier cambio en el /etc
directorio. Ahora intente hacer cualquier cambio en cualquiera de los archivos de configuración.
Luego ejecute el siguiente comando para mostrar archivos que han cambiado desde la última confirmación; Este comando esencialmente muestra los cambios en /etc
no escenificado para comprometer, donde VCS significa git y "estado"Es un submand Git.
$ sudo etckeeper vCSVer cambios en /ETC Files System
Luego comete los cambios recientes de la siguiente manera.
$ sudo etckeeper confirm "cambió de hosts y archivos de configuración phpmyadmin"Cometer nuevos cambios
Ver registros de confirmación
Para ver un registro de todos los compromisos (la identificación y el comentario de cada comandante), puede ejecutar el siguiente comando.
$ sudo etckeeper vcs logVer Historia de cometominación de git
También puede mostrar los detalles de una confirmación, simplemente especifique el cometer una identificación (Los primeros caracteres pueden funcionar) como se muestra.:
$ sudo etckeeper vcs show a153b68479d0c440cc42c228cbbbb6984095f322d o $ sudo etckeeper vcs show a153b6847Ver detalles de confirmación
Además, puede ver la diferencia entre dos compromisos como se muestra. Esto es especialmente útil si desea revocar los cambios como se muestra en la siguiente sección. Puede usar las teclas de flecha para desplazarse hacia arriba y hacia abajo o hacia la izquierda y hacia la derecha, y dejar de hacerlo presionando Q
.
$ sudo etckeeper vcs show 704cc56 a153b6847
Cómo revocar los cambios
La esencia de ETCHOFEEKE es ayudarlo a rastrear los cambios en su /etc
directorio e invierta los cambios cuando sea necesario. Suponiendo que te das cuenta de que cometiste algunos errores en el /etc/nginx/nginx.confusión Cuando lo editó por última vez y el servicio NGINX no se puede reiniciar debido a los errores en la estructura de configuración, puede volver a la copia guardada en una confirmación específica (e.gramo 704cc56) donde cree que la configuración era correcta de la siguiente manera.
$ sudo etckeeper vcs checkout 704cc56/etc/nginx/nginx.confusión
Alternativamente, puede cancelar todos los cambios y volver a versiones de todos los archivos en /etc
(y sus subdirectorios) almacenados en una confirmación específica.
$ sudo etckeeper vcs checkout 704cc56
Cómo permitir que los cambios se cometan automáticamente
ETCHOFEEKE también se envía con un servicio y unidades de temporizador para System, incluido en el paquete. Lanzar "Autocomitar"De cambios en el /etc
directorio, simplemente comience ETCHOFEEKE.Temporizador
Unidad por ahora y verifique si está en funcionamiento, de la siguiente manera.
$ sudo systemctl inicio etckeeper.Temporizante $ sudo systemctl estado etckeeper.TemporizadorIniciar la unidad de temporizador de etckeeper
Y habilitarlo para inicio automático en el arranque del sistema como se muestra.
$ sudo systemctl habilita etckeeper.Temporizador
Para obtener más información, consulte la página del Proyecto Etckeeper: https: // etckeeper.ramificable.com/.
Conclusión
En esta guía, hemos demostrado cómo instalar y usar ETCHOFEEKE Para los cambios de la tienda en el /etc
directorio en un sistema de control de versiones (VCS) como git y revisar o revertir los cambios que se hicieron a /etc
, donde sea necesario. Comparta sus pensamientos o haga preguntas sobre etckeeper a través del formulario de comentarios a continuación.
- « Cómo enumerar todos los servicios en ejecución en Systemd en Linux
- Cómo instalar Zabbix en RHEL 8 »