![为什么我的主用户默认使用 umask 022,而不是 0002?](https://linux22.com/image/193317/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E7%9A%84%E4%B8%BB%E7%94%A8%E6%88%B7%E9%BB%98%E8%AE%A4%E4%BD%BF%E7%94%A8%20umask%20022%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%200002%EF%BC%9F.png)
我正在使用Fedora 34 (Workstation Edition)
——尽管我在机器上看到了同样的行为Debian Buster
,但我试图理解为什么我创建的用户0002
默认获得了 umask,而我的主要用户0022
却获得了。
如果我这样做id
并且umask
与我的主要用户一起,我会得到以下输出:
mikelalejobr@fedora:~$ id
uid=1000(mikelalejobr) gid=1000(mikelalejobr) groups=1000(mikelalejobr),10(wheel) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
mikelalejobr@fedora:~$ umask
0022
现在,我创建一个新用户并更改其密码:
mikelalejobr@fedora:~$ sudo useradd myNewUserUmask
mikelalejobr@fedora:~$ sudo passwd myNewUserUmask
最后我以新用户身份登录并发出umask
命令:
[myNewUserUmask@fedora mikelalejobr]$ cd
[myNewUserUmask@fedora ~]$ id
uid=1003(myNewUserUmask) gid=1003(myNewUserUmask) groups=1003(myNewUserUmask) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[myNewUserUmask@fedora ~]$ umask
0002
经检查/etc/bashrc
,有以下条件:
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 002
else
umask 022
fi
如果我在主帐户中运行以下脚本,我会得到:
mikelalejobr@fedora:~$ if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then echo "Umask 002"; else echo "Umask 022"; fi
Umask 002
与新创建的帐户中的内容相同:
[myNewUserUmask@fedora ~]$ if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then echo "Umask 002"; else echo "Umask 022"; fi
Umask 002
我没有更改任何文件,如/etc/bashrc
或/etc/profile
,并且我尝试使用 登录来newTestUserUmask
检查GDM
这是否可能是“问题”,但没有运气。
那么,我在这里缺少什么?
先感谢您