Kopieren von Linux-Benutzern und -Kennwörtern auf einen neuen Server

26

Ich migriere über einen Server auf neue Hardware. Ein Teil des Systems wird neu aufgebaut. Welche Dateien und Verzeichnisse müssen kopiert werden, damit Benutzernamen, Kennwörter, Gruppen, Dateieigentum und Dateiberechtigungen erhalten bleiben?

Ubuntu 12.04 LTS.

Mikko Ohtamaa
quelle

Antworten:

39

Beginnen mit

/etc/passwd - user account information less the encrypted passwords 
/etc/shadow - contains encrypted passwords 
/etc/group - user group information 
/etc/gshadow - - group encrypted passwords

Stellen Sie sicher, dass auch die Berechtigungen für die Dateien korrekt sind

user9517 unterstützt GoFundMonica
quelle
5
+1 von mir. Darüber habe ich mich auch gewundert /home. Im Allgemeinen befinden sich SSH-Schlüssel in den Basisverzeichnissen, sodass sie ~/.sshzumindest als Teil der Authentifizierungsinfrastruktur betrachtet werden können.
MadHatter unterstützt Monica am
2
@ MadHatter: In Wahrheit ging ich davon aus, dass das OP wissen würde, dass es die Benutzer-Home-Verzeichnisse kopieren muss, aber ich
nehme an,
2
Keine Sorge, der Autor weiß es.
Mikko Ohtamaa
2
Obwohl das oben beschriebene funktioniert, sollten Sie es auch wirklich über gshadow kopieren.
symcbean
6
Ein wichtiger Punkt: Dies setzt einen Server voraus, der nur über eine dateibasierte Authentifizierung verfügt. Für die Migration eines Servers, der z. B. LDAP oder NIS verwendet, reichen diese Dateien nicht aus, insbesondere wenn sich der Authentifizierungsserver auf demselben System befindet. Andere Subsysteme (z. B. Samba, SQL) verfügen möglicherweise auch über eigene Authentifizierungsdatenbanken.
Thkala
13

Das habe ich schon mit Gentoo Linux gemacht und kopiert:

  • /etc/passwd
  • /etc/shadow
  • /etc/group
  • /etc/gshadow

das ist es.

Wenn die Dateien auf dem anderen Computer andere Besitzer-IDs haben, können Sie sie in die Dateien in / etc / group und / etc / passwd ändern und dann die effektiven Berechtigungen wiederherstellen.

vanthome
quelle
11

Achten Sie darauf, dass Sie Systemkonten nicht löschen oder neu nummerieren, wenn Sie die in den anderen Antworten genannten Dateien kopieren. Systemdienste haben normalerweise keine festen Benutzer-IDs. Wenn Sie die Pakete in einer anderen Reihenfolge als den Originalcomputer installiert haben (was bei einer langen Lebensdauer sehr wahrscheinlich ist), werden sie in einer anderen Reihenfolge ausgeführt . Ich neige dazu, diese Dateien in einen Ordner wie / root / saved-from-old-system zu kopieren und sie manuell zu bearbeiten, um nur die Nicht-System-Accounts zu kopieren. (Es gibt wahrscheinlich ein Tool dafür, aber ich neige nicht dazu, Systeme wie dieses oft genug zu kopieren, um eine Untersuchung zu rechtfertigen.)

Paul Gear
quelle