Canviar el nom d’usuari en un sistema GNU/Linux

Per mil motius diferents, podeu desitjar canviar un nom d’usuari en una instal·lació GNU/Linux. Això implica canviar no només el nom de l’usuari (el nom que emprem per al login), sinó també el del directori associat (no és obligatori, però és còmode) i el propietari de tot el contingut d’aquest (això sí que és imprescindible). Es pot realitzar el procés manualment, però és una mica extens i, a més a més, és fàcil cometre-hi errors.

Per sort, mentre cercava la manera fer-ho, vaig trobar algunes referència l’ordre usermod, que permet fer-ho tot en una sola línia, molt més ràpid, molt més senzill i molt més segur.

Per evitar problemes durant el procés, cal sortir de l’usuari que volem modificar i entrar en una consola com a administrador. Per exemple, després de sortir de l’usuari, podem entrar en un altre que sigui administrador, o podem accedir a una consola amb Ctrl+Alt+F1 i entrar directament com a root.

Un cop heu entrat en la consola com a administradors, si teniu que l’antic usuari és usuarivell i voleu canviar-lo a usuarinou (poc original, ja ho sé) i, ja que hi sou, voleu assignar-li una nova contrasenya (contrasenyanova, és clar), podeu emprar la següent ordre:

# usermod -d usuarinou -m -l usuarinou -p contrasenyanova usuarivell

L’expliquem per parts:

  • usermod és l’ordre que ho farà tot en un sol pas; exigeix permisos d’administrador;
  • -d usuarinou establirà el nou nom del directori home de l’usuari modificat; -m mourà a aquest nou directori el contingut original (cal indicar-hi la ruta completa: /home/usuarinou);
  • -l usuarinou estableix el nou nom per al login (el nou usuari);
  • -p contrasenyanova estableix la nova contrasenya de l’usuari un cop modificat; cal anar amb compte perquè, si l’escrivim aquí, queda visible (i accessible a través de l’historial de root); si voleu evitar problemes de seguretat, podeu ometre aquest fragment (com, al final, vaig fer) i modificar la contrasenya posteriorment;
  • usuarivell és el nom de l’usuari que estem canviant i ha d’aparèixer al fina de la línia.

En el meu cas, l’usuari vell era ggrappa i volia canviar-lo a giorgio, de manera que l’ordre ha quedat així:

# usermod -d /home/giorgio -m -l giorgio ggrappa

Tanmateix, no tot ha anat bé: n’ignoro els motius, però no s’ha creat el nou directori ni, lògicament, s’hi ha traslladat el contingut des de /home/ggrappa a /home/giorgio. Així, he hagut d’acabar el procés movent manualment el directori vell a la nova ubicació:

# mv /home/ggrappa /home/giorgio

Després, he canviat el propietari del directori i de tot el seu contingut (opció -R, recursiu) al nou usuari:

# chown -R giorgio:giorgio /home/giorgio

I, finalment, he creat una nova contrasenya amb:

# passwd giorgio

El dia que esbrine per què no ha funcionat l’ordre usermod tal i com esperava, ja corregiré aquesta entrada. Mentrimentres, qualsevol aclariment dels lectors serà més que benvingut.

Anuncis

Quant a Giorgio Grappa

Algú fa cas de les coses que els blocaires escriuen sobre ells mateixos? El comentari més sincer que he llegit als "about me" és aquell de: "si vols saber res de mi, pots llegir el meu bloc."
Aquesta entrada ha esta publicada en Administració, GNU/Linux, Informàtica, programari, programari lliure. Afegeix a les adreces d'interès l'enllaç permanent.

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out / Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out / Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out / Canvia )

Google+ photo

Esteu comentant fent servir el compte Google+. Log Out / Canvia )

Connecting to %s