Chaque instantané de sauvegarde est stocké dans un répertoire horodaté (par exemple, YYYYMMDDTHHMMSS
) sous le chemin d’accès de la cible de sauvegarde (par exemple, /data/backup/data
). Les instantanés comprennent l’exportation complète des principaux magasins de données. Les référentiels Git, GitHub Pages et autres composants sont stockés à l’aide de liens physiques afin d’optimiser le stockage et de permettre des restaurations ponctuelles efficaces.
Remarque
Si vous archivez des instantanés de sauvegarde, vous devez conserver les liens symboliques. Le déréférencement ou l’exclusion des liens symboliques, ou encore le stockage d’instantanés sur un système de fichiers qui ne les prend pas en charge, peuvent entraîner des échecs de restauration.
Le lien symbolique current
renvoie toujours vers le répertoire du dernier instantané réussi.
Contenu d’un répertoire d’instantanés (<SNAPSHOT_TIMESTAMP>/
)
Chaque répertoire d’instantanés contient des fichiers et des dossiers pour la configuration, les magasins de données et les métadonnées opérationnelles de votre instance. Vous trouverez ci-dessous une structure type.
Paramètres et configuration
settings.json # Main appliance settings
manage-password # Management console password hash
uuid # Appliance UUID
version # GHES version at backup time
strategy # Backup strategy used (e.g., rsync, cluster)
cluster.conf # Cluster configuration (if applicable)
Exportations de magasins de données
mysql.sql.gz # Logical database dump (default) OR
xtrabackup_checkpoints # Binary backup metadata (if binary backups used)
xtrabackup-export.log # Log snippet from binary backup
mysql-binary-backup-sentinel # Indicates binary backup type
# May include other files related to logical or binary MySQL backups
Redis
redis.rdb # Redis database dump
Elasticsearch
audit-log/ # Audit log indices (uses hard links)
elasticsearch/ # Search indices (if not skipped, uses hard links)
Données GitHub
repositories/ # Git repositories (uses hard links)
pages/ # GitHub Pages content (uses hard links)
storage/ # Alambic-managed storage: avatars, attachments, etc. (uses hard links)
GitHub Actions et CI/CD
actions/ # GitHub Actions blob storage (uses hard links)
mssql/ # MS SQL Server backups (.bak, .diff, .log) (uses hard links)
minio/ # MinIO object storage (if Actions or Packages enabled, uses hard links)
Secrets et informations d’identification
authorized-keys.json # SSH keys authorized for administrative access
github-secrets.tar # Tarball of various exported instance secrets
saml-keys.tar # SAML IdP keys (if applicable)
ssh-host-keys.tar # SSH host keys
ssl-ca-certificates.tar # Custom CA certificates (if applicable)
# Includes other internal secrets and keys necessary for instance operation.
Hooks et données de livraison
git-hooks/ # Custom Git hooks (uses hard links)
hookshot/ # Webhook delivery data (uses hard links)
Divers
enterprise.ghl # License file (often restored separately)
live-upgrade/ # Data for live upgrades or migrations (uses hard links)
benchmarks/ # Performance logs for backup steps
Contenu du répertoire racine de sauvegarde (/data/backup/data/
)
Le répertoire racine de sauvegarde comprend tous les dossiers d’instantanés et les métadonnées utilisés pour le suivi des sauvegardes incrémentielles et leur suppression :
YYYYMMDDTHHMMSS/ # Snapshot directory (one per backup)
... # Other snapshot directories
current # Symlink to the most recent successful snapshot
inc_full_backup # Tracks base for MySQL incremental backups
inc_snapshot_data # Tracks incremental MySQL snapshots
prune_* # Temporary directories marked for deletion
inc_previous_* # Renamed snapshot directories during pruning cycle