Aller au contenu
FR EN

Corriger « Permission denied » sous Linux

Durée 6 min Niveau Intermédiaire Mis à jour

Linux attribue à chaque fichier un propriétaire et des droits de lecture (r), d'écriture (w) et d'exécution (x). L'erreur apparaît quand l'un de ces droits manque.

  1. Lire les droits du fichier

    ls -l script.sh
    bash

    Le résultat ressemble à -rw-r--r-- 1 root root : pas de x, donc pas d'exécution, et le fichier appartient à root.

  2. Rendre un script exécutable

    chmod +x script.sh
    ./script.sh
    bash
  1. Reprendre la propriété d'un fichier

    Si le fichier appartient à root alors qu'il est dans ton dossier personnel :

    sudo chown $USER:$USER script.sh
    bash
  2. Utiliser sudo pour les fichiers système

    Les fichiers dans /etc ou /usr se modifient avec les droits administrateur, par exemple sudo nano /etc/hosts.

À savoir : N'utilise jamais chmod 777 pour « régler » le problème : tout le monde pourrait alors modifier le fichier.

À lire ensuite