chmod
: changer les bits du mode fichier
Utilisation (mode octal):
chmod <octal-mode> files...
Utilisation (mode symbolique):
chmod <references><operator><modes> files..
references
est une combinaison des lettres ugoa
, qui spécifient quel utilisateur l'accès au files
sera modifié:
u
l'utilisateur qui le possède
g
autres utilisateurs dans le file
groupe de
o
autres utilisateurs n'appartenant pas au groupe du fichier
a
tous les utilisateurs
S'il est omis, il s'applique par défaut à tous les utilisateurs, mais seules les autorisations autorisées par le umask
sont modifiées.
operator
est l'un des personnages +-=
:
+
ajouter les bits de mode de fichier spécifiés aux bits de mode de fichier existants de chaque file
-
supprime les bits de mode de fichier spécifiés aux bits de mode de fichier existants de chaque file
=
ajoute les bits spécifiés et supprime les bits non spécifiés, à l'exception des bits setuid
et setgid
définis pour les répertoires, sauf indication contraire explicite.
mode
se compose d'une combinaison de lettres rwxXst
, qui spécifient quel bit d'autorisation doit être modifié:
r
lis
w
écrire
x
exécuter (ou rechercher des répertoires)
X
exécuter / rechercher uniquement si le fichier est un répertoire ou si le bit d'exécution est déjà défini pour un utilisateur
s
setuid ou setgid (selon le spécifié references
)
t
indicateur de suppression restreinte ou bit collant
Alternativement, le mode
peut consister en l'une des lettres ugo
, auquel cas le mode correspond aux autorisations actuellement accordées au propriétaire ( u
), au membre du file
groupe ( g
) ou aux autorisations des utilisateurs dans aucune des catégories précédentes ( o
).
Les différents morceaux chmod
expliqués:
- Contrôle d'accès (voir aussi
setfacl
)
rwx
- lire (r), écrire (w) et exécuter / croiser (x) les autorisations.
- La lecture (r) affecte si un fichier peut être lu ou si un répertoire peut être répertorié.
- L'écriture (w) affecte si un fichier peut être écrit ou si un répertoire peut être modifié (fichiers ajoutés, supprimés, renommés).
- Execute (x) affecte si un fichier peut être exécuté, utilisez-le pour les scripts (voir
#!
) et d'autres fichiers exécutables.
- Cross (x) affecte si un répertoire peut être parcouru.
s
et t
- sticky bit (t), et setgid (s) sur les répertoires
- Le bit collant affecte uniquement les répertoires. Empêche quiconque, sauf le propriétaire du fichier et root, de supprimer des fichiers dans le répertoire.
- le bit setgid sur les répertoires, les nouveaux fichiers et répertoires auront le groupe défini sur le même groupe, et les nouveaux répertoires auront leur bit setgid défini (voir également les valeurs par défaut dans setfacl).
s
- setuid, setgid, sur les fichiers exécutables.
- Cela peut nuire à la sécurité si vous ne savez pas ce que vous faites.
- Lorsqu'un exécutable est exécuté, si l'un de ces bits est défini, l'utilisateur / groupe effectif de l'exécutable deviendra celui du fichier. Ainsi, le programme s'exécute en tant que cet utilisateur. voir
setcap
pour une façon plus moderne de le faire.
chattr
: modifier les attributs de fichier
Usage:
chattr <operator><attribute> files...
operator
est l'un des caractères +-=
: * +
ajoute les attributs sélectionnés pour être à l'existant attributes
des files
* -
supprime les sélectionnés attributes
* =
écrase l'ensemble actuel des attributs des fichiers avec les spécifiés attributes
.
attribute
est une combinaison des lettres acdeijstuADST
, qui correspondent aux attributs:
a
ajouter seulement
c
comprimé
d
pas de vidage
e
format d'étendue
i
immuable
j
journalisation des données
s
suppression sécurisée
t
pas de fusion de queue
u
undeletable
A
pas de atime
mises à jour
D
mises à jour d'annuaire synchrones
S
mises à jour synchrones
T
haut de la hiérarchie des répertoires
Utilisation (attribut défini):
setfattr -n <name> -v <value> files...
Utilisation (supprimer):
setfattr -x <name> files...
name
est le nom de l'attribut étendu à définir ou à supprimer
value
est la nouvelle valeur de l'attribut étendu
setfacl
: modifier les listes de contrôle d'accès aux fichiers
Usage:
setfacl <option> [default:][<target>:][<param>][:<perms>] files...
option
doit comprendre l'un des éléments suivants:
--set
définir l'ACL d'un fichier ou d'un répertoire, en remplaçant l'ACL précédente
-m
| --modify
modifier l'ACL d'un fichier ou d'un répertoire
-x
| --remove
supprimer les entrées ACL d'un fichier ou d'un répertoire
target
est l'une des lettres ugmo
(ou la forme plus longue illustrée ci-dessous):
u
, users
autorisation d'un utilisateur nommé identifié par param
, par défaut le propriétaire du fichier uid
s'il est omis
g
, group
autorisation d'un groupe nommé identifié par param
, par défaut au groupe propriétaire uid
si omis
m
, mask
masque des droits effectifs
o
, other
autorisations d'autrui
perms
est une combinaison des lettres rwxX
, qui correspondent aux autorisations:
r
lis
w
écrire
x
exécuter
X
exécuter uniquement si le fichier est un répertoire ou dispose déjà d'une autorisation d'exécution pour un utilisateur
Il perms
peut également s'agir d'un chiffre octal ( 0
- 7
) indiquant l'ensemble des autorisations.
Usage:
setcap <capability-clause> file
A se capability-clause
compose d'une liste de noms de capacités séparés par des virgules, suivie d'une liste de paires d'indicateurs-opérateurs.
Les opérateurs disponibles sont =
, +
et -
. Les indicateurs disponibles sont e
, i
et p
qui correspondent aux ensembles de capacités effectifs , héritables et autorisés .
L' =
opérateur augmentera les ensembles de capacités spécifiés et réinitialisera les autres. Si aucun indicateur n'est donné conjointement avec l' =
opérateur, tous les ensembles de capacités seront réinitialisés. Les opérateurs +
et -
augmenteront ou diminueront respectivement le ou les ensembles de capacités spécifiés.
Usage:
chcon [-u <user>] [-r <role>] [-t <type>] files...
utilisateur est l'utilisateur SELinux, tel que user_u
, system_u
ou root
.
le rôle est le rôle SELinux (toujours object_r
pour les fichiers)
type est le type de sujet SELinux
Usage:
chsmack -a <value> file
value
est le libellé SMACK à définir pour l' SMACK64
attribut de fichier étendu
setrichacl : changer la liste de contrôle d'accès riche.
Les richacl sont une fonctionnalité qui ajoutera des listes de contrôle d'accès plus avancées.
Actuellement un travail en cours, je ne peux donc pas vous en dire beaucoup à leur sujet. Je ne les ai pas utilisés.
Voir aussi cette question. Existe-t-il des ACL de système de fichiers plus avancés que les ACL «rwx» et POSIX traditionnels?
et la page de manuel
chmod