日期:2014-05-16  浏览次数:20822 次

程序员必知必会----linux常用命令之三【用户管理】

?

一.配置文件说明

1./etc/passwd :用户信息文件

格式:用户名:密码位:UID:GID:注释:宿主目录:shell

?

UID说明:

root:UID=0

伪用户:UID 1-499,比如ftp,sshd,mail,shutdown等等

普通用户:UID 500-60000,新增用户

?

?

2./etc/shadow :密码文件

格式:用户名:密码:最后一次修改密码的天数:两次修改密码的最小天数间隔:密码保持有效的最多天数:密码失效前提前警告的天数:账号闲置时间:密码已经失效的天数:标志(一般不用)

?

3./etc/group ?:用户组文件

格式:组名:组密码位:GIG:组内用户列表

?

4./etc/gshadow:组密码文件

5./etc/skel/*:新用户环境变量文件

6./etc/login.defs:使用useradd默认创建用户时的缺省配置,比如UID范围,GID范围,密码有效期,密码长度限制,等等

7./etc/default/useradd:使用useradd默认创建用户时的缺省配置,比如宿主目录位置,默认shell,默认使用的新用户环境变量文件位置(/etc/skel),等等

?

二.添加、删除用户

1.使用命令创建

useradd 用户名?

-u:指定UID

-g:指定所属用户组GID或组名称

-G:指定所属多个组名称,逗号分隔

-d:宿主目录,会自动创建,如果目录已经存在,则不会将环境变量文件拷贝到该目录,需要手工拷贝

-s:命令解释器shell

-c:描述信息

-e:指定失效时间

例子:

useradd utest -u 600 -g 0 -G sys,adm -d /home/utest -s /bin/bash -c "this is a testuser"

?

passwd 用户名:设置密码

?

2.编辑配置文件创建

1)分别在/etc/passwd、/etc/group和/etc/shadow中增加一行记录

密码设置:echo 123456 | sha512sum?

2)创建宿主目录

3)拷贝默认的配置文件到宿主目录: cp -rf /etc/skel/* dir

4)设置用户初始密码

?

3.删除用户

userdel -r 用户名

-r:删除用户宿主目录

?

4.修改用户

usermod -G 组名称 用户名:将用户添加到组中

usermod -l 新用户名 -d dir -g 组名称 用户名:将用户的登录名改为新用户名,并且加入到组中,同时修改宿主目录

?

三.添加、删除组

1.创建组