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差很多ㄟ!