cClaude.rocks ☕ Le blog

[Nouvelles technologies, sciences et coups de gueule…]

Menu
đŸ˜€ Ce billet a Ă©tĂ© Ă©ditĂ© le : 2023-07-18

Sous Linux lorsque vous essayez de créer ou de modifier un fichier et que vous obtenez une erreur du type « Autorisation refusée », en rÚgle générale, cela indique un problÚme lié à des autorisations insuffisantes.

Ces problĂšmes peuvent ĂȘtre rĂ©solus en corrigeant les autorisations des rĂ©pertoires ou des fichiers.


ඏ

Linux est un systĂšme multi-utilisateur et l’accĂšs aux fichiers est contrĂŽlĂ© via des attributs de fichiers. Cela garantit que seuls les utilisateurs et processus autorisĂ©s puissent accĂ©der aux fichiers et aux rĂ©pertoires.

Pour plus d’informations sur les autorisations de fichiers, consultez la documentation sur umask.

man umask

Voici comment modifier de maniÚre récursive les autorisations des fichiers et des répertoires.

Attention la manipulation de la commande chmod en récursif est une opération dangereuse.

Soyez trÚs prudent lorsque vous modifiez de maniÚre récursive les autorisations des fichiers ou des répertoires


ඏ

Chmod récursif

La commande chmod vous permet de modifier les permissions des fichiers en utilisant le mode symbolique ou numérique.

Pour opĂ©rer de maniĂšre rĂ©cursive sur tous les fichiers et rĂ©pertoires d’un rĂ©pertoire donnĂ©, utilisez la commande chmod avec l’option -R (--recursive).

La syntaxe générale pour modifier récursivement les autorisations du fichier est la suivante :

chmod -R MODE RÉPERTOIRE

Par exemple, pour modifier les autorisations de tous les fichiers et sous-répertoires du répertoire /var/www/html en 755, vous utiliserez :

chmod -R 755 /var/www/html

Le mode peut Ă©galement ĂȘtre spĂ©cifiĂ© Ă  l’aide de la mĂ©thode symbolique :

chmod -R u=rwx,go=rx /var/www/html

Attention, l’exemple donnĂ© est un cas facile. Le dossier dont on parle appartement gĂ©nĂ©ralement Ă  l’utilisateur root et ne contenant pas de fichier exĂ©cutable. Le cas gĂ©nĂ©ral n’est pratiquement pas traitable de maniĂšre automatique.

Dans note cas seul root, le propriĂ©taire du fichier ou l’utilisateur avec des privilĂšges sudo peuvent modifier les autorisations d’un fichier.

Attention la manipulation de la commande chmod en récursif est une opération dangereuse.

Soyez trÚs prudent lorsque vous modifiez de maniÚre récursive les autorisations des fichiers ou des répertoires


ඏ

Utilisation de la commande find

En gĂ©nĂ©ral, les fichiers et rĂ©pertoires ne doivent pas avoir les mĂȘmes autorisations. La plupart des fichiers ne nĂ©cessitent pas d’autorisation d’exĂ©cution, alors que vous devez dĂ©finir des autorisations d’exĂ©cution sur les rĂ©pertoires pour pouvoir y accĂ©der.

Le scénario le plus courant consiste à modifier de maniÚre récursive les autorisations du fichier du site Web en 644 et les autorisations du répertoire en 755.

En utilisant la méthode numérique :

find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;

En utilisant la méthode symbolique :

find /var/www/html -type d -exec chmod u=rwx,go=rx {} \;
find /var/www/html -type f -exec chmod u=rw,go=r {} \;

La commande find recherche des fichiers ou des répertoires sous /var/www/html et transmet chaque fichier ou répertoire trouvé à la commande chmod pour définir les autorisations.

Lorsque vous utilisez find avec -exec, la commande chmod est exĂ©cutĂ©e pour chaque entrĂ©e trouvĂ©e. Utilisez la commande xargs pour accĂ©lĂ©rer l’opĂ©ration en passant plusieurs entrĂ©es Ă  la fois :

find /var/www/html -type d -print0 | xargs -0 chmod 755
find /var/www/html -type f -print0 | xargs -0 chmod 644
  • Exemple prĂȘt Ă  l'emploi
    function chmod_rec {
      local -r dir="$1"
    
      sudo find "${dir}" -type d -exec chmod 755 {} \;
      sudo find "${dir}" /var/www/html -type f -exec chmod 644 {} \;
    }
    

Attention la manipulation de la commande chmod en récursif est une opération dangereuse.

Soyez trÚs prudent lorsque vous modifiez de maniÚre récursive les autorisations des fichiers ou des répertoires

኿


â„č 2006 - 2024 | 🏠 Accueil du domaine | 🏡 Accueil du blog