¿Cómo cambio mi nombre de usuario?

262

Hace algún tiempo, cuando instalé Ubuntu, elegí un nombre de usuario bastante estúpido para mi cuenta que ya no quiero usar.

¿Cómo puedo cambiar esto (incluido el nombre de mi directorio personal y el nombre en el terminal) sin perder la configuración de las aplicaciones?
¿Cómo guardo los permisos y mis claves para varias autenticaciones (por ejemplo, correo electrónico, SSH, GPG y más)?
¿Qué configuración podría perderse si cambiara mi nombre de usuario?

    
pregunta Takkat 08.04.2011 - 10:25

7 respuestas

256

Los sistemas operativos tipo Unix desacoplan el nombre de usuario de la identidad del usuario, por lo que puede cambiar el nombre sin afectar la ID. Todos los permisos, archivos, etc. están relacionados con su identidad (uid), no con su nombre de usuario.

Para administrar todos los aspectos de la base de datos de usuarios, usa la herramienta usermod .

Para cambiar el nombre de usuario (probablemente sea mejor hacerlo sin haber iniciado sesión):

sudo usermod -l newUsername oldUsername

Sin embargo, esto no cambia el nombre de la carpeta de inicio.

Para cambiar la carpeta de inicio, use

sudo usermod -d /home/newHomeDir -m newUsername

después de haber cambiado el nombre de usuario.

Por ejemplo, puede cerrar la sesión, soltar en una consola ( Ctrl + Alt + F1 ) y sudo su - para convertirse en verdadero root (a diferencia de sudo -s , donde $ HOME sigue siendo / home / sunombre). Tal vez también tenga que matar algunos procesos en ejecución de este usuario primero. Para hacerlo, ingrese ps -u username , busque el PID correspondiente y elimínelos por kill PID-number .

Actualización: como se mencionó en el acuerdo, algunos archivos pueden hacer referencia a su directorio principal anterior. Puede mantener un enlace simbólico para compatibilidad con versiones anteriores, e g ln -s /home/newname /home/oldname o puede cambiar el contenido del archivo con sed -i.bak 's/*oldname*/*newname*/g' *list of files* Crea una copia de seguridad para cada archivo con una extensión .bak.

Alguna información adicional para usuarios no tan experimentados como yo:
Como solo tengo UNA cuenta de usuario (administrador), no me permitió cambiar el nombre de usuario ("ya has iniciado sesión" fue la respuesta en TTY1 ( Ctrl + Alt + F1 ). Para evitar esto:

  1. Inicie sesión con sus credenciales anteriores y agregue un nuevo usuario, p. "temporal" en TTY1:

    sudo adduser temporary
    

    establecer la contraseña.

  2. Permita que el usuario temporal ejecute sudo agregando el usuario al grupo sudo:

    sudo adduser temporary sudo
    
  3. Cerrar sesión con el comando exit .
  4. Volver a tty1: inicie sesión con la cuenta de usuario y contraseña 'temporales'. Cambie su nombre de usuario y carpeta como se mencionó anteriormente. exit (hasta que obtenga el mensaje de inicio de sesión)
  5. Regrese a TTY7 ( Ctrl + Alt + F7 ) para iniciar sesión en la GUI / pantalla de escritorio normal y vea si esto funciona.
  6. Eliminar usuario y carpeta temporales:

    sudo deluser temporary
    sudo rm -r /home/temporary
    
respondido por el Egil 08.04.2011 - 10:48
90

Para ponerlo todo junto:

  1. En la pantalla de inicio, presione Ctrl + Alt + F1 .
  2. Inicie sesión con su nombre de usuario y contraseña.
  3. Establezca una contraseña para la cuenta "raíz".

    sudo passwd root
    
  4. Cerrar sesión.

    exit
    
  5. Inicie sesión con la cuenta "raíz" y la contraseña que estableció previamente.

  6. Cambia el nombre de usuario y la carpeta de inicio al nuevo nombre que quieras.

    usermod -l <newname> -d /home/<newname> -m <oldname>
    
  7. Cambia el nombre del grupo al nuevo nombre que quieras.

    groupmod -n <newgroup> <oldgroup>
    
  8. Bloquea la cuenta "raíz".

    passwd -l root
    
  9. Si usaba ecryptfs (directorio de inicio encriptado). Monta tu directorio encriptado usando ecryptfs-recover-private y edita <mountpoint>/.ecryptfs/Private.mnt para reflejar tu nuevo directorio de inicio.

  10. Cerrar sesión.

    exit
    
  11. Presione Ctrl + Alt + F7 .

Y ahora puede iniciar sesión con su nuevo nombre de usuario.

    
respondido por el Valentin Uveges 06.07.2013 - 11:43
24

Reinicie en modo de recuperación y acceda al shell de la solicitud raíz ("Indicar al shell de root")

Primero vuelva a montar la raíz

mount -o remount,rw /

Para cambiar el nombre de usuario y el nombre de la carpeta principal,

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

Para el nombre del grupo,

groupmod -n <newgroup> <oldgroup>
    
respondido por el karthick87 08.04.2011 - 11:23
10

(Usando Ubuntu 13.10, 14.04, 16.04) Haga clic en el icono "Configuración del sistema". Luego haga clic en "Cuentas de usuario". Su cuenta de administrador debe ser mostrada. Haga clic en el botón "Desbloquear". Ingrese su contraseña de usuario según lo solicitado para permitir cambios en su cuenta. Una vez desbloqueado, puede hacer clic en su antiguo nombre de usuario que desea cambiar y escribir un nuevo nombre de usuario para reemplazarlo. Cuando haya ingresado el nuevo nombre, haga clic en el botón "Bloquear" para que el cambio sea permanente. Reinicie Ubuntu.

    
respondido por el Chicodoodoo 08.07.2014 - 00:45
3

Al recibir usermod: can't change /etc/password solo ejecuta los siguientes comandos:

En la consola de recuperación raíz, ejecute:

mount -o remount,rw /

Luego vuelva a ejecutar:

usermod -l <newname> -d /home/<newname> -m <oldname>
    
respondido por el user1511576 30.07.2014 - 14:14
0

cuando hagas usermod -l <newname> -d /home/<newname> -m <oldname> obtendrás useradd: can't change /etc/passwd mensaje de error para evitar esto solo agregue sudo -- al comando anterior como

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

y

sudo --  groupmod -n <newgroup> <oldgroup>
    
respondido por el Sriraj Hebbar 06.08.2013 - 08:12
-3

Como no todas las PC tienen la aplicación usermod , puede hacerlo manualmente. A partir de root, abra /etc/passwd para editar:

sudo vim /etc/passwd

y cambie el nombre del usuario al comienzo de una línea:

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

a:

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

luego, si trabajaste en root solo inicias sesión, y si has iniciado sesión en user , cierra sesión y vuelve a iniciar sesión.

    
respondido por el Малъ Скрылевъ 16.12.2014 - 14:15

Lea otras preguntas en las etiquetas