¿Cómo cambio mi nombre de usuario?

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 cambio esto (incluido el nombre de mi directorio de inicio y el nombre en la terminal) sin perder la configuración de las aplicaciones?
¿Cómo guardo los permisos y mis claves para diversas autenticaciones (por ejemplo, correo electrónico, SSH, GPG y más)?
¿Qué configuraciones podrían perderse si cambio mi nombre de usuario?

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

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

Para cambiar el nombre de usuario (probablemente sea mejor hacerlo sin iniciar 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 cambiar el nombre de usuario.

Por ejemplo, puede cerrar la sesión, ir a una consola (Ctrl+Alt+F1), y sudo su - para convertirse en verdadera raíz (a diferencia de sudo -s, donde HOME HOME sigue siendo /home / yourname.) Tal vez también tenga que eliminar algunos procesos que aún se ejecutan de este usuario primero. Para hacerlo, ingrese ps -u username, busque el PID coincidente y mátelos por kill PID-number.

Actualización: como mencioné anteriormente, algunos archivos pueden hacer referencia a su antiguo directorio de inicio. Puede mantener un enlace simbólico para compatibilidad con versiones anteriores, por ejemplo 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 un .extensión bak.

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

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

    sudo adduser temporary

    establece 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. Regrese 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 aparezca el mensaje de inicio de sesión)
  5. Volver a TTY7 (Ctrl+Alt+F7) para iniciar sesión en la pantalla GUI/escritorio normal y ver si esto funciona.
  6. Eliminar usuario y carpeta temporales:

    sudo deluser temporarysudo rm -r /home/temporary

Para ponerlo todo junto:

  1. Cierre la sesión o reinicie el equipo para volver a la pantalla de inicio.

  2. En la pantalla de inicio, vaya a un modo de consola tty. Pulsar Ctrl+Alt+F1 (en algunas revisiones de Ubuntu esto puede ser Ctrl+Alt+F2 en su lugar)

  3. Inicie sesión con su nombre de usuario y contraseña.

  4. Establezca una contraseña para la cuenta" root & quot;.

     sudo passwd root
  5. Cierra la sesión.

     exit
  6. Inicie sesión con la cuenta & quot; root" y la contraseña que ha establecido anteriormente.

  7. Cambie el nombre de usuario y la carpeta de inicio al nuevo nombre que desee.

     usermod -l <newname> -d /home/<newname> -m <oldname>
  8. Cambie el nombre del grupo al nuevo nombre que desee.

     groupmod -n <newgroup> <oldgroup>
  9. Bloquee la cuenta & quot; root & quot;.

     passwd -l root
  10. Si estaba utilizando ecryptfs (directorio de inicio cifrado). Monte su directorio cifrado usando ecryptfs-recover-private y editar <mountpoint>/.ecryptfs/Private.mnt para reflejar su nuevo directorio de inicio.

  11. Cierra la sesión.

    exit
  12. Pulsar Ctrl+Alt+F7 para volver a la pantalla de inicio de sesión del modo de gráficos de Ubuntu (en algunas revisiones de Ubuntu, esto puede ser Ctrl+Alt+F1).

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

Reinicie en modo de recuperación y vaya al shell del símbolo del sistema raíz ("Soltar en el símbolo del sistema del shell raíz")

Primero vuelve a montar la raíz

mount -o remount,rw /

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

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

Para nombre de grupo,

groupmod -n <newgroup> <oldgroup>

En Ubuntu 13.10, 14.04, 16.04:

  1. Haga clic en el icono" Configuración del sistema".
  2. Haga clic en"Cuentas de usuario".
  3. Se debe mostrar su cuenta de administrador.
  4. Haga clic en el botón" Desbloquear".
  5. Ingrese su contraseña de usuario según se le solicite para permitir cambios en su cuenta.
  6. Una vez desbloqueado, puede hacer clic en su antiguo nombre de usuario que desea cambiar y escribir un nuevo nombre de usuario para reemplazarlo.
  7. Cuando haya escrito el nuevo nombre, haga clic en el botón" Bloquear " para que el cambio sea permanente.
  8. Reinicie Ubuntu.

Al recibir usermod: can't change /etc/password simplemente ejecute los siguientes comandos:

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

mount -o remount,rw /

A continuación, vuelva a ejecutar:

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

cuando lo haces usermod -l <newname> -d /home/<newname> -m <oldname> usted conseguirá useradd: can't change /etc/passwd mensaje de error para evitar esto, simplemente agregue sudo -- al comando anterior me gusta

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

y

sudo --  groupmod -n <newgroup> <oldgroup>

La respuesta enumerada aquí por @karthick87 funciona perfectamente bien, pero esto es lo que haría solo para estar seguro y evitar todos los problemas técnicos:

  1. Cree una cuenta/usuario independiente y asegúrese de que esta cuenta/usuario sea root o inicie sesión como cualquier usuario con capacidad de root.
  2. Cierre la sesión con la cuenta actual y luego inicie sesión con la cuenta mencionada en el paso 1.
  3. Mata todos los procesos del usuario anterior.
  4. Ahora siga los pasos mencionados por @karthick87 y cambie el nombre de usuario y también el propietario del directorio de inicio.
  5. Luego sigue la respuesta de @Sriraj Hebbar para cambiar el nombre del grupo.
  6. cierre la sesión con el usuario de repuesto e inicie sesión con su usuario. Si ha creado un usuario adicional, elimínelo.

Dado que no todos los linuces (sin embargo Ubuntu debe tenerlo) tener el usermod sin embargo, existe la forma en que puede hacerlo manualmente. A partir de la raíz abierta /etc/contraseña para editar con vim o cualquier otro editor presente en el sistema:

sudo vim /etc/passwd

y cambie el nombre del usuario al principio 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 trabajó de root, simplemente inicie sesión, y si ha iniciado sesión como usuario, cerrar sesión y volver a iniciar sesión.

Por supuesto que tienes que arreglar /etc/shadow, y /etc / grupo también para que el sistema funcione correctamente. Gracias a @JohanBoulé

NOTA: Debe utilizar este enfoque con cuidado, para no romper el sistema.

NOTA: Este enfoque es común, no solo para Ubuntu, sino que para ubuntu funcionará, sin embargo, la búsqueda de Google lo mostrará solo para búsquedas que no sean de Ubuntu, por ejemplo, para linux incrustado

Por qué no podemos navegar a /usr / share / applications / users.escritorio > > Haga clic en el usuario para el que se debe cambiar el nombre. > > Haga clic en Cambiar nombre de usuario > > Cambiar el nombre > > Haga clic en Aceptar. Creo que esta sería la forma más fácil de cambiar el nombre de usuario, ¿verdad?