查看原文
其他

干掉WSL中的原谅色

biocoder BT开发者 2022-09-20

1. 邂逅WSL

因为搬砖需要,之前用的都是双系统。办公基本都用Linux 系统,但是我偶尔还是要用微信 ,QQ 来跟外界保持沟通的。那么问题来了,这些软件基本上是没有Linux 版的,记得研究生那会儿跟课题组的小伙伴一起为了装QQ ,一直google 搜索,装Wine 软件,折腾好久,最后装完却发现是08 年的QQ 真的很难用。听说去年腾讯 突然更新了下Linux版的QQ ,感动了一帮人,我没去安装,但是很多人用后反馈体验挺差的。正好去年我换了工作环境,而且当时微软的WSL 也更新了,完了网友对更新后的WSL 评价也还不错,于是乎我就装了个WSL 。这样我就可以只在Windows 下同时使用Windows 跟Linux 系统了,再也不同来回切换系统了。然而,我还是太天真,一打开WSL ,怎么全是原谅色 此处王德发。 

用了一段时间实在忍不了,于是找方法解决,顺便记录下。 

2. 干掉WSL 中的原谅色

因为Windows 下的磁盘挂载在Linux 的mnt 下全部用的是777 的权限。所以才会导致所有的文件跟文件夹全都是原谅色 。所以只要改变挂载的权限就可以。

# 打开/etc/wsl.conf文件,如果没有就创建一个
# vi /etc/wsl.conf
# 添加如下信息进去
[autoload]
enabled = true
root = /mnt/
options = "metadata,dmask=022,fmask=113"
mountFsTab = false

其中的dmask 是控制文件夹的权限过滤,fmask 是控制文件的权限过滤。Linux 系统中的文件有r , w , x 分别代表 ,  , 执行 ,可用数字4 ,2 ,1 来组合,另外一个文件的权限,如drwxr-xr-x 区块中的rwx ,r-x ,r-x 分别为拥有者 ,用户组 ,其他人 所拥有,可以简写成755 ,所以dmask=022 后的结果就是所有文件夹变成755 ,而fmask=113 后的结果则为所有文件变成664 。

3. 新建文件夹及文件问题

上面弄好后重启,然后新建个文件夹发现不对,还是原谅色 。 

一查umask 发现还是0000

echo $(umask)

所以还得把umask 重新设置下。

# 打开~/.bashrc文件
# 添加如下信息进去
if [ "$(umask)" == "0000" ]; then
umask 0002
fi
# 保持退出
source ~/.bashrc

再重新测试下,OK,没问题。 

最后友情提醒下,如果以前把Linux 的一些软件装在自定义路径下,那设置好上面的配置后,需要对原来需要执行的文件添加个可执行 的权限。

 欢迎关注公众号


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存