it-swarm.com.de

Richtige Methode zum Ändern des Benutzernamens in Ubuntu oder Linux

Ich benutze Ubuntu 12.04 und habe einige Anpassungen vorgenommen. Ich werde es auch zu einer neuen ISO machen, die Ubuntu angepasst ist.

Ich möchte fragen, wie ich meinen Benutzernamen ändern kann. In meinem aktuellen Home-Ordner gibt es viele Konfigurationen. Ich möchte mich also nicht damit herumschlagen, den Benutzernamen zu ändern.

Gibt es dafür Best Practices oder Workflows?

26
CorpusCallosum

Der wirklich richtige Weg? Angenommen, Sie möchten den Benutzer 'peter' in 'paul' ändern.

groupadd paul
usermod -d /home/paul -m -g paul -l paul peter

Dadurch werden der Name, die Gruppe, das Ausgangsverzeichnis sowie der Besitz und die Gruppe dieses Verzeichnisses zusammen mit allen Dateien in die neuen geändert. Sie haben einen Benutzer, der nicht von der ursprünglichen Erstellung als "Paul" zu unterscheiden ist.

Eine andere Möglichkeit wäre, die ersten Felder von Peters Einträgen im /etc/passwd und /etc/shadow Dateien. Ändern Sie dann jedes Vorkommen von 'peter' in 'paul' in /etc/group. Benennen Sie dann das Home-Verzeichnis von /home/peter bis /home/paul. Und dann chown -R paul /home/peter, um die Eigentümer und Gruppen des Verzeichnisses und alle Dateien und Verzeichnisse darunter abzurufen, um die neuen zu haben.

28
Steve Bergman

Ich würde empfehlen, nicht zu versuchen, den Namen eines Benutzers zu ändern. Dies ist im Allgemeinen mit Problemen verbunden, wenn der Name des Benutzers in Konfigurationsdateien in Form des Home-Verzeichnisses des Benutzers /home/<username> Statisch referenziert wird. Diese werden fast nie generisch geschrieben, daher ist es normalerweise am besten, einfach einen neuen Benutzernamen zu erstellen und dann die Dateien und Daten des Benutzers auf das neue Konto zu migrieren.

5
slm

Du kannst es ändern; siehe Wie ändere ich meinen Benutzernamen? auf AskUbuntu. Diese Anweisungen haben bei mir gut funktioniert. Um Ihre Konfiguration beizubehalten, erstellen Sie einfach einen Symlink für Ihr altes Home-Verzeichnis, wie in den Antworten auf diese Frage beschrieben.

3
z0r

Verwenden Sie usermod, um Benutzername und Home-Verzeichnis zu ändern. Ändern Sie Benutzer Peter in Paul:

usermod -l paul peter
grep paul /etc/passwd /etc/shadow       # check

ändern Sie das Ausgangsverzeichnis und verschieben Sie alles dorthin (falls erforderlich erstellt).

usermod -m -d /home/paul paul
grep paul /etc/passwd               # check

Ändern Sie Gruppenname, aber verwenden Sie nicht usermod, da Sie zuerst eine andere Gruppe erstellen müssen (z. B. GID 1001), und obwohl die GID für alles im Verzeichnis $ HOME aktualisiert wird, werden Sie dies tun müssen die Dateien und Verzeichnisse an anderer Stelle mit dem alten Gruppenbesitz suchen und ändern. Ändern Sie stattdessen einfach den Gruppennamen manuell.

nano /etc/group

und ändern

peter:x:1000:

zu

paul:x:1000:

Sie müssen die Dateinamen ändern, die von cron, at und andere Dienste verwendet werden, die den Benutzernamen anstelle der UID verwenden. Verwenden

find /var -name "*peter*"

um diese Dateien zu finden.

Sie müssen auch die Konfigurationsdateien ändern, die von einigen Diensten verwendet werden, z. B. von E-Mail-Bearbeitungsanwendungen.

Schließlich muss scripts mit "/ home/peter /" bearbeitet werden. Ändern Sie das Vorkommen von "/ home/peter /" in "$ HOME".

Es ist nicht viel Arbeit, Benutzeridentitäten zu ändern, Sie müssen nur gründlich sein.

3
Duane

Versuchen Sie den Befehl sermod .

exec Sudo su
usermod --login newname oldname
3
dgmltn