Exercice 1 :
En utilisant les commandes mkdir, echo et cat, créez dans un nouveau répertoire
de nom "reptest" le fichier "bienvenue" contenant la ligne de commandes :
echo Bienvenue dans le monde LinuxExécutez ce fichier.
Correction exercice 1 :
kyle> mkdir reptest
kyle> cd reptest
kyle> cat >bienvenue
echo Bienvenue dans le monde Linux
<ctrl D>
kyle> chmod u+x bienvenue
kyle> ./bienvenue
Bienvenue dans le monde Linux
kyle>
Exercice 2 :
En utilisant les commandes mkdir, echo, cp, chmod, cat, créez un fichier que
vous pouvez lire, modifier et supprimer.
Correction exercice 2 :
kyle> mkdir rep
kyle> cd rep
kyle> echo lire modifier supprimer >ficha
kyle> ls l ficha
rw r r 1 xstra staff 24 Jan 28 16:08 ficha
kyle> cat ficha
lire modifier supprimer
kyle> echo et remodifier >>ficha § Permet de rajouter
§ (et remodifier) dans ficha.
kyle> cat ficha
lire modifier supprimer
et remodifier
kyle> rm ficha
kyle> ls
kyle>
Exercice 3 :
En utilisant les commandes mkdir, echo, cp, chmod, cat, créez un fichier que
vous pouvez lire et supprimer mais que vous ne pouvez modifier.
Correction exercice 3 :
kyle> mkdir rep
kyle> cd rep
kyle> echo lire supprimer >ficha
kyle> chmod u w ficha
kyle> ls –l ficha
r rw 1 kyle staff 15 Jan 28 11:54 ficha
kyle> cat ficha
lire supprimer
kyle> echo modifier >>ficha
ficha: permission denied
kyle> rm ficha
rm: Do you wish to override protection 460 for ficha? y
kyle>
Exercice 4 :
En utilisant les commandes mkdir, echo, cp, chmod, cat, créez un fichier que
vous pouvez lire mais que vous ne pouvez ni modifier, ni supprimer.
Correction exercice 4 :
kyle> mkdir rep
kyle> cd rep
kyle> echo lire >ficha
kyle> chmod u w ficha
kyle> chmod u w . § Modifie les protections du
§ répertoire courant (.) c’est à dire rep.
kyle> cat ficha
lire
kyle> echo modifier >>ficha
ficha: permission denied
kyle> rm ficha
rm: remove write protected file `ficha'? y
rm: cannot unlink `ficha': Permission denied
kyle> ls
ficha
kyle>
Exercice 5 :
Dans quel cas les permissions d’un fichier à sa création sont-elles différentes des
permissions fixées par umask ?
Correction exercice 5 :
Quand le nouveau fichier est créé par la commande :
cp fichier existant nouveau fichier, il prend les permissions du
fichier existant. Il ne faut pas oublier également que la permission x n'est
jamais attribuée à un fichier à sa création, même si umask le spécifie.
kyle> umask 007
kyle> touch fichtest
kyle> mkdir reptest
kyle> ls l reptest fichtest
total 8
rw rw 1 kyle staff 0 Jan 11 11:54 fichtest
drwxrwx 2 kyle staff 512 Jan 11 11:54 reptset
kyle>
Exercice 6 :
Si vous pouvez travailler avec un collègue appartenant au même groupe que vous,
modifiez les permissions du fichier créé à l’exercice "Bienvenue" ci-dessus de telle
façon que votre collègue puisse le lire et l’exécuter, mais ne puisse pas le modifier ni
le supprimer.
Pouvez-vous modifier les permissions de ce fichier de telle sorte que votre collègue
puisse le lire, le modifier et l’exécuter alors que vous-même ne pouvez pas le modifier?
Correction exercice 6 :
kyle> chmod g+x reptest
§ les membres de mon groupe peuvent faire cd reptest
kyle> cd reptest
kyle> chmod g=rx bienvenue
§ les membres de mon groupe peuvent lire et executer
§ le fichier bienvenue
kyle> ls l bienvenue
rwxr x 1 kyle staff 29 Jan 25 17:54 bienvenue
kyle> chmod u w,g+w bienvenue
§ Je ne peux plus modifier bienvenue, alors que
§ les membres de mon groupe peuvent le faire
kyle> ls l bienvenue
r xrwx 1 kyle staff 29 Jan 25 17:57 bienvenue
kyle>
Exercice 7 :
Comment est attribuée la permission d’effacer un fichier ? Créez un fichier que votre
collègue peut modifier mais pas supprimer et un autre qu’il peut supprimer mais pas
modifier. Est-il logique de pouvoir attribuer de tels droits ? Quelles sont les conséquences
pratiques de cette expérience ?
Correction exercice 7 :
La permission d’effacer un fichier n’est pas attribuée au fichier lui-même, mais
elle dépend uniquement du droit d’écriture dans le répertoire qui le contient. Voici
comment créer un fichier que les membres de mon groupe peuvent modifier mais
pas supprimer :
kyle> mkdir –m 750 rep1
kyle> cd rep1
kyle> echo bonjour >fich1
kyle> chmod g=rw fich1
Les membres de mon groupe ne peuvent pas supprimer fich1, mais ils peuvent
effacer tout son contenu par : cp /dev/null fich1
Maintenant, voici comment créer un fichier que les membres de mon groupe
peuvent supprimer mais pas modifier :
kyle> mkdir –m 770 rep2
kyle> cd rep2
kyle> echo bonjour >fich2
kyle> chmod g=r fich2
Les membres de mon groupe ne peuvent pas modifier fich2, mais ils peuvent le
supprimer ! Ceci est une gaffe techniquement faisable !
De telles permissions semblent illogiques. Les permissions linux sont codées sous la
forme rwx rwx rwx, ce qui conduit à 512 possibilités. Il est évident que parmi
les 512 possibilités, toutes ne correspondent pas à des permissions réellement intéressantes.
Tout ceci montre que l’utilisateur de Linux doit être vigilant non seulement
sur les permissions des fichiers, mais aussi sur les permissions des répertoires
dans lesquels il place des fichiers accessibles aux autres utilisateurs.
En utilisant les commandes mkdir, echo et cat, créez dans un nouveau répertoire
de nom "reptest" le fichier "bienvenue" contenant la ligne de commandes :
echo Bienvenue dans le monde LinuxExécutez ce fichier.
Correction exercice 1 :
kyle> mkdir reptest
kyle> cd reptest
kyle> cat >bienvenue
echo Bienvenue dans le monde Linux
<ctrl D>
kyle> chmod u+x bienvenue
kyle> ./bienvenue
Bienvenue dans le monde Linux
kyle>
Exercice 2 :
En utilisant les commandes mkdir, echo, cp, chmod, cat, créez un fichier que
vous pouvez lire, modifier et supprimer.
Correction exercice 2 :
kyle> mkdir rep
kyle> cd rep
kyle> echo lire modifier supprimer >ficha
kyle> ls l ficha
rw r r 1 xstra staff 24 Jan 28 16:08 ficha
kyle> cat ficha
lire modifier supprimer
kyle> echo et remodifier >>ficha § Permet de rajouter
§ (et remodifier) dans ficha.
kyle> cat ficha
lire modifier supprimer
et remodifier
kyle> rm ficha
kyle> ls
kyle>
Exercice 3 :
En utilisant les commandes mkdir, echo, cp, chmod, cat, créez un fichier que
vous pouvez lire et supprimer mais que vous ne pouvez modifier.
Correction exercice 3 :
kyle> mkdir rep
kyle> cd rep
kyle> echo lire supprimer >ficha
kyle> chmod u w ficha
kyle> ls –l ficha
r rw 1 kyle staff 15 Jan 28 11:54 ficha
kyle> cat ficha
lire supprimer
kyle> echo modifier >>ficha
ficha: permission denied
kyle> rm ficha
rm: Do you wish to override protection 460 for ficha? y
kyle>
Exercice 4 :
En utilisant les commandes mkdir, echo, cp, chmod, cat, créez un fichier que
vous pouvez lire mais que vous ne pouvez ni modifier, ni supprimer.
Correction exercice 4 :
kyle> mkdir rep
kyle> cd rep
kyle> echo lire >ficha
kyle> chmod u w ficha
kyle> chmod u w . § Modifie les protections du
§ répertoire courant (.) c’est à dire rep.
kyle> cat ficha
lire
kyle> echo modifier >>ficha
ficha: permission denied
kyle> rm ficha
rm: remove write protected file `ficha'? y
rm: cannot unlink `ficha': Permission denied
kyle> ls
ficha
kyle>
Exercice 5 :
Dans quel cas les permissions d’un fichier à sa création sont-elles différentes des
permissions fixées par umask ?
Correction exercice 5 :
Quand le nouveau fichier est créé par la commande :
cp fichier existant nouveau fichier, il prend les permissions du
fichier existant. Il ne faut pas oublier également que la permission x n'est
jamais attribuée à un fichier à sa création, même si umask le spécifie.
kyle> umask 007
kyle> touch fichtest
kyle> mkdir reptest
kyle> ls l reptest fichtest
total 8
rw rw 1 kyle staff 0 Jan 11 11:54 fichtest
drwxrwx 2 kyle staff 512 Jan 11 11:54 reptset
kyle>
Exercice 6 :
Si vous pouvez travailler avec un collègue appartenant au même groupe que vous,
modifiez les permissions du fichier créé à l’exercice "Bienvenue" ci-dessus de telle
façon que votre collègue puisse le lire et l’exécuter, mais ne puisse pas le modifier ni
le supprimer.
Pouvez-vous modifier les permissions de ce fichier de telle sorte que votre collègue
puisse le lire, le modifier et l’exécuter alors que vous-même ne pouvez pas le modifier?
Correction exercice 6 :
kyle> chmod g+x reptest
§ les membres de mon groupe peuvent faire cd reptest
kyle> cd reptest
kyle> chmod g=rx bienvenue
§ les membres de mon groupe peuvent lire et executer
§ le fichier bienvenue
kyle> ls l bienvenue
rwxr x 1 kyle staff 29 Jan 25 17:54 bienvenue
kyle> chmod u w,g+w bienvenue
§ Je ne peux plus modifier bienvenue, alors que
§ les membres de mon groupe peuvent le faire
kyle> ls l bienvenue
r xrwx 1 kyle staff 29 Jan 25 17:57 bienvenue
kyle>
Exercice 7 :
Comment est attribuée la permission d’effacer un fichier ? Créez un fichier que votre
collègue peut modifier mais pas supprimer et un autre qu’il peut supprimer mais pas
modifier. Est-il logique de pouvoir attribuer de tels droits ? Quelles sont les conséquences
pratiques de cette expérience ?
Correction exercice 7 :
La permission d’effacer un fichier n’est pas attribuée au fichier lui-même, mais
elle dépend uniquement du droit d’écriture dans le répertoire qui le contient. Voici
comment créer un fichier que les membres de mon groupe peuvent modifier mais
pas supprimer :
kyle> mkdir –m 750 rep1
kyle> cd rep1
kyle> echo bonjour >fich1
kyle> chmod g=rw fich1
Les membres de mon groupe ne peuvent pas supprimer fich1, mais ils peuvent
effacer tout son contenu par : cp /dev/null fich1
Maintenant, voici comment créer un fichier que les membres de mon groupe
peuvent supprimer mais pas modifier :
kyle> mkdir –m 770 rep2
kyle> cd rep2
kyle> echo bonjour >fich2
kyle> chmod g=r fich2
Les membres de mon groupe ne peuvent pas modifier fich2, mais ils peuvent le
supprimer ! Ceci est une gaffe techniquement faisable !
De telles permissions semblent illogiques. Les permissions linux sont codées sous la
forme rwx rwx rwx, ce qui conduit à 512 possibilités. Il est évident que parmi
les 512 possibilités, toutes ne correspondent pas à des permissions réellement intéressantes.
Tout ceci montre que l’utilisateur de Linux doit être vigilant non seulement
sur les permissions des fichiers, mais aussi sur les permissions des répertoires
dans lesquels il place des fichiers accessibles aux autres utilisateurs.