web-dev-qa-db-ja.com

chmod WSL(Bash)が機能しない

Windows 10でbashを実行すると、以下の簡単な構文は、WebサーバーにSSH接続するときに機能しますが、終了してローカルマシンにいるときは機能しません。エラーは発生しませんが、アクセス許可に変更はありません。コンピューターの管理者としてセットアップされていることを確認する必要があります。これはエラーですか、これは単にローカルオペレーティングシステムがWindowsであるための結果ですか?後者の場合、このような一般的な操作が機能しない場合、Windowsでbashを使用することの価値を疑問視します。

$chmod 644 filename 
18
joe5

Amadeの答えは正しいですが、cmdはセッションスコープでのみ有効になることに注意してください。現在のbashを終了すると、設定が失われます。

これを修正するには、/ etc/wsl.confを編集する必要があります。 configの下に配置します。

[automount]
enabled = true
options = "metadata"

参照:

WSLの自動構成

Chmod/Chown WSLの改善

23
Chao

最近、WSLが更新されました( source )。これにより、ファイルへのアクセス許可を変更できます(Insider Build 17063)。

あなたがしなければならないのは、実行することです:

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