Les utilisateurs sont le composant le plus important d'un système Linux. Linux fournit aux administrateurs des commandes intégrées qui leur permettent de gérer efficacement les utilisateurs. Il y en a un pour créer des utilisateurs, supprimer des utilisateurs et modifier les autorisations des utilisateurs. Mais qu'en est-il de la liste de tous les utilisateurs actuellement présents sur un système?
Dans cet article, nous allons discuter de la façon dont vous pouvez obtenir une liste de tous les utilisateurs sous Linux, ainsi qu'un bref guide pour vérifier si un utilisateur existe sur un système ou non.
Comment afficher une liste de tous les utilisateurs sous Linux
Lorsque vous créez un nouvel utilisateur, le nom d'utilisateur, le mot de passe et d'autres détails sont stockés dans des fichiers spécifiques sur une machine Linux. Heureusement, Linux vous permet de lire et de modifier ces fichiers sans aucune restriction. En utilisant ces fichiers, vous pouvez connaître les informations relatives aux utilisateurs, telles que leurs noms d'utilisateur, le nombre d'utilisateurs, etc.
Utilisation du fichier Passwd
Le passwd fichier est un fichier texte qui contient les enregistrements de mot de passe de tous les utilisateurs actuellement présents dans votre système. Ce fichier se trouve dans le /etc répertoire dans votre stockage local et contient les informations suivantes:
- Noms d'utilisateur
- Mots de passe cryptés
- Identifiant d'utilisateur
- ID de groupe de l'utilisateur
- Nom complet
- Le /home répertoire de l'utilisateur
- Shell de connexion de l'utilisateur
Taper cat / etc / passwd ou moins / etc / passwd dans votre terminal pour lire le fichier texte. Ouverture du /etc/passwd fichier générera une sortie qui ressemble à quelque chose comme ça.
racine: x: 0: 0: racine: / racine: / bin / bash
démon: x: 1: 1: démon: / usr / sbin: / bin / sh
bin: x: 2: 2: bin: / bin: / bin / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
jeux: x: 5: 60: jeux: / usr / jeux: / bin / sh
man: x: 6: 12: man: / var / cache / man: / bin / sh
La sortie susmentionnée contient sept champs qui contiennent des informations relatives aux utilisateurs. Ces champs sont séparés par un délimiteur dans ce cas, deux-points. Chaque ligne de la sortie désigne un seul utilisateur.
Pour obtenir une liste de tous les noms d'utilisateur à l'aide du passwd déposer:
awk -F: '{print $ 1}' / etc / passwd
Awk est un utilitaire de ligne de commande qui permet aux utilisateurs de Linux de créer de simples programmes «en une ligne» qui effectuent des opérations rapides à partir du terminal. Dans le code mentionné ci-dessus:
- -F signifie séparateur de champ. Puisque le caractère deux-points est le délimiteur dans le /etc/passwd fichier, nous passons les deux points comme séparateur dans la commande awk.
- {imprimer $ 1} demande au système d'imprimer le premier champ. Dans ce cas, le premier champ est le nom d'utilisateur des utilisateurs.
- /etc/passwd Le fichier contient les données relatives aux utilisateurs.
L'exécution de la commande ci-dessus affichera les noms d'utilisateur de tous les utilisateurs. Depuis le /etc/passwd Le fichier contient des utilisateurs système, la sortie inclura également leurs noms d'utilisateur.
racine
démon
poubelle
sys
synchroniser
Jeux
homme
Vous pouvez modifier légèrement la commande awk afin d'imprimer les noms complets des utilisateurs. Tapez la commande suivante pour afficher les noms complets des utilisateurs sous Linux:
awk -F: '{print $ 5}' / etc / passwd
Étant donné que les utilisateurs du système ont le même nom d'utilisateur et le même nom complet, vous ne remarquerez aucune différence dans la sortie. Seuls les utilisateurs que vous avez ajoutés à votre système auront des noms d'utilisateur et des noms complets différents.
Alternativement, vous pouvez également utiliser Couper au lieu de la commande awk. La syntaxe de cut est assez similaire à la commande awk.
Pour imprimer les noms d'utilisateur sous Linux en utilisant cut:
couper -d: f1 / etc / passwd
Ici, -ré est le délimiteur, f1 désigne le premier champ (nom d'utilisateur), et /etc/passwd est le fichier texte qui contient les données.
Pour imprimer les prénoms des utilisateurs à l'aide de cut:
couper -d: f5 / etc / passwd
De même, vous pouvez générer d'autres champs à partir du /etc/passwd fichier en remplaçant simplement f5 avec f1-f7.
En rapport: Comment changer votre mot de passe Linux
Lister les utilisateurs avec la commande getent
La commande getent imprime le contenu des fichiers texte importants qui agissent comme une base de données pour le système. Des fichiers tels que /etc/passwd et /etc/nsswitch.conf contiennent respectivement des informations relatives aux utilisateurs et aux réseaux et peuvent être lues à l'aide de la commande getent.
Pour imprimer le contenu du /etc/passwd fichier en utilisant getent:
getent passwd
La sortie contiendra sept champs différents séparés par le caractère deux-points. Chaque champ est réservé à des informations particulières, notamment les noms d'utilisateur et les chemins du répertoire personnel des utilisateurs.
racine: x: 0: 0: racine: / racine: / bin / bash
démon: x: 1: 1: démon: / usr / sbin: / bin / sh
bin: x: 2: 2: bin: / bin: / bin / sh
sys: x: 3: 3: sys: / dev: / bin / sh
sync: x: 4: 65534: sync: / bin: / bin / sync
jeux: x: 5: 60: jeux: / usr / jeux: / bin / sh
man: x: 6: 12: man: / var / cache / man: / bin / sh
Vous pouvez enchaîner la commande getent avec awk ou cut pour obtenir uniquement la liste des noms d'utilisateur.
getent passwd | awk -F: '{imprimer $ 1}'
getent passwd | couper -d: -f1
Pour imprimer les noms complets des utilisateurs:
getent passwd | awk -F: '{print $ 5}'
getent passwd | couper -d: -f5
Vérifier si un utilisateur existe ou non
Dans certaines situations, vous souhaiterez peut-être vérifier si un utilisateur existe sur votre système Linux ou non. Le grep La commande est pratique lorsque vous souhaitez récupérer un modèle de texte spécifique à partir d'un fichier.
Vous pouvez utiliser l'une des commandes suivantes pour vérifier l'existence d'un utilisateur.
compgen -u | nom d'utilisateur grep
getent passwd | nom d'utilisateur grep
Si l'utilisateur existe, les informations de connexion qui lui sont associées seront affichées à l'écran. En revanche, si l'utilisateur n'est pas présent dans le système, une erreur se produira.
Pour vérifier si un utilisateur existe sur un système sans utiliser grep:
nom d'utilisateur getent passwd
Vous pouvez également canaliser le getent ou compgen commande avec grep et écho pour afficher la sortie personnalisée.
getent passwd | grep -q username && echo "Utilisateur trouvé" || echo "Utilisateur introuvable"
compgen -u | grep -q username && echo "Utilisateur trouvé" || echo "Utilisateur introuvable"
La commande ci-dessus affichera «Utilisateur trouvé» si l'utilisateur existe sur le système et «Utilisateur non trouvé» si ce n'est pas le cas.
Compter le nombre d'utilisateurs sur un système
Pour compter le nombre d'utilisateurs qui existent sur un système Linux:
compgen -u | wc -l
getent passwd | wc -l
Dans les commandes ci-dessus, compgen et getent sont responsables de l'affichage de la liste contenant tous les utilisateurs et autres informations les concernant. Le toilettes représente le nombre de mots et est utilisé pour compter le nombre de mots ou de lignes dans la sortie. Le -l le drapeau indique Lignes.
Vérification des comptes d'utilisateurs sous Linux
Chaque administrateur Linux doit savoir comment gérer et administrer d'autres utilisateurs sur un système. Maîtriser les commandes Linux qui vous permettent de créer, supprimer, contrôler et répertorier d'autres utilisateurs est un excellent moyen de démarrer avec la gestion des utilisateurs.
Se familiariser avec l'environnement Linux devrait être votre premier objectif si vous n'êtes qu'un débutant. Il y a certaines choses que vous devez faire juste après avoir installé votre toute première distribution Linux. Apprendre quelques commandes de base est l'un d'entre eux et est essentiel pour effectuer des tâches informatiques simples sous Linux.
Vous souhaitez utiliser Linux mais vous ne savez pas par où commencer? Apprenez à utiliser Linux, du choix d'une distribution à l'installation d'applications.
- Linux
- Linux
Deepesh est l'éditeur junior pour Linux chez MUO. Il écrit du contenu informatif sur Internet depuis plus de 3 ans. Pendant son temps libre, il aime écrire, écouter de la musique et jouer de la guitare.
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives!
Un pas de plus…!
Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.