Si votre répertoire personnel est privé, personne d'autre ne peut accéder à aucun de vos fichiers. Pour accéder à un fichier, un processus doit avoir l'autorisation d'exécution sur tous les répertoires du chemin d'accès dans l'arborescence à partir du répertoire racine. Par exemple, pour permettre à d' autres utilisateurs de lire /home/martin/public/readme
, les répertoires /
, /home
, /home/martin
et /home/martin/public
tous besoin d'avoir les autorisations d??x??x??x
(il peut être drwxr-xr-x
, ou drwx--x--x
ou une autre combinaison), et en plus le fichier readme
doit être lisible par ( -r??r??r??
).
Il est courant d'avoir des répertoires personnels avec le mode drwxr-xr-x
(755) ou au moins drwx--x--x
(711). Le mode 711 (autorisation d'exécution uniquement) sur un répertoire permet aux autres d'accéder à un fichier dans ce répertoire s'ils connaissent son nom, mais pas de répertorier le contenu du répertoire. Sous ce répertoire personnel, créez des sous-répertoires publics et privés comme vous le souhaitez.
Si vous ne voulez jamais que d'autres personnes lisent l'un de vos fichiers, vous pouvez créer votre répertoire personnel drwx------
(700). Si vous faites cela, vous n'avez pas besoin de protéger vos fichiers individuellement. Cela ne cassera rien d'autre que la capacité d'autres personnes à lire votre fichier.
Une chose courante qui peut casser, car c'est une instance d'autres personnes lisant vos fichiers, est si vous avez un répertoire tel que ~/public_html
ou ~/www
qui contient votre page Web. Selon la configuration du serveur Web, ce répertoire peut devoir être lisible par tout le monde.
Vous pouvez modifier les autorisations par défaut pour les fichiers que vous créez en définissant la valeur umask dans votre .profile
. L'umask est le complément des autorisations maximales d'un fichier. Les valeurs courantes incluent 022 (accessible en écriture uniquement par le propriétaire, lisible et exécutable par tout le monde), 077 (accès uniquement par le propriétaire) et 002 (comme 022, mais également accessible en groupe). Ce sont des autorisations maximales: les applications peuvent définir des autorisations plus restrictives, par exemple la plupart des fichiers finissent par être non exécutables car l'application qui les a créés n'a pas défini les bits d'autorisation d'exécution lors de la création du fichier.