用户管理命令

用户管理

1,用户信息文件/etc/passwd

用户名:是否有密码:UID:GID(初始化):说明信息:家目录:登陆之后的shell

UID取值范围:

超级用户:0

系统用户(伪用户):1-499

普通用户:500-65535

GID:

初始组,每一个用户必须有一个且只有一个初始组,一般就是和这个用户同名的组

附加组,用户可以有多个附加组

命令->shell就是命令解释器->内核

将普通用户赋予root权限,只需将UID改为0,改完后,提示符变为#,普通用户为$

2,用户密码文件/etc/shadow

注意,该文件权限为000,只有root可读,并且存放的是加密以后的密码,非明文,该文件可被暴力破解,注意保护

用户名:加密后的密码:密码最后修改的时间:下次密码修改必须与上次密码修改的天数间隔:密码有效天:提醒修改密码的天数:密码到期后的宽限天数:帐号失效时间:预留

密码显示为*或!!,意为不能登陆

密码最后修改的时间为时间戳,即自1970年1月1日后算起,每过一天加1天

密码到期后的宽限天数为-1表示永远不会生效

帐号失效时间也是时间戳表示法,到帐号失效时间,帐号即失效

时间戳转换日期:

date -d "1970-01-01 16066 days"

日期换时间戳:

echo $(($(date --date="2014/01/06" +%s)/86400+1))

3,组文件/etc/group

组名:组是否有密码:GID:组中的用户

4,组密码:/etc/gshadow

组名:组密码:组管理员用户:组中的用户

5,家目录:/home/username,权限是700

6,用户的邮箱/var/spool/mail

7,用户模板目录/etc/skel,创建新用户时,根据该目录的内容,创建默认的文件

useradd命令

-u , UID, 指定UID

-d , directory, 指定家目录

-c , common,指定用户说明

-g , group,指定初始组

-G , Group,指定附加组

-s , shell,指定登陆shell

useradd命令,默认值的配置文件:

/etc/default/useradd

GROUP=100 , 默认组

HOME=/home , 用户家目录

INACTIVE=-1 , 密码过期宽限天数

EXPIRE= , 密码有效天数

SHELL=/bin/bash , 默认shell

SKEL=/etc/skel , 模板目录

CREATE_MAIL_SPOOL=yes , 是否创建邮箱

/etc/login.defs

PASS_MAX_DAYS 99999 , 密码有效期

PASS_MIN_DAYS 0 ,密码修改间隔

PASS_MIN_LEN 5 , 密码最小位数(PAM文件设置)

PASS_WARN_AGE 7 , 密码到期警告天数

UID_MIN 500 , 最小和最大UID范围

GID_MAX 60000

ENCRYPT_METHOD SHA512 , 加密算法

passwd指令

不跟用户名,修改当前用户;只有root才有权限根其他用户名,也就是说,只有root才能修改其他用户的密码

-S, status, 察看用户的密码状态

-l, lock, 锁定用户

-u, unlock, 解锁用户

使用字符串生成密码,常用来为大量用户批量生成默认密码: echo "123" | passwd --stdin user

usermod指令,user modify, 修改用户信息,命令选项和useradd类似

chage指令,change, -l 察看用户密码状态,更直观, -d 设置上次密码修改日期

chage -d 0 username,用于批量添加用户后,赋予默认简单密码,需要让用户已登陆就要修改密码

userdel指令, 删除用户, -r 删除用户的同时同时删除用户家目录

id指令,察看用户uid,gid,groups

env指令,环境变量

用户切换su

 - , 切换用户同时,连带切换用户环境变量

su - root, 切换为root

su - root -c "useradd user3" , 临时切换为root并执行命令

groupadd,添加组,-g 指定组ID

groupmod, 修改组, -g 修改组ID, -n 修改组名

groupdel, 删除组

注意,如果组是某用户的初始组,则不能删除

gpasswd,  将用户从组中添加或删除

-a, 添加用户

-d, 删除用户

猜你喜欢

转载自hellobbboy.iteye.com/blog/2377536