Informationen zu bekannten Problemen mit GitHub Enterprise Server-Sicherungen
GitHub bietet Problemumgehungen für die folgenden Probleme, die sich auf die Sicherung oder Wiederherstellung von Daten für eine GitHub Enterprise Server-Instanz auswirken können. Weitere Informationen findest du unter „Bekannte Probleme“ in den Versionshinweisen zu GitHub Enterprise Server.
Benutzer*innen können sich nach der Wiederherstellung einer Sicherung nicht anmelden
Hinweis: Dieses bekannte Problem wurde in GitHub Enterprise Server Backup Utilities 3.8.1 behoben.
Wenn du GitHub Enterprise Server Backup Utilities 3.7.0 oder 3.8.0 verwendet hast, um eine Instanz zu sichern, die ein beliebiges Release der GitHub Enterprise Server 3.7 oder 3.8Serie ausführt, nachdem du die Sicherung auf einer neuen Instanz wiederherstellst, können sich Benutzerinnen nicht anmelden. Obwohl sich Benutzerinnen nicht anmelden können, ist die Sicherung selbst nicht betroffen, und alle Daten sind intakt.
Nachdem du eine von diesem Problem betroffene vorhandenen Sicherung wiederhergestellt hast, kannst du das Problem lösen, indem du die Konfiguration für die neue Instanz änderst.
Wiederherstellen über eine vorhandene Sicherung
Wenn du eine vorhandene Sicherung über GitHub Enterprise Server Backup Utilities 3.8.0 auf einer neuen Instanz wiederhergestellt hast und Benutzer*innen sich nicht anmelden können, musst du Konfigurationsdaten über die GitHub Enterprise Server-Quellinstanz ausgeben und die Konfiguration auf der Zielinstanz anpassen.
Um sicherzustellen, dass sich Benutzer*innen bei der neuen Zielinstanz anmelden können, stelle sicher, dass deine Umgebung die folgenden Anforderungen erfüllt.
- Die GitHub Enterprise Server-Quellinstanz muss ausgeführt werden und über SSH zugänglich sein.
- Du benötigst eine vorhandene Sicherung aus GitHub Enterprise Server Backup Utilities 3.7.0 oder 3.8.0.
- Du musst eine neue GitHub Enterprise Server-Zielinstanz bereitgestellt und die Sicherung wiederhergestellt haben. Weitere Informationen findest du unter GitHub Enterprise Server-Instanz einrichten und unter Konfigurieren von Sicherungen auf einer Instanz.
-
Stelle eine SSH-Verbindung mit der GitHub Enterprise Server-Quellinstanz her, die du gesichert hast. Wenn deine Instanz mehrere Knoten umfasst, wenn z. B. Hochverfügbarkeit oder Georeplikation konfiguriert ist, wird SSH im primären Knoten konfiguriert. Wenn du einen Cluster verwendest, kannst du SSH in einen beliebigen Knoten einfügen. Ersetze „HOSTNAME“ durch den tatsächlichen Hostnamen deiner Instanz. Weitere Informationen zum SSH-Zugriff findest du unter Auf die Verwaltungsshell (SSH) zugreifen.
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Führe den folgenden Befehl aus, um eine Liste der Entschlüsselungsschlüssel anzuzeigen.
Shell ghe-config secrets.github.encrypted-column-keying-material
ghe-config secrets.github.encrypted-column-keying-material
-
Kopiere die Ausgabe, und speichere sie an einem sicheren und temporären Speicherort.
-
Führe den folgenden Befehl aus, um eine Liste mit Verschlüsselungsschlüsseln anzuzeigen.
Shell ghe-config secrets.github.encrypted-column-current-encryption-key
ghe-config secrets.github.encrypted-column-current-encryption-key
-
Kopiere die Ausgabe, und speichere sie an einem sicheren und temporären Speicherort.
-
Stelle eine SSH-Verbindung mit der GitHub Enterprise Server-Zielinstanz her, auf der du die Sicherung wiederhergestellt hast. Ersetze „HOSTNAME“ durch den tatsächlichen Hostnamen deiner Instanz.
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Aktiviere den Wartungsmodus. Weitere Informationen findest du unter Wartungsmodus aktivieren und planen.
-
Um zu überprüfen, ob die Zielinstanz bereit für die Konfiguration ist, führe die folgenden Befehle aus . Es sollte keine Ausgabe angezeigt werden.
Shell ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
-
Führe den folgenden Befehl aus, um die Entschlüsselungsschlüssel auf der Zielinstanz zu aktualisieren. Ersetze "DECRYPTION-KEY-LIST" durch die Ausgabe aus Schritt 1.
Shell ghe-config secrets.github.encrypted-column-keying-material "DECRYPTION-KEY-LIST"
ghe-config secrets.github.encrypted-column-keying-material "DECRYPTION-KEY-LIST"
-
Führe den folgenden Befehl aus, um den Verschlüsselungsschlüssel auf der Zielinstanz zu aktualisieren. Ersetze "ENCRYPTION-KEY" durch die Ausgabe aus Schritt 4.
Shell ghe-config secrets.github.encrypted-column-current-encryption-key "ENCRYPTION-KEY"
ghe-config secrets.github.encrypted-column-current-encryption-key "ENCRYPTION-KEY"
-
Führe den folgenden Befehl aus, um die Konfiguration anzuwenden.
Shell ghe-config-apply
ghe-config-apply
-
Warte auf den Abschluss der Konfigurationsausführung.
-
Um sicherzustellen, dass die Konfiguration der Zielinstanz die Schlüssel enthält, führe die folgenden Befehle aus und vergewissere dich, dass die Ausgabe Schritt 1 und Schritt 4 entspricht.
Shell ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
ghe-config secrets.github.encrypted-column-keying-material ghe-config secrets.github.encrypted-column-current-encryption-key
-
Weise einen Benutzerin an, sich bei der Zielinstanz anzumelden. Wenn Probleme auftreten, wende dich an den GitHub Enterprise Support. Weitere Informationen findest du unter Kontaktieren des GitHub-Supports.