知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

[Linux]账户管理

发布时间:2014-09-05 13:33:08作者:知识屋

当用户登陆Linux系统时,Linux将做如下检查:

1)在/etc/passwd文件里匹配输入的用户名,获取该用户名的UID和GID(其中GID和/etc/group关联)、Home目录和Shell设置

2)在/etc/shadow里核对该用户的密码

/etc/passwd文件结构

这个文件的每一行代表一个账号,如下所示:
oracle:x:501:501::/home/oracle:/bin/bash
1. 用户名2. 密码:早期的密码放在该字段,但如今的密码已单独放在/etc/shadow里,所以该字段已经没有意义,用'x'占位3. UID: 0:root 1~499:系统账号,如bin,daemon,adm,nobody等 >=500:普通用户账号4. GID:与/etc/group关联5. 用户信息说明:一般没什么用,为空6. 主文件夹7. 默认shell

/etc/shadow文件结构

oracle:$6$AsOW5s9y$1JhRl0RYwGN48TVNMqF6sFrTKbo9.tvdHUR.xeFHzoFIqtzWnTrBE7oa99qlXOIRidfQyNPcGyS9eX2Ajy.Od0:16024:0:99999:7:::
1. 用户名2. 加密过的密码3. 最近更改密码的日期:改日期是一个整数,表示从1970年1月1日开始累加的天数。4. 密码不可被更改的天数(与第3个字段相比):0表示密码随时可被修改。5. 密码需要更改的天数(与第3个字段相比):表示用户必须在这个天数内更改密码,否则将不可用,99999(273年)表示无需更改6. 密码需要更改期限前的警告天数(与第5个字段相比)7. 密码过期后的账号宽限天数(与第5个字段相比)8. 账号失效日期9. 保留字段

/etc/group文件结构

oinstall:x:501:dba:x:503:oracle
1. 用户组名2. 用户组密码:已移至/etc/gshadow3. GID4. 属于该用户组的账号
上面的例子中,oracle同时属于oinstall和dba两个组,但为什么oinstall的第4列为空呢?这是因为它是初始用户组(即oracle登陆后的用户组),而dba不是。下面我们再看看什么是有效用户组,虽然某个用户可以属于多个用户组,但同一时刻,只能有一个有效用户组(默认情况下为初始用户组),我们可以通过groups命令查看:
[oracle@lx16 ~]$ groupsoinstall dba
如上所示,排在第一位的就是有效用户组,如果你想改变当前的有效用户组,可以通过newgrp命令:
[oracle@lx16 ~]$ newgrp dba[oracle@lx16 ~]$ groupsdba oinstall

账号管理

useradduseradd用于新建用户,它的默认值可以通过如下命令获得:
# useradd -DGROUP=100HOME=/homeINACTIVE=-1EXPIRE=SHELL=/bin/bashSKEL=/etc/skelCREATE_MAIL_SPOOL=yes
也就是说,当你使用useradd username命令添加用户时,将采用以上的默认值。下面看几个例子:
useradd zhuxj  --创建一个默认的用户useradd -u 700 -g users zhuxj  --指定uid为700,用户组为usersuseradd -r zhuxj --创建一个系统用户

passwd在用useradd创建了账户之后,默认情况下,该账户是被锁住的,需要通过passwd命令为该用户设置密码。
passwd zhuxj --修改zhuxj的密码passwd --修改自己的密码

usermod和useradd很像,用于修改用户
userdel删除用户,其用法如下:
userdel [-r] username-r:连同home目录一起删除

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜