Como configurar etckeeper


 www.onlinetis.com

etckeeper es una herramienta fantástica para gestionar los archivos de configuración en el directorio /etc de tu sistema Linux. Básicamente, utiliza un sistema de control de versiones (como Git, Mercurial, etc.) para rastrear los cambios en estos archivos, lo que te permite revertir modificaciones accidentales, ver el historial de cambios y mantener un control estricto sobre la configuración de tu sistema.

Aquí te explico cómo configurarlo, basándome principalmente en el uso de Git, que es el sistema de control de versiones más común.

1. Instalación

Lo primero es instalar etckeeper. El paquete se encuentra en los repositorios de la mayoría de las distribuciones de Linux.

  • En sistemas basados en Debian/Ubuntu:

    Bash
    sudo apt-get install etckeeper git
    
  • En sistemas basados en Arch Linux:

    Bash
    sudo pacman -S etckeeper git
    
  • En sistemas basados en RHEL/CentOS/Fedora:

    Bash
    sudo dnf install etckeeper git
    

    (o yum install si usas una versión anterior)

2. Configuración del archivo etckeeper.conf

El archivo de configuración principal de etckeeper es /etc/etckeeper/etckeeper.conf. Puedes editarlo con tu editor de texto favorito (por ejemplo, nano o vim).

Bash
sudo nano /etc/etckeeper/etckeeper.conf

Dentro de este archivo, encontrarás varias opciones que puedes ajustar:

  • VCS (Sistema de Control de Versiones): Esta es la opción más importante. Por defecto, etckeeper usa Git. Si quieres usar otro sistema, como Mercurial, subversion o darcs, debes cambiar esta línea. Por ejemplo, para usar Mercurial:

    VCS="hg"
    

    Si no lo cambias, se usará Git.

  • AVOID_DAILY_AUTOCOMMITS: Esta opción controla si etckeeper debe hacer commits automáticos diariamente. Por defecto, está en "false", lo que significa que etckeeper hará un commit automático de los cambios cada 24 horas. Si quieres desactivar esta función, cámbialo a "true".

    AVOID_DAILY_AUTOCOMMITS="true"
    

    Esto es útil si prefieres hacer los commits manualmente.

  • COMMIT_BEFORE_INSTALL y COMMIT_BEFORE_UPGRADE: Estas opciones determinan si etckeeper debe hacer un commit antes de instalar o actualizar paquetes. Es muy recomendable dejarlas en "true" para tener un punto de restauración antes de cualquier cambio en la configuración de los paquetes.

    COMMIT_BEFORE_INSTALL="true"
    COMMIT_BEFORE_UPGRADE="true"
    
  • PUSH_REMOTE: Si quieres que etckeeper suba automáticamente los cambios a un repositorio remoto (por ejemplo, en GitHub), puedes configurar esta opción con el nombre del repositorio remoto.

    PUSH_REMOTE="origin"
    

    Antes de que esto funcione, necesitas configurar el repositorio remoto usando Git.

3. Inicialización del repositorio

Una vez que hayas instalado etckeeper y configurado el archivo etckeeper.conf, necesitas inicializar el repositorio en el directorio /etc. Esto creará el primer commit con todos los archivos actuales.

Bash
sudo etckeeper init

Después de ejecutar este comando, etckeeper habrá creado un repositorio Git (.git) en el directorio /etc. Puedes verificarlo con ls -la /etc.

4. Uso de etckeeper

Una vez inicializado, etckeeper funciona de forma casi automática, pero también puedes usarlo manualmente.

  • Hacer un commit manual: Si haces un cambio en un archivo de configuración y quieres guardarlo inmediatamente, puedes hacer un commit con un mensaje descriptivo.

    Bash
    sudo etckeeper commit "Mensaje descriptivo sobre el cambio"
    
  • Ver el estado del repositorio: Para ver si hay cambios pendientes de ser guardados, puedes usar el comando de Git directamente.

    Bash
    cd /etc
    sudo git status
    
  • Ver el historial de commits: Para ver un registro de todos los cambios que se han guardado.

    Bash
    cd /etc
    sudo git log
    
  • Revertir un cambio: Si necesitas volver a una versión anterior de un archivo, puedes usar los comandos de Git. Por ejemplo, para revertir el archivo /etc/hosts al último commit:

    Bash
    cd /etc
    sudo git checkout /etc/hosts
    

    Para una reversión más avanzada, puedes usar git log para encontrar el hash del commit al que quieres volver y usar git checkout <hash> -- /ruta/del/archivo.

5. Configuración del repositorio remoto (opcional)

Si quieres hacer una copia de seguridad de tus archivos de configuración en un repositorio remoto (como GitHub o GitLab), sigue estos pasos:

  1. Crea un nuevo repositorio privado en tu servicio de Git preferido.

  2. En tu terminal, dentro del directorio /etc, añade el repositorio remoto.

    Bash
    cd /etc
    sudo git remote add origin https://github.com/tu-usuario/nombre-del-repo.git
    
  3. Sube los cambios iniciales.

    Bash
    sudo git push -u origin master
    

    (o main si tu rama principal se llama así)

Ahora, cada vez que hagas un commit, puedes subir los cambios con:

Bash
sudo git push

Y si configuraste la opción PUSH_REMOTE en etckeeper.conf, los commits automáticos también se subirán al repositorio remoto.

Resumen

  1. Instala etckeeper y git.

  2. Edita /etc/etckeeper/etckeeper.conf para ajustar las opciones, como el sistema de control de versiones o los commits automáticos.

  3. Inicializa el repositorio con sudo etckeeper init.

  4. Usa sudo etckeeper commit para guardar manualmente los cambios importantes.

  5. Opcionalmente, configura un repositorio remoto para tener una copia de seguridad en la nube.

Entradas populares de este blog

Hacking y ciberseguridad en kali linux con Fping

Hacking y ciberseguridad en kali linux con atk6-thcping6

Como utilizar Fierce en kali linux