首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么/etc/login.defs中的USERGROUPS_ENAB属性没有任何影响?

为什么/etc/login.defs中的USERGROUPS_ENAB属性没有任何影响?
EN

Ask Ubuntu用户
提问于 2018-08-17 18:09:53
回答 1查看 1.9K关注 0票数 2

我刚刚在/etc/login.defs中找到了以下评论:

代码语言:javascript
复制
# Enable setting of the umask group bits to be the same as owner bits
# (examples: 022 -> 002, 077 -> 007) for non-root users, if the uid is
# the same as gid, and username is the same as the primary group name.

这听起来很酷,但在我的系统上却不是这样的:

代码语言:javascript
复制
me@mysystem ~ $ id
uid=1000(me) gid=1000(me) Gruppen=1000(me),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),100(users),113(lpadmin),130(sambashare),133(roccat)
me@mysystem ~ $ touch test
me@mysystem ~ $ ll test
-rw-r--r-- 1 me me 0 Aug 17 20:02 test
me@mysystem ~ $ rm test
me@mysystem ~ $ 

(以下替换(没有其他):my_real_user_and_groupname => me,my_real_hostname => mysystem)

我的主要组是我的个人组(如测试文件的组分配所示),但我不知道有一个CLI命令来检查这个组。我是通过GUI来检查的。

有人知道为什么这个评论中所描述的行为不会影响我的环境吗?或者更干净:为什么test是用-rw-r--r--而不是-rw-rw-r--在我的系统上创建的?

更新:

代码语言:javascript
复制
me@mysystem ~ $ cat .bashrc | grep -e umask -e UMASK
me@mysystem ~ $ cat .profile | grep -e umask -e UMASK
# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022
me@mysystem ~ $ cat /etc/profile | grep -e umask -e UMASK
me@mysystem ~ $ cat /etc/bash.bashrc | grep -e umask -e UMASK
me@mysystem ~ $ umask 
0022
me@mysystem ~ $ 

更新2

代码语言:javascript
复制
me@mysystem / $ grep -r 'umask [0-9]' /etc/ 2> /dev/null
/etc/init/ssh.conf:umask 022
/etc/ppp/ip-down.d/0dns-down:umask 022
/etc/ppp/ip-up.d/0dns-up:umask 022
/etc/dhcp/dhclient-enter-hooks.d/samba: umask 022
/etc/init.d/umountfs:umask 022
/etc/init.d/ssh:umask 022
/etc/init.d/resolvconf: umask 022
/etc/init.d/urandom:    umask 077
/etc/init.d/urandom:    umask 022
/etc/init.d/urandom:    umask 077
/etc/init.d/rc:umask 022
/etc/skel/.profile:#umask 022
/etc/X11/Xsession:if (umask 077 && touch "$ERRFILE") 2> /dev/null && [ -w "$ERRFILE" ] &&
me@mysystem / $ 
EN

回答 1

Ask Ubuntu用户

发布于 2018-08-17 18:30:44

当您登录系统并设置一次时,此文件将生效。

如果你跑:

代码语言:javascript
复制
$ grep ^UMASK /etc/login.defs 
UMASK       022

您可以看到默认的UMASK022,如果检查它的注释,您会发现:

如果USERGROUPS_ENAB设置为“是”,这将修改私有用户组的UMASK默认值。

打开终端并运行:

代码语言:javascript
复制
umask

您应该获得002,因为USERGROUPS_ENAB被启用了,否则您正在覆盖umask的S值,比如:

代码语言:javascript
复制
.bashrc
.profile
/etc/profile
/etc/bash.bashrc
票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1066346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档