accueil > Gestion des paquets et du système > getent

getent : interroger les entrées du Name Service Switch (NSS)

La commande getent utilise la bibliothèque Name Service Switch (NSS) pour interroger des entrées dans diverses bases de données système (par exemple, informations sur les utilisateurs, les groupes, les hôtes). Cela permet de récupérer des informations à partir de fichiers locaux tels que /etc/passwd, /etc/group, /etc/hosts, ainsi que d'autres sources définies dans la configuration NSS comme NIS, LDAP, etc.

Aperçu

getent recherche des informations dans diverses bases de données telles que les utilisateurs, les groupes et les hôtes, conformément à la configuration du Name Service Switch (NSS) du système. Il peut récupérer des informations non seulement à partir de fichiers locaux (/etc/passwd, /etc/group, etc.), mais aussi à partir de services basés sur le réseau (NIS, LDAP, etc.), ce qui est utile pour vérifier comment le système interprète et utilise des informations spécifiques.

Caractéristiques principales

  • Interrogation de diverses sources de données selon la configuration NSS
  • Recherche d'informations système telles que les utilisateurs, les groupes, les hôtes, les services
  • Prise en charge des fichiers locaux et des services réseau (NIS, LDAP)
  • Utile pour le diagnostic des informations système et l'utilisation dans les scripts

Bases de données d'interrogation principales

Types de bases de données représentatifs que vous pouvez interroger avec getent.

  • passwd: Informations sur les comptes utilisateur (par exemple, /etc/passwd)
  • group: Informations sur les groupes (par exemple, /etc/group)
  • hosts: Informations sur les noms d'hôtes et les adresses IP (par exemple, /etc/hosts, DNS)
  • services: Services réseau et numéros de port (par exemple, /etc/services)
  • protocols: Informations sur les protocoles réseau (par exemple, /etc/protocols)
  • networks: Informations sur les noms et adresses réseau (par exemple, /etc/networks)

Options principales

La commande getent utilise principalement le nom de la base de données et la clé d'interrogation comme arguments, mais elle offre également quelques options utiles.

Contrôle de l'interrogation

Commande générée :

Essayez de combiner les commandes.

Description:

`getent` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Exemples d'utilisation de la commande getent pour interroger diverses informations système.

Afficher la liste de tous les utilisateurs

getent passwd

Affiche les informations de tous les comptes utilisateur enregistrés sur le système.

Afficher les informations d'un utilisateur spécifique

getent passwd root

Affiche les informations du compte pour un nom d'utilisateur spécifié (par exemple, 'root').

Afficher la liste de tous les groupes

getent group

Affiche les informations de tous les groupes enregistrés sur le système.

Afficher les informations d'un groupe spécifique

getent group sudo

Affiche les informations pour un nom de groupe spécifié (par exemple, 'sudo').

Interroger l'adresse IP à partir du nom d'hôte

getent hosts google.com

Affiche les informations d'adresse IP pour un nom d'hôte spécifié (par exemple, 'google.com'). Suit la configuration DNS.

Interroger le nom d'hôte à partir de l'adresse IP

getent hosts 8.8.8.8

Interroge inversement les informations de nom d'hôte pour une adresse IP spécifiée (par exemple, '8.8.8.8').

Interroger le numéro de port d'un service spécifique

getent services ssh

Affiche le numéro de port et les informations de protocole pour un service spécifié (par exemple, 'ssh').

Interroger les informations utilisateur uniquement à partir des fichiers

getent -s files passwd

Interroge les informations utilisateur uniquement à partir des fichiers locaux tels que /etc/passwd en spécifiant la source NSS comme 'files'.

Conseils et précautions

Conseils et précautions pour utiliser la commande getent plus efficacement.

Comprendre le fichier de configuration NSS

getent interroge les sources de données dans l'ordre défini dans le fichier `/etc/nsswitch.conf`. Il est important de comprendre l'ordre dans lequel le système recherche les informations en consultant ce fichier. Par exemple, `passwd: files systemd` signifie qu'il faut d'abord vérifier les fichiers locaux (`/etc/passwd`), puis rechercher les informations utilisateur via le service `systemd`.

Conseils d'utilisation

  • **Diagnostic des problèmes réseau :** Vous pouvez utiliser `getent hosts` pour diagnostiquer des problèmes de configuration DNS ou NIS.
  • **Validation des utilisateurs/groupes dans les scripts :** Utile pour vérifier si un utilisateur ou un groupe spécifique existe sur le système dans les scripts.
  • **Différence avec la commande `id` :** La commande `id` affiche les informations UID/GID et les groupes d'appartenance de l'utilisateur actuellement connecté ou d'un utilisateur spécifié, tandis que `getent passwd` interroge les informations détaillées de tous les comptes utilisateur enregistrés sur le système via NSS.

Commandes de la même catégorie