Come cambio il mio nome utente?

278

Qualche tempo fa, quando ho installato Ubuntu, ho scelto un nome utente piuttosto stupido per il mio account che non voglio più utilizzare.

Come posso cambiare questo (incluso il nome della mia home directory e il nome nel terminale) senza perdere le impostazioni per le applicazioni?
Come mantenere le autorizzazioni e le mie chiavi per varie autorizzazioni (ad esempio e-mail, SSH, GPG e altro)?
Quali impostazioni potrebbero andare perse se avessi cambiato il mio nome utente?

    
posta Takkat 08.04.2011 - 10:25

7 risposte

276

I sistemi operativi di tipo Unix separano il nome utente dall'identità dell'utente, quindi puoi tranquillamente cambiare il nome senza influire sull'ID. Tutte le autorizzazioni, i file, ecc. Sono legati alla tua identità (uid), non al tuo nome utente.

Per gestire ogni aspetto del database utente, si utilizza lo strumento usermod .

Per cambiare nome utente (probabilmente è meglio farlo senza essere loggato):

sudo usermod -l newUsername oldUsername

Questo, tuttavia, non rinomina la cartella Inizio.

Per cambiare la cartella home, usa

sudo usermod -d /home/newHomeDir -m newUsername

dopo aver cambiato il nome utente.

Ad esempio, puoi uscire, passare a una console ( Ctrl + Alt + F1 ) e sudo su - a diventare vero root (al contrario di sudo -s , dove $ HOME è ancora / home / yourname.) Forse devi anche prima eliminare alcuni processi ancora in esecuzione da questo utente. Per fare ciò, inserisci ps -u username , cerca il PID corrispondente e uccidili di kill PID-number .

Aggiornamento: come detto, alcuni file possono fare riferimento alla tua vecchia home directory. Puoi mantenere un link simbolico per la compatibilità con le versioni precedenti, e g ln -s /home/newname /home/oldname oppure puoi modificare il contenuto del file con sed -i.bak 's/*oldname*/*newname*/g' *list of files* Crea un backup per ogni file con estensione .bak.

Alcune informazioni aggiuntive per utenti non esperti come me:
Poiché ho solo un account utente (amministratore), non mi permette di cambiare il nome utente ("hai già effettuato l'accesso" era la risposta in TTY1 ( Ctrl + Alt + F1 ). Per aggirare questo:

  1. Accedi con le tue vecchie credenziali e aggiungi un nuovo utente, ad es. "temporaneo" in TTY1:

    sudo adduser temporary
    

    imposta la password.

  2. Permetti all'utente temporaneo di eseguire sudo aggiungendo l'utente al gruppo sudo:

    sudo adduser temporary sudo
    
  3. Esci con il comando exit .
  4. Ritorna a tty1: Accedi con l'account utente "temporaneo" e la password. Cambia il tuo nome utente e la cartella come menzionato sopra. exit (fino a quando non viene visualizzato il prompt di accesso)
  5. Tornare a TTY7 ( Ctrl + Alt + F7 ) per accedere alla schermata del desktop normale / GUI e vedere se funziona.
  6. Elimina utente e cartella temporanei:

    sudo deluser temporary
    sudo rm -r /home/temporary
    
risposta data Egil 08.04.2011 - 10:48
95

Per mettere insieme tutto:

  1. Nella schermata iniziale premi Ctrl + Alt + F1 .
  2. Accedi utilizzando il tuo nome utente e password.
  3. Imposta una password per l'account "root".

    sudo passwd root
    
  4. Esci.

    exit
    
  5. Accedi utilizzando l'account "root" e la password che hai precedentemente impostato.

  6. Cambia il nome utente e la cartella home con il nuovo nome che desideri.

    usermod -l <newname> -d /home/<newname> -m <oldname>
    
  7. Cambia il nome del gruppo nel nuovo nome che desideri.

    groupmod -n <newgroup> <oldgroup>
    
  8. Blocca l'account "root".

    passwd -l root
    
  9. Se si stesse utilizzando ecryptfs (directory home crittografata). Monta la tua directory criptata usando ecryptfs-recover-private e modifica <mountpoint>/.ecryptfs/Private.mnt per riflettere la tua nuova directory home.

  10. Esci.

    exit
    
  11. Premi Ctrl + Alt + F7 .

E ora puoi accedere utilizzando il tuo nuovo nome utente.

    
risposta data Valentin Uveges 06.07.2013 - 11:43
24

Riavvia in modalità di ripristino e vai alla shell del prompt di root ("Drop to root shell prompt")

Prima rimontare la radice

mount -o remount,rw /

Per cambiare il nome utente e il nome della cartella home,

usermod -l <newname> -d /home/<newname> -m <oldname>

Per nome del gruppo,

groupmod -n <newgroup> <oldgroup>
    
risposta data karthick87 08.04.2011 - 11:23
10

(Utilizzo di Ubuntu 13.10, 14.04, 16.04) Fare clic sull'icona "Impostazioni di sistema". Quindi fare clic su "Account utente". Il tuo account amministratore dovrebbe essere visualizzato. Clicca sul pulsante "Unlock". Inserisci la tua password utente come richiesto per consentire le modifiche al tuo account. Una volta sbloccato, puoi fare clic sul tuo vecchio nome utente che desideri modificare e digitare un nuovo nome utente per sostituirlo. Dopo aver digitato il nuovo nome, fai clic sul pulsante "Blocca" per rendere permanente la modifica. Riavvia Ubuntu.

    
risposta data Chicodoodoo 08.07.2014 - 00:45
3

Quando ricevi usermod: can't change /etc/password , esegui i seguenti comandi:

Nella console di ripristino root eseguire:

mount -o remount,rw /

Quindi rieseguire:

usermod -l <newname> -d /home/<newname> -m <oldname>
    
risposta data user1511576 30.07.2014 - 14:14
0

quando fai usermod -l <newname> -d /home/<newname> -m <oldname> otterrai % errore di co_de% per evitare ciò basta aggiungere useradd: can't change /etc/passwd al comando precedente come

sudo -- usermod -l <newname> -d /home/<newname> -m <oldname>

e

sudo --  groupmod -n <newgroup> <oldgroup>
    
risposta data Sriraj Hebbar 06.08.2013 - 08:12
-3

Poiché non tutti i PC hanno l'app usermod puoi farlo manualmente. A partire da root open /etc/passwd da modificare:

sudo vim /etc/passwd

e modifica il nome dell'utente all'inizio di una riga:

user:x:500:501:username:home/user:/bin/bash

a:

newuser:x:500:501:username:home/user:/bin/bash

quindi se hai lavorato su root accedi e se hai effettuato l'accesso a user , disconnessione e relogin.

    
risposta data Малъ Скрылевъ 16.12.2014 - 14:15

Leggi altre domande sui tag