Y a-t-il un équivalent Windows de l'équivalent Linux chmod
pour changer les permissions d'un fichier ?
Réponses
Trop de publicités?Greg mentionne attrib
- mais attrib
n'est pas du tout proche de chmod
- attrib
peut définir les attributs "lecture seule" ou "caché" d'un seul fichier - il ne fournit pas de contrôles fins comme le fait le programme icacls
fait.
icacls
définit/réinitialise les listes de contrôle d'accès, ce qui vous permet d'accorder/de refuser des droits pour des SID et des groupes individuels. C'est cependant assez compliqué.
Voici un exemple que j'ai sauvegardé dans mon fichier github gist Elle réinitialise la propriété et la liste de contrôle d'accès pour tous les fichiers d'un dossier et est particulièrement utile pour corriger les ennuyeux "Vous avez besoin des autorisations de pour effectuer cette action", notamment lors du déplacement de fichiers d'une installation précédente :
icacls * /reset /t /c /q
La réinitialisation remplace la liste existante par la liste par défaut./t
agit récursivement sur tous les fichiers, dossiers et sous-dossiers/q
n'affiche aucun message de réussite/c
continue avec les fichiers restants même en cas d'erreur.
Vous pouvez également sauvegarder les listes de contrôle d'accès existantes et les appliquer à toutes les installations. Jetez un coup d'œil à ss64 qui explique très bien les différentes options et interrupteurs.
Il ne peut (malheureusement) pas y avoir d'équivalent exact, puisque Linux et DOS/Windows utilisent les attributs à des fins différentes, et (comme Chathuranga l'a déjà dit) le modèle de sécurité est différent :
- Dans les systèmes de fichiers Windows, il existe des fichiers "cachés" (
H
) et "système" (S
) qui n'ont pas d'équivalent sous Linux ; là, les fichiers sont cachés en faisant précéder leur nom d'un point (.
). - Il n'y a pas d'équivalent à l'"archive" de Windows (
A
), soit. - Il n'existe pas d'équivalent à l'"exécutable" (
x
) attributs Linux dans les attributs de fichiers DOS/Windows. - Il y a es un équivalent du "répertoire" de Windows (
D
) (mais il ne peut pas être modifié de toute façon). - Dans les systèmes de fichiers Linux, chaque entrée appartient à un seul utilisateur et à un seul groupe, et la lecture, l'écriture et l'exécution peuvent être autorisées pour chacun d'entre eux et pour les autres. Les ACLs (comme celles utilisées par Windows) sont encore plus flexibles, mais aussi plus compliquées, et la syntaxe en ligne de commande est un PITA (à mon humble avis, bien sûr).
L'attribut de fichier DOS R
(en lecture seule) est celui qui peut être considéré comme ayant un équivalent : cet attribut set est à peu près comme le w
pour tout ce qui manque ; mais la permission de changer cet attribut est soumise aux ACL.
Ça pourrait être cool d'avoir un chmod
/ chown
équivalent sous Windows, peut-être écrit dans un langage de script, qui appelle à son tour attrib
y cacls
(ou successeurs), mais je n'en ai pas.
J'utilise la commande Windows takeown.exe
pour modifier les droits d'accès aux fichiers en fonction de l'identité de l'utilisateur connecté : http://technet.microsoft.com/en-us/library/cc753024.aspx
- Réponses précédentes
- Plus de réponses