Lire les droits d'un fichier
Un concept essentiel sur Linux est la gestion des droits et donc de l'autorisation à exécuter une action sur un fichier ou un répertoire. Le système d'exploitation différencie trois types d'utilisateurs pour lesquels on peut définir des droits spécifiques:user: est le propriétaire du fichier, à savoir celui qui l'a crée ou l'utilisateur désigné par root,
group: est un groupe d'utilisateur,
all: tous les utilisateurs qui ne font pas partie d'un groupe.
Pour chaque identité définit ci-dessus, 3 droits peuvent être accordés à chaque groupe:
r (read): autoriser la lecture,
w (write): autoriser l'écriture,
x (execute) autoriser l’exécution de la ressource.
Dans un terminal Linux la commande ls -l permet d'afficher les droits d'un fichier ou d'un dossier.
total 1748
drwxr-xr-x 4 serverfile serverfile 4096 2011-09-19 11:41 all_info_res
drwxr-xr-x 8 serverfile serverfile 4096 2013-05-23 12:01 apps
drwxr-xr-x 2 serverfile serverfile 4096 2013-04-22 15:45 Bureau
drwxrwxr-x 6 serverfile serverfile 4096 2011-10-10 14:40 dev_php
Les droits pour chaque ressource sont représentés sous forme de 9 caractères à savoir les 3 droits pour chacun des 3 groupes d'utilisateurs.
Modifier les autorisations d'un fichier
La commande chmod permet de changer les droits d'accès à un fichier ou à un répertoire. Pour les différent cas de figure, je vous invite à consulter la documentation (cf man chmod).D'une manière générale, la commande chmod comporte 3 paramètres:
group: définit le groupe d'utilisateur,
droit: indique le droit d'accès à ajouter ou à supprimer (r, w, x ou format numérique),
ressource: renseigner le nom de la ressource.
Dans l'exemple suivant, nous allons ajouter les droits d’exécution à une application java nommée app.jar à l'ensemble des utilisateurs.
La gestion des droits d'accès est un élément de base dans tous les systèmes Linux, Windows s'en est d'ailleurs inspiré à partir de la version Seven. Par contre, il faut faire très attention lorsque l'on modifie les droits des fichiers dans Linux, mettre des chmod 777 sans avoir pris le temps de comprendre le blocage est très dangereux !
En général, il est préférable de définir au préalable une politique d'administration de son poste de travail avant de modifier les droits d'accès aux fichiers.