6. Exercices☘
Pour faire les exercices, vous vous référerez aux commandes vues dans les pages précédentes. Les exercices sont à faire sur votre cahier.
6.1 Exercice☘
Ci-dessous, le résultat de la commande ls -l
en console:
seb@debian10:~/Documents ls -l
total 8
drwxr-xr-- 2 seb seb 4096 juil. 10 17:56 bidule
-rwxrw---x 1 seb profs 0 juil. 10 17:56 machin.sh
-rwxr-x--- 1 bob profs 3 juil. 10 17:57 truc
- Quel est l'utilisateur ?
- Quel est le nom de la machine utilisée ?
- Quel est le répertoire courant ?
- Combien contient-il de fichiers ? de dossiers ?
- Pour le fichier machin.sh, expliquer chacune des informations affichées.
- Donner la valeur octale des permissions sur ces fichiers / dossiers.
Réponses
- utilisateur : seb
- nom de la machine utilisée : debian10
- répertoire courant : ~/Documents (/home/seb/Documents)
- Combien de fichiers : deux fichiers (machin.sh et truc) et un dossier (bidule).
- Pour le fichier
machin.sh
, information donnée parls - l
:-rwxrw---x
- droits en lecture/écriture/exécution pour le propiétaire
seb
, - droits en lecture/écriture pour le groupe
prof
, - droits en exécution pour les autres.
- Taille du fichier 0 octet.
- Dernière modificaton du fichier le 10 juillet à 17h56.
- droits en lecture/écriture/exécution pour le propiétaire
- Valeurs octales.
drwxr-xr--
: 400+200+100+40+10+4 = 754.-rwxrw---x
: 400+200+100+40+20+1 = 761.-rwxr-x---
: 400+200+100+40+10 = 750.
6.2 Exercice☘
A quels droits correspondent les valeurs octales suivantes : 451 ; 742 ; 254 et 650 ?
Réponses
- 451: r-- r-x --x
- 742: rwx r-- -w-
- 254: -w- r-x r--
- 650: rw- r-x ---
6.3 Exercice☘
Quels sont les droits sur un fichier et les valeurs octales correspondants à :
- Le propriétaire peut afficher le contenu et le modifier.
- Le groupe propriétaire peut lire le contenu.
- Les autres peuvent exécuter le fichier.
Réponses
rw- r-- --x
.
En octal 641
6.4 Exercice☘
Quels sont les droits sur un dossier et les valeurs octales correspondants à:
- Le propriétaire peut lister le contenu et créer / supprimer des fichiers.
- Le groupe propriétaire lister le contenu uniquement.
- Les autres peuvent traverser le dossier uniquement.
Réponses
rwx r-x --x
En octal 751
6.5 Exercice☘
Chercher à comprendre chaque étape à partir de la question 4 en affichant les droits des fichiers et répertoires.
- Dans le dossier
Documents
du poste, créez un dossierTD_exo2
et déposez le fichier frozen-bubble-2.2.0.zip dedans (ne pas choisir le dossier Documents de votre perso, prendre celui du poste). - Ouvrez un terminal, placez vous dans le dossier
TD_exo2
.
Dézippez le fichier précédent à l'aide de la commandeunzip frozen-bubble-2.2.0.zip
. - Placez vous dans le répertoire
frozen-bubble-2.2.0
et exécutez la commandebash first.sh
. - Listez les fichiers et répertoires contenus dans le dossier courant.
- Essayez d’afficher le contenu du répertoire
tools
. Que se passe-t-il? - Essayez de vous placer dans le répertoire
icons
. Pouvez-vous lister son contenu ? - Essayez de créer un fichier
i_was_here.txt
dans le répertoireserver
. Avez-vous essayé de vous placer dans le dossierserver
? - Essayez d’afficher le contenu du fichier
README
avec la commandecat
. Que se passe-t-il? - Ouvrez le fichier
settings.mk
avec un éditeur de texte, en tapant par exemplegeany settings.mk
et tentez de le modifier. Est-ce possible? - Afficher le contenu du fichier
first.sh
avec la commandecat
. Ce fichier est celui qui a été exécuté en question 3: les commandes qu'il contient sont celles qui ont supprimé des droits sur les fichiers et répertoires manipulés précédemment. Vérifiez que cela correspond bien à ce que vous avez obtenu dans les questions précédentes.
Indications
4. Utilisez ls
.
5. ls tools
donne: impossible d'ouvrir le répertoire 'tools': Permission non accordée.
Pour comprendre la situation, taper ls -l
: on constate que les droits sur le dossier tools
sont
donnés par d-wxrwxrwx
. Le propriétaire (vous puisque c'est vous qui avez créé tout le répertoire
sur votre machine) ne peut pas lire le contenu.
6. Les droits sur icons
sont drw-r-xr-x
. En tant que propriétaire, vous n'avez pas le droit x
.
Vous ne pouvez pas entrer dans le répertoire (avec cd
). Vous avez le droit r
:
vous pouvez voir le nom des fichiers et répertoires contenus dans icons
(avec ls
).
7. Les droits sur le répertoire server
sont dr-xr-xr-x
. Vous n'avez pas le droit w
: la tentative
de création de fichier (depuis frozen-bubble-2.2.0
) par touch server/i_was_here.txt
échoue.
Vous avez le droit x
: vous pouvez vous placer dans le dossier server
par la commande cd server
depuis frozen-bubble-2.2.0
(mais vous ne pouvez toujours pas créer un nouveau contenu).
8. Les droits du fichier README sont --w-r--r--
. Vous n'avez pas le droit en lecture, la commande cat README
sera donc sans effet (permission non accordée).
9. Les droits sur settings.mk
sont -r--r--r--
. Vous avez le droit en lecture.
La commande nano settings.mk
(ou geany settings.mk
pour utiliser l'éditeur geany plutôt que l'éditeur nano)
vous permettra donc de lire le contenu. Mais vous n'avez pas le droit en écriture:
il ne vous est pas possible de faire de modifications dans le fichier.
10. Les droits sur first.sh
sont -rwx------
.
Vous pouvez donc afficher le contenu de ce fichier avec cat first.sh
.
6.6 Exercice☘
- Créez dans
/home/nsi/Documents
un dossierTD_exo3
puis un fichierfich1
.- Observez les droits de
fich1
, - attribuez lui tous les droits pour tout le monde à l'aide de
chmod
et observez à nouveau ses droits
- Observez les droits de
-
Créez un fichier
private.txt
dansTD_exo3
avec les permissions suivantes :- Lecture et écriture seulement autorisées pour le propriétaire du fichier
- Aucun droit pour les autres.
- Ajoutez au groupe propriétaire la possibilité de lire le fichier. Puis à tous les utilisateurs.
- Modifiez les droits d’accès de
private.txt
pour en empêcher la lecture, l’écriture et l’exécution par qui que ce soit. Essayez de lire le contenu du fichier. Que se passe-t-il ?
-
Ajoutez la possibilité au propriétaire de lire le fichier. Essayez de modifier le contenu du fichier
private.txt
. Quelle commande utiliser pour avoir le droit de modifier le contenu du fichier ?
6.7 Exercice☘
- Créez un fichier
mon_prog.sh
dans un dossierTD_exo4
- à l'aide de la commande
geany mon_prog.sh
taper le code suivant et enregistrer le fichier:
#!/bin/bash
echo "Liste des fichiers du répertoire courant:"
ls -l
- Exécutez le script précédent en saisissant (en ligne de commande):
./mon_prog.sh
. - Que se passe-t-il ?
- Comment y remédier ?
Réponses
Le script ne s'exécute pas car le fichier créé n'a pas a priori le droit x.
Il faut donc ajouter ce droit:
chmod u+x mon_prog.sh
.