J'ai créé des répertoires à la racine. Je cherche le chmod
pour autoriser tous les utilisateurs à lire et écrire dans un répertoire spécifique. J'ai fait chmod 775
pour un fichier mais j'en ai besoin pour un répertoire. Cela inclut les permissions sur tous les fichiers et sous-répertoires.
Réponses
Trop de publicités?Pour tous pour que les utilisateurs aient un accès en lecture et en écriture, ce serait 0777
ce qui est un peu dangereux, surtout si vous utilisez un serveur web. Comme l'a dit @unwind :
chmod -R 0777 /mydirectory
Permet à tous les utilisateurs d'accéder en lecture et en écriture à tous les fichiers et dossiers de ce répertoire.
En fonction de votre objectif, vous voudrez peut-être vous renseigner sur les sticky bits, qui permettent à tous les utilisateurs de créer de nouveaux fichiers, mais pas de supprimer ou de modifier d'autres fichiers dans un répertoire :
chmod +t /mydirectory
Aussi, au cas où vous ne le sauriez pas man chmod
fera apparaître la page de manuel de l chmod
que vous pouvez rechercher pour le texte "récursif" en tapant /recursive
0775
est rarement correcte pour un fichier. Ce qui suit ajoutera les permissions souhaitées au type approprié, sans perturber les autres permissions existantes :
find somedir \( -type d -exec chmod u+rwx,g+rwx,o+rx {} \; -o -type f -exec chmod u+rw,g+rw,o+r {} \; \)
Ver el page de manuel pour find pour aider à déchiffrer ça.
Ce n'est pas comme ça que le modèle de protection Unix fonctionne, vous ne pouvez pas définir les permissions de manière récursive. Vous devez les définir sur chaque répertoire, jusqu'en bas.
Bien sûr, vous pouvez faire le paramètre de manière récursive, mais cela signifie seulement "parcourir et définir ces permissions sur tous les fichiers et dossiers ci-dessous", ce qui n'est pas la façon dont je comprends votre question.
Pour ce faire, utilisez l'option Option -R à chmod :
$ chmod -R 0755 /my-cool-directory