Dans cet article, je vais vous montrer comment répertorier les utilisateurs sur Centos 7. Commençons.
Les détails des utilisateurs sont stockés dans / etc / passwd Fichier sur le système d'exploitation CENTOS. Ceci est un fichier texte brut. Afin que vous puissiez lire ça avec moins ou chat Commande comme suit:
$ moins / etc / passwd
Comme vous pouvez le voir, une liste de tous les utilisateurs est imprimée. Des informations sur un seul utilisateur sont stockées dans un seul fichier ligne / etc / passwd. Chaque ligne contient beaucoup d'informations sur ces utilisateurs spécifiques séparés par Colon (:)
Une ligne dans le fichier / etc / passwd contient les informations suivantes séparées par Colon (:)
Nom d'utilisateur : Mot de passe : Uid : Gid : Coordonnées : Chemin du répertoire domestique : Coquille par défaut
Ici, Nom d'utilisateur - Le nom de connexion de l'utilisateur. Il ne peut pas avoir d'espaces et d'autres caractères spéciaux. Seuls les caractères alphanumériques sont autorisés.
Mot de passe - Sur le système d'exploitation basé sur Linux tel que CentOS, le mot de passe est stocké sur / etc / ombre déposer. Si le mot de passe est défini, X est stocké dans ce domaine.
Uid - Sur les systèmes d'exploitation basés sur Linux, chaque utilisateur a un nom ou un nom d'utilisateur alphanumérique et un ID numérique qui est appelé ID utilisateur ou UID. Pour les utilisateurs ordinaires, l'UID commence à partir de 1000. Le racine L'utilisateur a l'UID 0.
Gid - Sur les systèmes d'exploitation basés sur Linux, chaque groupe a un nom de groupe et un ID numérique qui est appelé ID de groupe ou GID. Sur Linux, chaque utilisateur doit être membre d'au moins un groupe. Ainsi, pour chaque utilisateur créé, un groupe est également créé avec le même nom que le nom d'utilisateur. L'utilisateur est ensuite ajouté au groupe. Dans ce domaine, le GID du groupe primaire est ajouté. Le groupe principal est le groupe par défaut de l'utilisateur. Si un utilisateur est membre de nombreux groupes, il peut le changer pendant qu'il est connecté avec newgrp commande. Le GID pour les groupes ordinaires commence à 1000. Si votre système Linux n'est pas spécifiquement configuré, le Gid devrait être le même que le Uid. Le racine groupe a le gid 0.
Coordonnées - Ce champ conserve le nom complet et d'autres informations personnelles sur l'utilisateur en tant que liste séparée par des virgules. L'utilisation la plus courante de ce champ est de définir le nom complet de l'utilisateur. Tapez simplement le nom complet de votre nom d'utilisateur ici et il devrait être défini.
Chemin du répertoire domestique - Ce champ maintient le chemin vers un répertoire où tous les fichiers utilisateur seront stockés. Le $ Home La variable shell est définie à partir de ce champ.
Coquille par défaut - Sur les systèmes d'exploitation basés sur Linux, vous devez avoir un ensemble de shell pour votre utilisateur. Par défaut, le shell SH (/ bin / sh) et bash (/ bin / bash) devrait être défini pour les utilisateurs ordinaires qui peuvent se connecter au système . Mais il y a d'autres obus tels que Zsh, CSH, etc. Les utilisateurs du système ont / sbin / nologin shell set, ils ne pourront donc pas se connecter au système. Si vous souhaitez désactiver la connexion pour un utilisateur, définissez simplement ce champ pour ces utilisateurs sur / sbin / nologine.
Vous pouvez obtenir les mêmes informations que dans le fichier / etc / passwd avec la commande suivante:
$ Getent Passwd
Sortie du mot de passe Getent:
Extraction uniquement de liste du nom d'utilisateur du fichier / etc / passwd:
Le fichier / etc / passwd a beaucoup d'informations. Si vous souhaitez extraire uniquement le nom d'utilisateur de la liste séparée, alors vous pouvez utiliser awk ou couper commande de faire ça.
Vous pouvez exécuter la commande suivante pour extraire le nom de connexion ou le nom d'utilisateur à l'aide de la commande Cut:
$ Cut -D: -F1 / etc / passwd
Ou
$ GETENT PASSWD | coupe -d: -f1
Comme vous pouvez le voir, tous les noms d'utilisateur sont extraits.
Vous pouvez faire la même chose avec awk comme suit:
$ awk -f: 'print $ 1' / etc / passwd
Ou,
$ GETENT PASSWD | awk -f: 'print $ 1'
Comme vous pouvez le voir, j'obtiens la même sortie.
Listing des utilisateurs qui peuvent se connecter au système:
Si vous souhaitez répertorier tous les utilisateurs qui peuvent vous connecter à votre système d'exploitation CENTOS, exécutez la commande suivante:
$ GETENT PASSWD | egrep -v '/ s?Bin / (Nologine | Arrêt | Sync | Halt) '| coupe -d: -f1
Comme vous pouvez le voir, seuls 4 utilisateurs de ma machine CentOS sont en mesure de se connecter et d'autres utilisateurs sont des utilisateurs du système. Ils ne peuvent pas se connecter au système.
C'est ainsi que vous énumérez les utilisateurs sur CentOS. Merci d'avoir lu cet article.