Adloun

NSI (première) · Chapitre 9 · Exercice de TD

Nour a écrit un script sauvegarde.sh

Machines, systèmes et réseaux · Système, fichiers et droits · niveau 2

É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
  • Expliquer le refus, puis donner la commande qui le corrige, en notation octale.
  • Un camarade conseille chmod 777 sauvegarde.sh. Pourquoi est-ce une mauvaise habitude, même si « ça marche » ?
  • Nour veut que les autres élèves du groupe eleves puissent exécuter le script mais pas le modifier, et que les utilisateurs extérieurs ne puissent rien en faire. Quel mode ?

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.

100 % gratuit

Essaie le suivant avec le tuteur

Faire l'exercice suivant avec le tuteur

Sans compte : le cours, 2 minutes de podcast et de vidéo et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant avec le tuteur →