web-dev-qa-db-fra.com

chmod WSL (Bash) ne fonctionne pas

En exécutant bash sur Windows 10, la syntaxe simple ci-dessous fonctionne lorsque je SSH vers mon serveur Web, mais pas lorsque je quitte et que je suis sur ma machine locale. Cela ne me donne pas d'erreur, mais je peux voir que les autorisations sont inchangées. Je dois vérifier que je suis configuré en tant qu'administrateur sur mon ordinateur. Est-ce une erreur ou est-ce juste une conséquence du système d'exploitation local étant Windows? SI la dernière, cela me fait remettre en question la valeur de l'utilisation de bash sur Windows si des opérations courantes comme celle-ci ne fonctionnent pas.

$chmod 644 filename 
18
joe5

La réponse d'Amade est correcte, mais veuillez noter que la cmd ne prend effet que dans la portée de la session. Si vous quittez le bash actuel, vous perdrez vos paramètres.

Pour résoudre ce problème, vous devez modifier /etc/wsl.conf. et mettez ci-dessous la configuration.

[automount]
enabled = true
options = "metadata"

Réf:

Configuration automatique de WSL

Améliorations Chmod/Chown WSL

23
Chao

Il y a eu récemment une mise à jour de WSL ( source ), qui vous permet de modifier les autorisations sur les fichiers (Insider Build 17063).

Tout ce que vous avez à faire est d'exécuter:

Sudo umount /mnt/c
Sudo mount -t drvfs C: /mnt/c -o metadata
11
Amade