Vous êtes sur la page 1sur 5

Les métacaractères Les métacaractères Les métacaractères

• Outils permettant d’optimiser les actions dans une commande • Outils permettant d’
’optimiser les actions dans une commande
• Outils permettant d’
’optimiser les actions dans une commande
– Les métacaractères sont symbolisés par les caractères suivants :
– Métacaractère [ ]
*, ?, [ ], { } lister la liste de fichiers suivante : toto31.txt, toto32.txt, …toto39.txt
Définition d’un intervalle de lettre ou chiffres.
Remplace 1 seul caractère
– Métacaractère * Quelle est la bonne commande ?
• Remplace n’importe quelle suite de caractères (vide y compris) Exemples : ls toto3[1-9].txt
Exemple : lister tous les fichiers dont la 1ere lettre commence par a lister tous les fichiers dont la première lettre commence par a, b ou c ls [toto31-toto39].txt
ls a* ls [abc]* ou ls [a-c]* (ou ls {a,b,c}*)
lister la liste de fichiers toto00.txt, toto01.txt, … toto39.txt :
– Métacaractère ? lister tous les fichiers qui se termine par 7, 8 et 9
ls toto??.txt
• Remplace 1 et 1 seul caractère ls *[7-9]
Exemple : lister tous les fichiers dont la dernière lettre est un et un
ls toto[0-3][0-9].txt
seul caractère (tp1, tp2, tp3,… mais pas tp, tp12, tp1.txt …) lister tous les fichiers qui ne se termine pas par 6, 7 ,8, 9
ls tp? ls *[!6-9] ou ls *[^6-9]
18 19 20

Commandes/caractères spéciaux Utilisateurs et permissions


• Unix distingue 3 catégories d’utilisateurs
• Ctrl-C (^C) arrête un processus – User (u)

Linux
• Ctrl-D exit (logout) (utilisation non conseillé) – Group (g)
– Others (o)
• Job & exécute le processus en background (arrière-plan)
• User (u)
• Ctrl-Z suspend un processus Droits et utilisateurs – Désigne la personne qui a créé le fichier/répertoire, c’est le
• bg bascule le processus en background (arrière-plan) propriétaire (peut être modifié par la suite)
• fg permet de reprendre (en premier plan) l'exécution du
job suspendu • Group (g)
– Désigne les membres du groupe d’utilisateurs
si on a oublié &, faire Ctrl-Z puis bg • prof, étudiants, … pour un établissement d’enseignement.
• direction, comptabilité, infographie, … pour une société

• Ctrl-L rafraichit l'écran (clear , reset) • Others (o)


– Désigne tous les autres utilisateurs
21 22 23

1
Utilisateurs et permissions (suite) Utilisateurs et permissions (suite) Utilisateurs et permissions (suite)

• Unix distingue 3 types de permissions • Sémantique des permissions


– r : read => permission de lecture
– w : write => permission d’écriture
• Types de fichiers Fichier r Autorise la consultation
– x : exécution => permission d’exécution – Affichage
– - : fichier normal – copie
• Visualiser les permissions sur les fichiers/répertoires – d : répertoire w Autorise la modification
– modification du contenu
La commande pour visualiser les permissions est : ls -l – suppression du fichier
– changement de nom
Type Propriétaire Groupe Autres Nom Groupe Nom x Autorise l’exécution
U G O propriétaire fichier
– le fichier doit être un programme
d rwx r-x r-x ubuntu prof cours
- rwx rwx rwx ubuntu prof img.jpg
- rwx --- --- ubuntu prof tp_unix.txt

24 25 26

Utilisateurs et permissions (suite) Utilisateurs et permissions (suite) Utilisateurs et permissions (suite)

• Sémantique des permissions • Modification des droits


– La commande chmod (change mode) permet de modifier et • Syntaxe en forme condensée
Répertoire r Autorise la consultation d’attribuer des droits. chmod qui&quoi (3 chiffres) fichier/rep
– affichage du contenu (ls)
w Autorise la modification • Syntaxe
1er chiffre : user
– modification du nom (mv) chmod qui(u g o) quoi(+ - =) permission(r w x) fichier/rep
– ajout/suppression du contenu (rm) 2ème chiffre : group
a = all = ugo (chmod +r = chmod a+r = chmod ugo+r)
– suppression du répertoire (rm) 3ème chiffre : other
Exemple 1 : retirer les droits d’écriture et d’exécution pour le
x Autorise la traversée
groupe et les autres sur le fichier img.jpg
– utilisation dans un chemin d’accès à une
chmod go-wx img.jpg 1 : exécution
entrée (fichier/répertoire) (cd)
2 : écriture
Exemple 2 : ajouter les droits de lecture et d’écriture pour le 4 : lecture
groupe sur le fichier tp_unix.txt
chmod g+rw tp_unix.txt
27 28 Ex: chmod 764 toto.sh 29

2
Utilisateurs et permissions (suite) Utilisateurs et permissions (suite) Droits courant pour un fichier
(non exécutable)
• La commande chmod permet de modifier l'attribution des • chmod 640 file donne les droits:
droits d'un fichier ou d'un dossier. – rw (4+2) à user, r (4) à group et aucun droit (0) à others. • chmod 666 file (fichier non exécutable public)
• Pour cela on attribue 3 nombres de 0 à 7 correspondant • chmod 775 file donne les droits: • chmod 644 file (fichier non exécutable public,
aux 3 droits : – rwx (4+2+1) à user et group et rx (4+1) à others. modifiable par soi uniquement)
– utilisateur propriétaire (u),
– utilisateurs membres du groupe propriétaire (g), • chmod 600 file (fichier privé)
– autres utilisateurs (o), • chmod 400 file (fichier privé en lecture seule)
• sachant que : • chmod 444 file (fichier public en lecture seule)
– r vaut 4, w vaut 2, x vaut 1 ;
– on somme les droits que l'on veut cumuler

30 31 32

Droits courant pour un dossier Droits courant pour un dossier Création d’un fichier et command umask
(et de son contenu) (et de son contenu)
• Caractéristiques
– Un fichier lors de sa création à la valeur 0666
• chmod 777 dir (dossier public) • chmod -R Changer les droits de tout un – Le umask spécifie les permissions devant être
• chmod 755 dir (dossier public, modifiable par soi répertoire soustrait à celles des fichiers nouvellement
uniquement) • chmod -R XXX dir affecte les droit XXX à dir et à crées.
• chmod 700 dir (dossier privé) tous les fichiers et sous-dossiers – Le umask a une valeur par défaut de 0022

• chmod 500 dir (dossier privé en lecture seule) de dir (récursivement).


Exemple : le fichier test à le droit 0666 on lui
• chmod 555 dir (dossier public en lecture seule) applique le umask => 0666 – 0022= 0644

• Commande
– umask nombre_de_4_chiffre_respectant
33 34 les_permissions : permet d’attribuer un umsak

3
Droit SUID Droit SUID Droit SGID

• Ce droit s'applique aux fichiers exécutables, il permet • Son flag est la lettre s ou S qui vient remplacer le x du • Fichiers
d'allouer temporairement à un utilisateur les droits du propriétaire. • Ce droit fonctionne comme le droit SUID, mais appliqué aux
propriétaire du fichier, durant son exécution. groupes. Il donne à un utilisateur les droits du groupe auquel
• En effet, lorsqu'un programme est exécuté par un utilisateur, • C'est un s si le droit d'exécution du propriétaire est présent, appartient le propriétaire de l'exécutable et non plus les droits
les tâches qu'il accomplira seront restreintes par ses propres ou un S sinon. Il se place donc comme ceci : du propriétaire.
droits, qui s'appliquent donc au programme. • Répertoires
• Lorsque le droit SUID est appliqué à un exécutable et qu'un • ---s------ ou ---S------ • Ce droit a une tout autre utilisation s'il est appliqué à un
utilisateur quelconque l'exécute, le programme détiendra répertoire.
alors les droits du propriétaire du fichier durant son
exécution. • Un fichier avec les droits -rwxr-xr-x auquel on ajoute le droit
• Bien sûr, un utilisateur ne peut jouir du droit SUID que s'il SUID aura donc la notation -rwsr-xr-x
détient par ailleurs les droits d'exécution du programme. • Le droit SUID possède la valeur octale 4000.
36
Exemple : - r w s r - x r - x correspond à 4755. 37 38

Droit SGID Droit SGID


Sticky Bit
• Ce droit (traduction bit collant) est utilisé pour manier de façon
• Normalement, lorsqu'un fichier est créé par un utilisateur, il en • Comme le droit SUID, il vient remplacer le flag x, mais celui plus subtile les droits d'écriture d'un répertoire. En effet, le
est propriétaire, et un groupe par défaut lui est appliqué des droits du groupe, et la capitale indique le droit d'exécution droit d'écriture signifie que l'on peut créer et supprimer les
(généralement users si le fichier a été créé par un utilisateur, x caché, elle est présente s'il n'est pas alloué. fichiers de ce répertoire. Le sticky bit permet de faire la
et root ou wheel s'il a été créé par root). différence entre les deux droits.
• Cependant, lorsqu'un fichier est créé dans un répertoire • ------s--- ou ------S--- Un fichier avec les droits -rwxr--r-- auquel • Lorsque ce droit est positionné sur un répertoire, il interdit la
portant le droit SGID, alors ce fichier se verra attribuer par on ajoute le droit SGID aura donc la notation -rwxr-Sr— suppression d'un fichier qu'il contient à tout utilisateur autre
défaut le groupe du répertoire. De plus, si c'est un autre que le propriétaire du fichier. Néanmoins, il est toujours
répertoire qui est créé dans le répertoire portant le droit SGID, possible pour un utilisateur possédant les droits d'écriture sur
ce sous-répertoire portera également ce droit. • Le droit SGID possède la valeur octale 2000.
Exemple : - r w x r - S r - - correspond à 2744. ce fichier de le modifier (par exemple de le transformer en un
fichier vide).
• La création de nouveaux fichiers est toujours possible pour
tous les utilisateurs possédant le droit d'écriture sur ce
39 40 répertoire. 41

4
Sticky Bit Sticky Bit Sticky Bit
• Pour les fichiers, l'utilisation est tout autre. Le bit collant • Son flag est le t ou T, qui vient remplacer le droit d'exécution x • Exemple d'utilisation
(sticky bit) indique alors que ce fichier doit encore rester des autres utilisateurs que le propriétaire et ceux appartenant • Sur certains systèmes UNIX, le sticky bit est utilisé pour le
en mémoire vive après son exécution. au groupe du fichier, de la même façon que les droits SUID et répertoire /tmp, qui doit être accessible en écriture par tous
• Le but était d'améliorer les performances en évitant de SGID. La capitale fonctionne aussi de la même façon, elle est les utilisateurs, sans que ceux-ci se suppriment leurs fichiers
charger/décharger un fichier de la mémoire . présente si le droit d'exécution x caché n'est pas présent. les uns les autres : drwxrwxrwt 86 root root 20480 tmp
• Le terme sticky (collant) voulait dire que le fichier restait collé • ---------t ou ---------T Un fichier avec les droits -rwxr-xr-x auquel
en mémoire. on ajoute le droit sticky bit aura donc la notation -rwxr-xr-t
• Le droit sticky bit possède la valeur octale 1000.
Exemple : - r w x r - x r - t correspond à 1755.

42 43 44

SUID et SGID et bit sticky


Composition numérique des permissions spéciales Composition numérique des permissions spéciales

Bit SUID et SGID


– suid = bit identifiant le propriétaire , guid = bit identifiant groupe L’ensemble des autorisations spéciales est stocké sur le 1 bit (0000) L’ensemble des autorisations spéciales est stocké sur le 1 bit (0000)
• Caractéristiques utilisé dans la forme numérique de l’attribution des droits de la utilisé dans la forme numérique de l’attribution des droits de la
commande chmod et prend les valeurs 4, 2, 1 et 0. commande chmod et prend les valeurs 4, 2, 1 et 0.
– S’applique aux commandes
– Permet d’utiliser les droits d’un utilisateur ou d’un groupe
• Caractéristiques • Caractéristiques
– Possède la même place que le bit x(exécution)*
• Commande
– Suid = 4,Guid = 2,Sticky = 1 – Suid = 4,Guid = 2,Sticky = 1,Raz = 0
– chmod u+s fichier_ou_répertoire pour SUID
– Possibilité de composition d’autorisation spéciales – Possibilité de composition d’autorisation spéciales
– chmod g+s fichier_ou_répertoire pour GUID
Bit « sticky*»
Exemple : Exemple :
• Caractéristiques
– Droit réservé à root
chmod 6644 /etc/passwd chmod 6644 /etc/passwd
– S’applique aux exe
– S’applique au fichier, répertoire(impossibilité de détruire le
fichier ou répertoire si on n’est pas root) passwd s’exécute en s’appuyant sur l’environnement de passwd s’exécute en s’appuyant sur l’environnement de
l’utilisateur et du groupe propriétaire du fichier l’utilisateur et du groupe propriétaire du fichier
• Commande
– chmod +t fichier ou répertoire *