linux下用户组及相关信息保存位置

pointfish 2010-01-09

几个文件说明:

/etc/passwd   存放用户名及用户主目录和SH目录

/etc/shadow   存放用户密码,未设置过密码时以 ! 开头,密码将不可使用

/etc/group  存放用户组

可以直接查看这几个文件来得知现有的用户及组的情况,但如果只想查看用户vbird1的相关信息,可以这样:

[root@linux ~]# grep vbird1 /etc/passwd /etc/shadow /etc/group

 

useradd命令

[root@linux~]#useradd[-uUID][-ginitial_group][-Gother_group]\

>-[Mm][-c说明栏][-dhome][-sshell]username

参数:

-u:后面接的是UID,是一组数字。直接指定一个特定的UID给这个帐号;

-g:后面接的那个群组名称就是我们上面提到的initialgroup啦~

该groupID(GID)会被放置到/etc/passwd的第四个栏位内。

-G:后面接的群组名称则是这个帐号还可以支援的群组。

这个参数会修改/etc/group内的相关资料喔!

-M:强制!不要建立使用者家目录

-m:强制!要建立使用者家目录!

-c:这个就是/etc/passwd的第五栏的说明内容啦~可以随便我们设定的啦~

-d:指定某个目录成为家目录,而不要使用预设值;

-r:建立一个系统的帐号,这个帐号的UID会有限制(/etc/login.defs)

-s:后面接一个shell,预设是/bin/bash的啦~

范例:

范例一:完全参考预设值建立一个使用者,名称为vbird1

[root@linux~]#useraddvbird1

[root@linux~]#ls-l/home

drwxr-xr-x3vbird1vbird14096Aug3017:33vbird1

[root@linux~]#grepvbird1/etc/passwd/etc/shadow/etc/group

/etc/passwd:vbird1:x:502:502::/home/vbird1:/bin/bash

/etc/shadow:vbird1:!!:13025:0:99999:7:::

/etc/group:vbird1:x:502:

#做这个范例只是想要让您了解,其实系统已经规范好了一些新增使用者时的参数了!

#因此,当我们使用useradd时,系统会主动的去修改/etc/passwd与/etc/shadow,

#而这两个档案内的相关栏位参考值,则会以一些设定档的内容来规范喔!

#同时也要注意到,使用useradd新增使用者时,这个使用者的/etc/shadow

#密码栏会是不可登入的(以!!为开头),因此还需要使用passwd

#来给予vbird1密码后,才算新增完毕!

范例二:我知道我的系统当中有个群组名称为users,且UID700并不存在,

请用这两个参数给予vbird2建立一个帐号!

[root@linux~]#useradd-u700-gusersvbird2

[root@linux~]#ls-l/home

drwxr-xr-x3vbird2users4096Aug3017:43vbird2

[root@linux~]#grepvbird2/etc/passwd/etc/shadow/etc/group

/etc/passwd:vbird2:x:700:100::/home/vbird2:/bin/bash

/etc/shadow:vbird2:!!:13025:0:99999:7:::

#看一下,UID与initialgroup确实改变成我们需要的了!

范例三:建立一个系统帐号,名称为vbird3

[root@linux~]#usradd-rvbird3

[root@linux~]#grepvbird3/etc/passwd/etc/shadow/etc/group

/etc/passwd:vbird3:x:101:102::/home/vbird3:/bin/bash

/etc/shadow:vbird3:!!:13025::::::

/etc/group:vbird3:x:102:

#很重要喔!您会发现,UID竟然是101,而GID怎麼会是102,

#并且与/etc/group有对应的关系喔!有没有加-r差很多ㄟ!

相关推荐