Droits & sticky bit

roger -  
 roger -
bjr

je suis en train de lire / apprendre avec un livre sur linux les droits sur les fichiers et repertoires.

mais j'ai pas compris un truc sur le "stickybit".

j'ai fait un test :
>su toto
passwd:
> touch FILETEST
>chmod 1606 FILETEST
>exit
>echo titi >> FILETEST
permission denied
>


hors d'après ce que j'ai compris le stikybit ça empeche qlqu'un qui a les droits d'ecritures sur le repertoire ou le fichier de l'effacer mais pas d'ecrire dedans ? non ?

SVP une explication avec un exemple en live si vous pouvez

merci

4 réponses

  1. kmf31 Messages postés 1564 Statut Contributeur 501
     
    C'est pour de repertoires comme /tmp/... et similaires ou tout le monde a le droit d'ecrire et de creer de nouveaux fichiers. A ma comprehension ca empeche qu'un autre utilisateur efface un fichier precedamment cree par toi dans /tmp/... Par contre pour la modification simple c'est toujours impossible sans ou avec sticky-bit.

    Si on fait "ls -ld /tmp" on doit voir un truc comme ca:
    drwxrwxrwt    8 root     root         7168 Jun 13 15:07 /tmp

    Le sticky bit c'est le petit "t" a la fin. Si ca manquait ca afficherait:
    drwxrwxrwx    8 root     root         7168 Jun 13 15:07 /tmp

    Cependant si tu as ca, c'est une faute et aussi une faille de securite. Il y a de raisons de securite subtiles necessitant le sticky bit pour /tmp/..., /usr/tmp/..., /var/tmp/... etc.

    Apres on peut ajouter (supprimer) le sticky bit par:
    chmod +t /repertoire

    ou par:
    chmod -t /repertoire


    Ce facon generale, si tu as un repertoire ou un disque pour de donnees pour lequel tu souhaites que tout utiliser peut creer un sous-repertoire a lui et y deposer de fichiers, il faut mettre les memes permissions que pour /tmp avec le sticky-bit, donc:
    chmod a+rwxt /repertoire

    Comme ca tout le monde a acces a ce repertoire sans avoir la possiblite de pouvoir boussiler les fichiers des autres utilisateurs (en principe).
    3