Adloun

Nour a écrit un script sauvegarde.sh

Exercice de TD · niveau 2 · NSI (première), chapitre 9 — Machines, systèmes et réseaux · Système, fichiers et droits

Énoncé

Nour a écrit un script sauvegarde.sh. Elle tape ./sauvegarde.sh et obtient permission denied. La commande ls -l affiche :


-rw-r--r--  1 nour eleves  312  6 sep 09:14 sauvegarde.sh

Corrigé

1. Le mode est 644 : le propriétaire lit et écrit, personne n'exécute. Or lancer un script demande le droit x. Il faut donc l'ajouter au propriétaire : chmod 744 sauvegarde.sh (soit rwxr--r--).

2. 777 donne rwxrwxrwx : tout le monde peut modifier le script — et un script est exécuté avec les droits de qui le lance. N'importe quel utilisateur de la machine peut donc y glisser une ligne que Nour exécutera elle-même, sans le savoir. Le défaut n'est pas le droit x accordé à tous, c'est le w. Le principe est celui du moindre privilège : on accorde le droit qui manque, jamais tous les droits.

3. Exécution et lecture pour le groupe, rien pour les autres, tout pour le propriétaire : rwxr-x—, soit 750.

Contrôle des trois chiffres : rwx ; r-x ; . Le droit r est indispensable au groupe : un script est lu par l'interpréteur ligne à ligne, contrairement à un exécutable compilé, à qui x seul suffit.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.