web-dev-qa-db-de.com

chmod WSL (Bash) funktioniert nicht

Wenn Sie bash unter Windows 10 ausführen, funktioniert die folgende einfache Syntax, wenn ich eine SSH-Verbindung zu meinem Webserver herstelle, jedoch nicht, wenn ich mich auf meinem lokalen Computer befinde. Es gibt mir keinen Fehler, aber ich kann sehen, dass die Berechtigungen unverändert sind. Ich muss überprüfen, ob ich als Administrator auf meinem Computer eingerichtet bin. Handelt es sich um einen Fehler oder liegt dies nur daran, dass das lokale Betriebssystem Windows ist? WENN das spätere, lässt es mich den Wert des Verwendens von Bash auf Fenstern in Frage stellen, wenn allgemeine Betriebe wie dieses nicht arbeiten.

$chmod 644 filename 
18
joe5

Die Antwort von Amade ist richtig, aber bitte beachten Sie, dass der Befehl nur im Sitzungsbereich wirksam wird. Wenn Sie die aktuelle Bash beenden, verlieren Sie Ihre Einstellung.

Um dies zu beheben, müssen Sie /etc/wsl.conf bearbeiten. und setze unten config in.

[automount]
enabled = true
options = "metadata"

Ref:

WSL automatisch konfigurieren

Chmod/Chown WSL Verbesserungen

23
Chao

Kürzlich gab es ein Update für WSL ( Quelle ), mit dem Sie Berechtigungen für Dateien ändern können (Insider Build 17063).

Alles was Sie tun müssen, ist zu laufen:

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