Gestion du compte utilisateur
Introduction
Bien que les utilisateurs ordinaires ne possèdent pas les droits nécessaires à l’administration du système, ils peuvent néanmoins modifier leur environnement personnel.
L’utilisateur peut personnaliser la définition de son compte (mot de passe, nom complet, shell par défaut), modifier le comportement du shell qu’il emploie (variables d’environnement, alias...), adapter l’interface graphique à ses goûts, et bien sûr organiser ses fichiers dans les répertoires prévus à cet effet.
Modification du compte
Les comptes utilisateur sont créés par l’administrateur pendant ou après l’installation du système. Leurs définitions contiennent des valeurs par défaut que l’utilisateur a le droit de visualiser et modifier à l’aide des commandes suivantes.
Les commandes finger et who, décrites dans le chapitre Connexion et premières commandes, retournent plusieurs informations concernant les comptes utilisateur. Le fichier /etc/passwd contient une grande partie de ces informations et ne peut être modifié que par root.
Exemple de fichier /etc/passwd :
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
nicolas:x:1000:1000:Nicolas Pons:/home/nicolas:/bin/bash
linus:x:1004:1000:Linus Torvalds:/home/linus:/bin/bash
richard:x:1005:1000:Richard M. Stallman:/home/richard:/bin/bash
ken:x:1001:1000:Ken Thompson:/home/ken:/bin/bash
dennis:x:1002:1000:Dennis Ritchie:/home/dennis:/bin/bash
eric:x:1006:1000:Eric S. Raymond:/home/eric:/bin/bash
alan:x:1007:1000:Alan Cox:/home/alan:/bin/bash
gordon:x:1003:1000:Gordon E. Moore:/home/gordon:/bin/bash
Chaque ligne de ce fichier caractérise un compte utilisateur et les sept champs séparés par : (deux-points) sont :
-
Le login (ou nom d’utilisateur) :...
Données personnelles
Les données utilisateur - ou plus exactement les fichiers contenant les données des utilisateurs - sont stockés à différents endroits sur le système de fichiers ; connaître leur emplacement est important lorsqu’on désire sauvegarder l’ensemble des données d’un utilisateur sans omettre certains fichiers.
1. /home
Les fichiers appartenant aux utilisateurs sont dans leur majorité stockés dans les répertoires personnels associés. Le répertoire personnel d’un utilisateur est généralement un sous-répertoire de /home qui porte le nom du compte.
Tous les fichiers de configuration des applications exécutées par l’utilisateur sont stockés ici. Ces fichiers de configuration portent un nom commençant habituellement par un point ainsi ils ne risquent pas d’être listés par défaut avec la commande ls.
[nicolas]$ pwd
/home/nicolas
[nicolas]$ ls
Bureau fic Modèles Public Vidéos
Documents Images Musique Téléchargements
[nicolas]$ ls -a
. .esd_auth Images .pulse-cookie ...
Environnement shell
Lorsque l’utilisateur se connecte au système sur un terminal texte, plusieurs fichiers sont lus au lancement du shell pour définir l’environnement de travail.
1. /etc/profile
Le fichier /etc/profile est un script shell qui est exécuté en premier lors de la connexion à un terminal texte. Ce fichier contient les variables d’environnement de base de tous les processus, et seul l’administrateur système peut le modifier. En outre, ce fichier exécute des commandes dans l’environnement du shell de connexion.
Ce script n’est interprété qu’à la connexion de l’utilisateur.
2. ~/.bash_profile, ~/.bash_login, ~/.profile
Après lecture du fichier /etc/profile, Bash recherche le fichier ~/.bash_ profile, ~/.bash_login ou ~/.profile dans cet ordre et exécute les commandes contenues dans le premier de ces scritps trouvé et accessible en lecture.
Ce fichier a la même fonction que le fichier /etc/profile, à la différence près qu’il peut être modifié par l’utilisateur pour changer son propre environnement.
Comme le fichier précédent, ce script n’est interprété qu’à la connexion ; les modifications apportées ne sont prises en compte qu’après reconnexion de l’utilisateur.
3. ~/.bashrc
Le fichier ~/.profile n’est...
Environnement graphique
La configuration de l’environnement graphique dépend du bureau utilisé (KDE, GNOME...) et des applications qui s’y trouvent. Ceci dit, celle-ci est aisée car elle s’effectue à travers des outils ergonomiques et conviviaux.
Les menus proposés par les environnements de bureau permettent d’accéder à ces outils de configuration.
Par exemple, sous KDE le centre de configuration (systemsettings5) :
GNOME dispose d’un "centre de contrôle" (gnome-control-center) regroupant la plupart des outils de configuration de l’environnement :
Même si l’environnement et les applications graphiques sont paramétrés en grande partie à l’aide d’outils graphiques, les fichiers de configuration produits par ces outils restent des fichiers texte présents dans le répertoire personnel de l’utilisateur. Il est facile de les modifier avec un éditeur comme Vi ou de les recopier sur d’autres comptes.
Sauvegarde des données utilisateur
La sauvegarde de l’ensemble des données sur un système Unix - y compris les fichiers appartenant aux utilisateurs - est généralement du ressort de l’administrateur. C’est pourquoi le thème de la sauvegarde est abordé en détail dans les ouvrages d’administration système sous Linux.
Cependant, un utilisateur peut souhaiter effectuer lui-même une sauvegarde de ses données, ne serait-ce que pour faciliter le transport et la distribution de ses fichiers sur médias amovibles (disquettes, clé USB...).
Pour cela, le format de sauvegarde le plus répandu dans le monde Linux est le format d’archive tar associé au format de compression gzip.
tar
La commande tar est un outil d’archivage originellement prévu pour fonctionner avec les lecteurs de bandes magnétiques (tape archiver). Il est très utilisé dans le monde Unix et particulièrement sous GNU/Linux où les sources des logiciels libres sont archivées, avant tout, dans ce format.
Pour compatibilité avec d’autres Unix, la commande GNU tar accepte, en plus des options longues, les options courtes (monocaractère) préfixées ou non du caractère -.
Une des options suivantes est obligatoirement renseignée pour indiquer à la commande le type d’action à entreprendre :
c, --create |
Création d’une archive. |
r, --append |
Ajout de fichiers en fin d’archive. |
u, --update |
Ajout uniquement des fichiers plus récents que l’archive, utile pour des sauvegardes incrémentales. |
x, --extract, --get |
Extraction des fichiers de l’archive. |
t, --list |
Affichage de la TOC (Table Of Contents) de l’archive : liste des fichiers contenus dans l’archive. |
D’autres options peuvent...
Exercice
Exercice
Sauvegardez l’ensemble des fichiers présents dans votre répertoire personnel dans une archive compressée à l’aide de la commande tar.
Vérifiez ensuite son contenu à l’aide d’un outil graphique de votre choix.
Solution
Il faut veiller à ne pas créer l’archive dans le même répertoire que celui qui est archivé. Dans l’exemple, l’archive est sauvegardée dans le répertoire /tmp :
[nicolas]$ cd
[nicolas]$ tar cvzf /tmp/sauvegarde.tar.gz .
./
./Vidéos/
./Documents/
./Musique/
./Téléchargements/
./.bash_history
./.config/
./.config/autostart/
./.config/user-dirs.locale
./.config/user-dirs.dirs
./.config/libreoffice/
...
En utilisant le gestionnaire d’archives file-roller de GNOME, on retrouve bien l’ensemble des fichiers du répertoire personnel :