Identificando Usuario por UID 2

Posted by Gomix Tue, 25 Mar 2008 20:37:50 GMT

Recién tuve que hacerme un guión Bash para automatizar la migración de usuarios de un sistema a otro (Solaris 10/Linux), ambos basados en /etc/passwd como base de datos contentiva de la información de los usuarios en el sistema.

La tarea de la migración incluye siempre verificar que no sobrescribamos un usuario existente con uno nuevo proveniente del sistema antiguo a migrar ya que en ese caso vamos derecho a la perdida de datos.

En cualquier caso el problema se me tradujo en algún momento en cómo poder identificar los nombres de usuarios e identificadores de usuarios repetidos entre una y otra base de datos passwd.

Para el caso de revisar los nombres de usuario usé el comando id, pero este comando sólo trabaja si usted le suministra el nombre de usuario.

[gomix@elbax ~]$ id 0
id: 0: No such user
[gomix@elbax ~]$ id root
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)

Para resolver este problemilla use getent que ademas funciona en ambos casos:

[gomix@elbax ~]$ getent passwd 0
root:x:0:0:root:/root:/bin/bash
[gomix@elbax ~]$ getent passwd root
root:x:0:0:root:/root:/bin/bash

Eso sí, debe especificar la base de datos fuentes en donde está almacenada la información de usuarios en su sistema.

Si este truco te ha sido útil, considera hacer una donación al autor.

Trackbacks

Use the following link to trackback from your own site:
http://www.fedora-ve.org/trackbacks?article_id=identificando-usuario-por-uid&day=25&month=03&year=2008

Comments

Leave a response

  1. Avatar
    Gomix about 5 hours later:

    Esto se extiende a los grupos fácilmente:

    # getent group staff
    staff::10:
    # getent group 10
    staff::10:
    
  2. Avatar
    MAYIVIS DIAS about 1 month later:

    HOLA SOY ESTUDIANTE DEL TERCER SEMESTRE

Comments


body> body>