Utilisateurs et groupes

Pour se connecter au système un utilisateur doit être identifié.
Chaque utilisateur possède pour ce faire un UID.

Chaque utilisateur appartient au moins à un groupe (son groupe principal) et peut appartenir à des groupes secondaires.
La commande ‘id’ nous donne des infos :

$> id
uid=200(apache) gid=11(admin) groups=1(staff),80(oraexp),
$> #le user apache a l’UID 200 et appartient à 3 groupes

La commande ‘su’ permet de changer de UID et donc de user. Sans paramètre elle permet de passer ‘super utilisateur’ ou en d’autres termes de prendre l’UID de root.

$> #je suis apache
$> id
uid=200(apache) gid=11(admin) groups=1(staff),80(oraexp)
$> # et deviens DD
$> su dd
dd’s password : ****
$> # puis root !
$> su
root’s Password: ****

Chaque fichier a un user (son propriétaire ou créateur) et un group (auquel appartient le créateur).
C’est la base de la gestion des permissions.

Ainsi sur l’exemple suivant un ‘ls -l’ nous donne entre autres le nom du user propriétaire, suivi du nom du groupe et en dernière colonne le nom du fichier.

$> ls -l
drwxrwxrwx 2 informix informix 512 Dec 04 20:00 CHUNK_BM
drwxrwxrwx 2 informix informix 512 Dec 04 20:00 INFO
-rwxrwxrwx 1 root system 0 Dec 05 10:19 LMF-common
-rwxrwxrwx 1 mqm mqm 0 Dec 01 05:20 MQSeries.1077294
-rwxrwxrwx 1 mqm mqm 0 Dec 01 05:20 MQSeries.1089556
-rw-r–r– 1 oracle dba 2442 Dec 01 01:04 connexions.lst

Les caractérisques des utilisateurs sont  stockés dans des  fichiers de /etc

  • /etc/passwd : infos utilisateurs (accessible à tous en lecture)
  • /etc/group : infos sur les groupes
  • /etc/shadow : mots de passe cryptés (accessible en lecture/écriture  seulement par root )

remarque : ces fichiers ne doivent pas être modifiés manuellement. On utilisera des lignes de commandes spéciales pour gérer les utilisateurs et les groupes, ou si possible une interface graphique : MENU systeme /Administartion / Users and Groups sous GNOME par exemple.

Format de /etc/passwd

C’est un fichier texte, à champs de longueur variable, séparés par des ‘:’
Il a la forme suivante :

nom_user : x : UID : GID : détails_user : rep_de_login : shell_par_defaut

x : correspond sur les anciennes versions au mot de passe, mais n’est plus stocké ici.

exemple de contenu :

$> more /etc/passwd
dd:x:1001:1001:,,,:/home/dd:/bin/bash
toto:x:1002:1002::/home/toto:/bin/bash
titi:x:1003:1003::/home/titi:/bin/sh

Quelques commandes pour gérer utilisateurs et groupe

useradd nom_user
permet de rajouter un utilisateur sur la machine, ou d’ajouter un utilisateur existant à un groupe (avec les valeurs par défaut)
useradd -D
affiche les caractéristiques par défaut d’un utilisateur
adduser nom_user
commande intéractive d’ajout d’utilisateur
groupadd nom_groupe
ajoute un groupe
usermod
modifie un utilisateur existant
userdel [options] nom_user
supprime un utilisateur
passwd
pour changer son mot de passe

exemples :

$> groupadd developeurs
$> grep developeurs /etc/group
developeurs:x:1124:
$> useradd -G developeurs dd
$> passwd dd
Changing password for “dd”
dd’s Old password: …
$> useradd -D
GROUP=100
HOME=/home
INACTIVE=1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel

remarque : le répertoire SKEL contient les fichiers (cachés) à copier dans le compte initial  (voir ls -al pour + d’infos)

Les commentaires sont fermés.

Suivre

Get every new post delivered to your Inbox.