Inicio > Gestión de paquetes y sistema > getent

getent: Consulta de entradas del servicio de nombres (NSS)

El comando getent consulta entradas de varias bases de datos del sistema (por ejemplo, información de usuarios, grupos, hosts) utilizando la biblioteca Name Service Switch (NSS). Esto permite recuperar información no solo de archivos locales como /etc/passwd, /etc/group, /etc/hosts, sino también de otras fuentes definidas en la configuración de NSS, como NIS, LDAP, etc.

Resumen

getent busca información en varias bases de datos como usuarios, grupos y hosts, según la configuración de Name Service Switch (NSS) del sistema. Puede recuperar información no solo de archivos locales (/etc/passwd, /etc/group, etc.), sino también de servicios basados en red (NIS, LDAP, etc.), lo que lo hace útil para verificar cómo el sistema interpreta y utiliza información específica.

Características principales

  • Consulta de varias fuentes de datos según la configuración de NSS
  • Búsqueda de información del sistema como usuarios, grupos, hosts, servicios
  • Soporte para archivos locales y servicios de red (NIS, LDAP)
  • Útil para diagnóstico de información del sistema y uso en scripts

Bases de datos de consulta principales

Tipos de bases de datos representativas que se pueden consultar con getent.

  • passwd: Información de cuentas de usuario (ej. /etc/passwd)
  • group: Información de grupos (ej. /etc/group)
  • hosts: Información de nombres de host y direcciones IP (ej. /etc/hosts, DNS)
  • services: Servicios de red y números de puerto (ej. /etc/services)
  • protocols: Información de protocolos de red (ej. /etc/protocols)
  • networks: Información de nombres y direcciones de red (ej. /etc/networks)

Opciones principales

El comando getent utiliza principalmente el nombre de la base de datos y la clave de consulta como argumentos, pero también proporciona algunas opciones útiles.

Control de consulta

Comando generado:

Combina los comandos.

Descripción:

`getent` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Ejemplos de cómo utilizar el comando getent para consultar diversa información del sistema.

Listar todos los usuarios

getent passwd

Muestra la información de todas las cuentas de usuario registradas en el sistema.

Consultar información de un usuario específico

getent passwd root

Muestra la información de la cuenta de un nombre de usuario especificado (ej. 'root').

Listar todos los grupos

getent group

Muestra la información de todos los grupos registrados en el sistema.

Consultar información de un grupo específico

getent group sudo

Muestra la información de un nombre de grupo especificado (ej. 'sudo').

Consultar la dirección IP por nombre de host

getent hosts google.com

Muestra la información de la dirección IP para un nombre de host especificado (ej. 'google.com'). Sigue la configuración de DNS.

Consultar el nombre de host por dirección IP

getent hosts 8.8.8.8

Busca inversamente la información del nombre de host para una dirección IP especificada (ej. '8.8.8.8').

Consultar el número de puerto de un servicio específico

getent services ssh

Muestra el número de puerto y la información del protocolo para un servicio especificado (ej. 'ssh').

Consultar información de usuario solo desde archivos

getent -s files passwd

Especifica la fuente NSS como 'files' para consultar información de usuario solo desde archivos locales como /etc/passwd.

Consejos y precauciones

Consejos y precauciones para utilizar el comando getent de manera más efectiva.

Comprender el archivo de configuración de NSS

getent consulta las fuentes de datos en el orden definido en el archivo `/etc/nsswitch.conf`. Es importante entender el orden en que el sistema busca la información verificando este archivo. Por ejemplo, `passwd: files systemd` significa que primero se verifique el archivo local (`/etc/passwd`) y luego se busque la información del usuario a través del servicio `systemd`.

Consejos de uso

  • **Diagnóstico de problemas de red:** Utilice `getent hosts` para diagnosticar problemas de configuración de DNS o NIS.
  • **Validación de usuarios/grupos en scripts:** Útil para verificar si un usuario o grupo específico existe en el sistema dentro de un script.
  • **Diferencia con el comando `id`:** Mientras que el comando `id` muestra la información de UID/GID y grupos a los que pertenece el usuario actual o un usuario especificado, `getent passwd` consulta la información detallada de todas las cuentas de usuario registradas en el sistema a través de NSS.

Comandos de la misma categoría