From eaa46993a6f53a0fa66712f4192bf75807a9b48e Mon Sep 17 00:00:00 2001 From: Vadim Troshchinskiy Date: Tue, 5 Nov 2024 23:29:27 +0100 Subject: [PATCH] Add more documentation --- gitlib/README.md | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/gitlib/README.md b/gitlib/README.md index b92ecf4..0e6ea48 100644 --- a/gitlib/README.md +++ b/gitlib/README.md @@ -18,7 +18,7 @@ Para instalar dependencias de python se usa el modulo venv (https://docs.python. ## Distribuciones antiguas (18.04) - sudo apt install -y python3.8 python3.8-venv python3.8-dev python3-venv libarchive-dev libblkid-dev pkg-config libacl1-dev + sudo apt install -y python3 libarchive-dev libblkid-dev pkg-config libacl1-dev python3.8 -m venv venvog . venvog/bin/activate python3.8 -m pip install --upgrade pip @@ -40,7 +40,7 @@ Los comandos que comienzan por `--test` existen para hacer pruebas internas, y e **Nota:** Preferiblemente ejecutar como `root`, ya que `sudo` borra los cambios a las variables de entorno realizadas por venv. El resultado probable es un error de falta de módulos de Python, o un fallo del programa por usar dependencias demasiado antiguas. # . venv/bin/activate - # ./opengnsys_git_installer.py + # ./gitlib.py ### Inicializar un repositorio: @@ -64,6 +64,23 @@ Esto clona un repositorio del ogrepository. El destino es un dispositivo físico `--repo` es el nombre de repositorio contenido en ogrepository. +# Consideraciones especiales para Windows + +## Clonación + +* Windows debe haber sido apagado completamente, sin hibernar. Ver https://learn.microsoft.com/en-us/troubleshoot/windows-client/setup-upgrade-and-drivers/disable-and-re-enable-hibernation +* Windows debe haber sido apagado limpiamente, usando "Apagar sistema". Es posible que gitlib no pueda montar un disco de un sistema apagado incorrectamente. En ese caso hay que volver a iniciar Windows, y apagarlo. +* No se puede usar cifrado de disco (Bitlocker) + +## Restauración + +Windows usa una estructura llamada BCD (https://learn.microsoft.com/en-us/windows-hardware/manufacture/desktop/bcd-system-store-settings-for-uefi?view=windows-11) para almacenar la configuración de arranque. + +La estructura puede variar dependiendo en que maquina se despliegue, por esto gitlib soporta almacenar internamente +multiples versiones del BCD, y elegir el correspondiente a una maquina especifica. + + + # Documentación Se puede generar documentación de Python con una utilidad como pdoc3 (hay multiples alternativas posibles): @@ -97,3 +114,9 @@ Existen estos archivos: * `metadata.json`: Metadatos generales acerca del repositorio * `special_files.jsonl`: Archivos especiales como sockets * `xattrs.jsonl`: Atributos extendidos +* `renamed.jsonl`: Archivos renombrados para no interferir con Git +* `unix_permissions.jsonl`: Permisos UNIX (Git no los almacena exactamente) +* `ntfs_secaudit.txt`: Datos de seguridad de NTFS +* `efi_data`: Copia de la partición EFI (ESP) +* `efi_data.(id)`: Copia de la partición EFI correspondiente a un equipo especifico. +* `efi_data.(nombre)`: Copia de la partición EFI correspondiente a un nombre especificado por el administrador.