wsl2 更改文件权限失败

Posted

技术标签:

【中文标题】wsl2 更改文件权限失败【英文标题】:wsl2 fail to change file permissions 【发布时间】:2020-12-13 23:25:47 【问题描述】:

我在做win10的wsl2:

PS C:\Users\Gaowei> wsl -l -v
  NAME            STATE           VERSION
* Ubuntu-20.04    Running         2

进入wsl后,我做一个test.md的文件:

➜  ~ ls -l test.md
-rwxrwxrwx 1 gaowei gaowei 0 Aug 25 17:17 test.md

然后尝试更改其权限:

➜  ~ chmod 755 test.md
➜  ~ ls -l test.md
-rwxrwxrwx 1 gaowei gaowei 0 Aug 25 17:17 test.md
➜  ~ sudo chmod 755 test.md
➜  ~ ls -l test.md
-rwxrwxrwx 1 gaowei gaowei 0 Aug 25 17:17 test.md

不幸的是,结果保持不变。

我的机器信息:

gaowei@Spiritme
---------------
OS: Ubuntu 20.04.1 LTS on Windows 10 x86_64
Kernel: 4.19.104-microsoft-standard
Uptime: 4 mins
Packages: 1068 (dpkg)
Shell: zsh 5.8
Terminal: /dev/pts/0
CPU: AMD Ryzen 5 4500U with Radeon Graphics (6) @ 2.370GHz
Memory: 75MiB / 12277MiB

这可能是什么问题?

【问题讨论】:

您是从 Windows 端创建文件吗?例如:/mnt/c/Users/user 【参考方案1】:

通过创建/etc/wsl.conf文件并将其配置为:

# Enable extra metadata options by default
[automount]
enabled = true
root = /mnt/
options = "metadata,umask=22,fmask=11"
mountFsTab = false
# Enable DNS – even though these are turned on by default, we'll specify here just to be explicit.
[network]
generateHosts = true
generateResolvConf = true

参考:wsl.conf

【讨论】:

你能解释一下为什么这个配置应该解决这个问题吗?谢谢 options = "metadata" 部分是需要的。请参阅***.com/a/50856772/1880761 了解更多详情。

以上是关于wsl2 更改文件权限失败的主要内容,如果未能解决你的问题,请参考以下文章

linux下修改文件夹权限提示chmod: 更改xx 的权限: 只读文件系统

系统创建文件失败...权限被拒绝 - cPanel

Linux之创建777权限的文件

在Linux系统中,如何更改文件的访问权限

Java中的文件权限,检查权限和更改权限 - Break易站

如何更改文件权限