Archive pour janvier 2011
Créer un document ineffaçable sur le Bureau
J’ai cherché longtemps à pouvoir faire la chose suivante :
je voulais créer un document sur le bureau consultable par tous sans l’utilisation du sticky bit ( qui ‘fige’ le bureau ) mais qui ne soit pas effaçable par « monsieur tout le monde ». Cela peut etre utile de placer un document non effacable sur le Bureau comme un PDF tutoriel par exemple pour des newbees d’ubuntu.
Un document consultable par tous mais impossible à modifier ni déplacer dans la corbeille ni même supprimer sans les droits administrateurs.
La solution se trouve dans les attributs d’archivages avec l’option « i ». Toujours sous Gnu/linux Ubuntu biensure. Voici la métode
1. Placer vous avec votre terminal sur le bureau
cd /home/votre_nom_utilisateur/Bureau
2. Creer un document .txt avec dedans « bonjour, je suis consultable mais pas effacable graphiquement je dirais «
echo bonjour, je suis consultable mais pas effacable graphiquement je dirais > test.txt
echo « affiche ce qui suit » dans ( > ) test.txt. sachant que si test.txt n’existe pas il sera créé et si il existe il sera écrasé.
3. Ensuite activez l’attribut « i » d’archivage au document
sudo chattr +i test.txt
pour enlever l’attribut faite » -i «
suid, sgid et sticky bit
SUID ( s )
Lorsque suid est activé, n’importe quel utilisateur peut executer le dit fichier avec les permissions du propriétaire, comme s’il était lui-même le propriétaire. Suid ne s’active que sur des fichiers. Pour activer suid :
sudo chmod u+s nom_du_fichier.xx
On utililise la commande chmod qui permet de changer les droits, le u signifie utilisateur, + signifie ajouter, s c’est l’abreviation de suid ou sgid.
Si vous souhaitez supprimer le suid, à la place du signe + mettez un -
sudo chmod u-s nom_du_fichier.xx
Attention à l’utilisation de suid, explication sur ce lien http://www.tofe.org/suid.php3
SGID ( s )
sur un fichier :
Même chose qu’avec suid mais cela concerne les groupes auquels les utilisateurs sont rattachés. Ainsi concernant un fichier Y, n’importe quels utilisateurs peut executer Y avec les droits du groupe auquel il appartient.
sudo chmod g+s nom_du_fichier.xx
sur un répertoire :
Ici le sgid signifie que tous les fichiers ou dossiers nouvellement créés dans le répertoire appartiennent au groupe propriétaire du répertoire. Si Bob créer un fichier auquel Alice et Oscar le vilain appartiennent, Bob est/reste propriétaire du fichier mais Alice et Oscar auront le droit de lire, modifier les données de Bob et pourront aussi creer des données.
sudo chmod g+s nom_du_repertoire
Sticky bit ( t )
sur un fichier :
Gnu/Linux n’en tient pas compte contrairement aux vieux système Unix. Ainsi le sticky activé indique à l’OS que le fichier sera utilisé fréquemment et sera ainsi stocké dans un fichier d’échange pour avoir la main dessus rapidement.
sur un répertoire :
Activé sur un répertoire le sticky bit aura pour effet d’interdire à quiquonque n’étant pas le proprétaire du fichier sa suppression. Cependant, il sera toujours possible de modifer le fichier d’un autre si l’on possède les droits nécessaires.
sudo chmod +t nom_du_repertoire