梦幻之旅

DEBUG - 天道酬勤

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  671 随笔 :: 6 文章 :: 256 评论 :: 0 Trackbacks

在Linux 中,用户的相关信息保存在对应的文件中,这些文件分别是:/etc/passwd 和/etc/shadow 。

/etc/passwd

  系统的每一个合法用户帐号都对应于该文件中的一行记录。每行记录定义了一个用户帐号的属性。可以用#cat /etc/passwd 或者#vim /etc/passwd 打开查看。

passwd 文件中每行对应一个帐号,每个帐号由7 部分组成,各部分之间用“:”分隔。分别代表   用户名:用户密码(用x 密码占位符表示):UID (用户标识号):GID (用户基本组标识号):备注(用户全名及用户信息):用户家目录:默认使用的shell (命令解释程序)

/etc/shadow

   Linux 将用户的口令(密码)保存在shadow 文件中,该文件不能被普通用户读取,只有root 用户才有权利读取。shadow 文件与passwd 文件一样,每个用户对应其中的一行,并且用8 个冒号分成了9 个部分(称为“域”)。如上图,每段分别表示

1 、用户名:与passwd 用户名相对应。

2 、用户密码:已被加密 如果它的开头是“$ 1 $” 这意味着基于MD5 算法的加密 !如果是在密码栏的第一个字符为* 或者是! ,表示此账号并不会被用来登入,如果是!!表示帐号被锁定(禁用),如果为空,表示用户不需要密码即可登陆。

3 、最近更动密码的日期:这个字段记录了更动密码的那一天的日期。注意:Linux 日期的时间是以1970/01/01 作为 1 ,而1971/01/01 则为366 ,所以这个日期是累加的天数是一个绝对时间!

4 、密码不可被更动的天数:如果是0 ,表示密码随时可以更动。如果在此期间修改系统会提示:You must wait longer to change your password passwd: Authentication token manipulation error

5 、密码必须在限制的天数内修改的天数:必须要在这个时间之内重新设定的密码,否则这个账号将会暂时失效。而99999 ,表示密码不需要重新输入!

6 、密码需要修改期限前的警告期限:当账号的密码失效期限快要到的时候,系统会依据这个字段的设定,发出警告(Warning: your password will expire in 5 days )给这个账号,提醒再过n 天密码就要失效了。。。

7 、密码过期的宽限时间:当密码失效后,还可以用这个密码在n 天内进行登入。 而在这个天数后还没有修改密码,账号就绝对失效了!

8 、账号失效日期:也是用1970 年以来的总天数设定。账号在此规定的日期之后,将无法再使用。通常应用在收费服务的系统中,可以规定一个日期让该账号不能再使用!

9 、保留:最后一个字段是保留的,看以后有没有新功能加入

 

用户组的信息保存在/etc/group 和/etc/gshadow 文件下

 

/etc/group

该文件记录了系统中所有用户组的信息,分为四段,各段含义如下:

1、 用户组名称:就是组的名字

2、 用户组密码:通常不需要设置,如果需要不一个用户临时加入其他组可能要用到。密码记录在/etc/gshadow 中。

3、 GID :用户组标识。

4、 用户列表:以该组为附加组的所有帐号(如果该组是某用户的基本组则该用户不再此段列出),每个用户用“,”隔开。

/etc/gshadow

 与/etc/group 类似,也分为四个段,各段含义如下:

1、 用户组名称

2、 密码栏:同样的,开头为!表示无法登陆

3、 用户管理员帐号:

4、 该用户组的所属帐号:与/etc/group 内容相同。

 

 

 

帐号管理常用命令

 

1、 新增用户命令:useradd

语法:useradd[-c][-d][-e][-f][-g][-G group[,...]][-m[-k skeleton_dir]/-M]

[-s][-u[-o][-n][-r] username

     选项:-c 【comment 】新帐号说明栏,对应于/etc/passwd 第五栏的内容。

           -d 【home_dir 】设定用户的家目录,不设定时使用预设值。

-e 【expire_date 】帐号终止日期,日期的指定格式为MM/DD/YY 。

-f 【inactive_days 】帐号过期几日后永久停权。当值为0 时帐号则立刻被停权。而当值为-1 则关闭此功能。预设值为-1.

-g 【initial_group 】设置用户所属的组。

-G 【group ,[...] 】设置用户的附加组。

-m

-M 不建立使用者目录。

-n

-r 建立系统帐号。

-s 【shell 】使用者登录后使用的shell

-u uid 用户ID 值。

2 、添加密码命令:passwd    

         格式:passwd username

         选项:

         注释:使用useradd 建立帐号之后,默认情况,该帐号暂时被封锁,需要给他设置密码才能启用。passwd 常用的方式用两种,一种是root 用户帮其他用户设置或改密码,命令格式#passwd otherusername root 可以不用知道该用户的密码。另一种是用户自己改密码直接passwd 回车即开始更改。

3 、修改帐号信息命令:usermod

          格式:usermod [-cdegGlsuLu] username

          选项:-L 暂时冻结用户密码,让其无法登陆

                -U 解冻用户密码。

4 、删除用户命令:userdel

         语法:#userdel [-r] username

         选项: -r : 连同用户的家目录也一起删了,不加则只删除帐号,不删除家目录。

 

用户组的管理:

  

 1 、新增用户组命令:groupadd

            语法:#groupadd [-g gid] [-r] groupname

            选项:-g :后边接某个特定的GID, 用来指定GID

                  -r :建立系统用户组。

    2 、修改用户组命令:groupmod

               语法:groupmod [-g newgid] [-n newgroup_name]   oldgroup_name

            选项:-g :修改已有的用户组GID 号。

                  -n :修改已有的用户组名称。

            注释:不要随意更改GID, 否则容易造成系统资源的混乱。

3 、删除用户组命令:groupdel

         语法:groupdel [groupname]

        注释:要删除一个用户组必须确认没有用户使用该组作为初始用户组。

 

4 、设置用户组密码:gpasswd

            语法:#gpasswd   [-r] groupname

            选项:   :如果没有参数,表示给groupname 设置密码。

-r :将groupname 的密码删除。

                   -R :让groupname 的密码栏失效,所以newgrp 就不能用了。  

posted on 2011-09-23 21:11 HUIKK 阅读(636) 评论(0)  编辑  收藏 所属分类: Linux

只有注册用户登录后才能发表评论。


网站导航: