Pour utiliser un ordinateur sous Unix, une personne a besoin d'un compte. Un
compte permet à l'usager d'accéder aux ressources disponibles. De
plus, le compte identifie l'usager sur le système. Il est
nécessaire que les usagers possèdent un compte dans un contexte
multi-usagers afin de gérer l'accessibilité aux ressources. Au
minimun, un compte est constitué d'un répertoire privé et
d'une entrée dans le fichier /etc/passwd.
Ce chapitre présente les notions de base associées aux
accès par l'intermédiaire d'un compte. Il donne, entre-autres,
des informations sur l'administrateur du système. C'est le responsable
des ordinateurs. Ensuite, on peut voir le concept de répertoire
privé associé à un compte. Finalement, l'auteur renseigne
le débutant sur la manière typique d'ouvrir et de fermer une
session de travail sous Unix.
La majorité des informations concernant un usager se retrouve dans un
fichier qui se nomme « passwd ». Ce fichier se trouve dans le
répertoire /etc[1]. Comme exemple,
prenons un usager qui s'appelerait « laforge ». Voici la ligne dans le fichier
/etc/passwd qui corresponderait à son compte:
laforge:VByALL2dcWRFA:501:100:Laforge Normand:/home/laforge:/bin/tcsh
Cette entrée est divisée en champs séparés par des
caractères « : » dont voici la signification.
laforge : c'est le nom d'usager (« login name »). Ce champs est
utilisé par le système pour reconnaître la personne et
ainsi contrôler ses permissions d'accès à des fichiers ou des
services. Contrairement à la vie réelle, ce nom doit être
unique sur la machine ou même sur le réseau local dans la plupart des
cas. Le détenteur d'un compte doit être identifié sans
ambiguité par le système pour des raisons de
sécurité, de gestion et de communication. Par convention, le nom
d'usager est toujours formé de lettre minuscules et/ou de chiffres[2].
VByALL2dcWRFA : il s'agit d'une représentation encodée du
mot de passe (« password ») du compte en question. Celui que l'usager entre au
clavier est encodé à l'aide d'une fonction (dont l'inverse est
supposément impossible à établir...) et comparé
avec ce champ. Donc pour
accéder au compte de « laforge » sur la machine en question, il suffit de
connaître son nom d'usager et son mot de passe. Il est à noter que
le système fait la distinction entre les majuscules et les minuscules
donc les lettres « A » et « a » ne sont pas les mêmes lettres lorsqu'on tape
son mot de passe au clavier (Pour plus de renseignements, voir le chapitre
« Sécurité »).
501 : c'est le numéro d'identification de l'usager (« user
id »). Il est utile au système, car il fait correspondre ce
numéro à un compte pour gérer les accès. Par
exemple, dans les inodes du système de fichiers, on retrouve ce
numéro dans le champ qui représente le propriétaire.
100 : chaque usager fait partie d'un groupe. Ce concept est utile quand
on veut donner certaines permissions particulières à des
personnes qui travaillent sur un projet et qui doivent avoir accès
à certains fichiers, par exemple. La notion de groupe permet de classer
les types d'usagers avec les permissions qui s'y rattachent. Le système
Unix fait correspondre le compte à un groupe avec ce numéro. Ce
chiffre est celui qui est présent dans les inodes et qui
représente le groupe auquel le fichier appartient.
Laforge Normand : c'est le nom du détenteur du compte.
Ce champ peut également contenir d'autres informations comme le bureau
de l'usager (son numéro, par exemple), son numéro de
téléphone au bureau et à la maison. Ces sous-champs
seraient alors séparés par des virgules.
/home/laforge : c'est le répertoire privé de l'usager.
C'est aussi le répertoire de travail par défaut lorsqu'on ouvre
une session de travail « logging in ».
/bin/tcsh : pour terminer, le dernier champ représente
l'interpréteur de commandes (voir le chapitre sur ce sujet) par
défaut (« login shell ») qui est lancé à l'ouverture d'une
session de travail.
L'organisation du fichier /etc/passwd pourrait être différente sur
certaines machines où le système de « shadow password » ou NIS est
installé. Ces systèmes ne seront pas expliqués dans ce
manuel mais servent respectivement à augmenter la sécurité
et à distribuer l'information sur un réseau.
Toutes les machines Unix ont une entrée dans le fichier /etc/passwd qui correspond à l'usager « root ». C'est l'administrateur du système. Il ne faut pas le confondre avec le répertoire qui est parent de tous les fichier et qui porte aussi le nom de « root », représenté par le caractère « / ». L'usager « root » a tous les droits possibles sur l'ordinateur et peut créer ou détruire des fichiers ou des comptes entiers. Il est aussi la personne ressource en cas de problèmes comme l'oubli d'un mot de passe, par exemple. C'est aussi lui qui fait la sauvegarde des données, l'installation de logiciels, etc.
4.3 Le répertoire privé « home directory »Comme mentionné plus haut, tous les comptes sont associés à un répertoire privé. L'usager est libre de gérer son répertoire comme il l'entend. Il peut ainsi créer une arborescence de fichiers et de répertoires à partir de son répertoire personnel. L'espace disque utilisé peut être limité par la capacité du disque ou par un système de quota. Un système de quota est un outil de gestion qui existe pour empêcher les abus et qui est géré par l'usager « root ». L'administrateur peut ainsi (grâce au quota) décider que l'espace disque maximal utilisé par un usager précis sera d'un certain nombre d'octets.
4.4 Ouvrir une session « logging in »Pour ouvrir une session, l'usager doit entrer son nom d'usager et mot de passe.
Voici un exemple d'ouverture de session par l'usager « heidi ».
Avant de quitter un ordinateur, il faut TOUJOURS fermer sa session de travail.
Pour cela, il suffit d'entrer la commande « logout »
[3]
comme dans l'exemple suivant:
[1] Chaque ligne de ce fichier correspond
à un compte.
[2] Plus souvent des lettres minuscules
uniquement.
[3] Cette commande n'est pas suffisante si
l'ordinateur est déjà dans l'environnement X Window avant
d'ouvrir une session de travail.