用户管理su useradd userdel finger usermod passwd chsh chfn pwck id chage chage
影子口令:
用户:/etc/shadow
组:/etc/gshadow
用户类别
管理员 :id 0
普通用户 id 1-65535
系统用户 1-499
一般用户 500-60000
用户组类别
管理员组
普通组
系统组
一般组
用户组类别:
私有组:系统自动创建一个和用户名同名的组
用户基本组:默认组
附加组:默认组以为的组
加密方法:
对称加密
公钥加密
单向加密:雪崩效应 定长输出(md5,sha1)
详细了解一下文件内容
[root@Jameszhan t]# /etc/passwd
[root@Jameszhan t]# /etc/shadow
[root@Jameszhan t]# cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=ye
################################################
su:切换用户
useradd:添加用户
userdel:删除用户
usermod:修改用户信息
passwd: 修改用户密码
chsh: 修改用户shell
chfn:
finger
id:查看用户信息
chage:
################################################
su:switch user 切换用户
[root@Jameszhan etc]# su jameszhan
sh-4.1$
################################################
useradd
-u:设置uid
-g:基本组
-G.,.,.,:附加组(可用有多个)
-c:注释
-d:设定家目录
-s:指定shell的路径 sbin/nologin 禁止用户登录
-m:强制为用户添加家目录和-k一起用(复制skel目录至家目录)
[root@Jameszhan t]# ls -al /etc/skel/
-M:不给用户添加家目录
登录的配置全局配置信息
[root@Jameszhan ~]# cat /etc/login.defs
################################################
userdel
userdel [option] USERNAME
默认不删除家目录
-r 同时删除用户家目录
################################################
finger:查看用户帐户信息
finger USERNAME
################################################
id:print real and effective user and group IDs 显示用户id和组id
-u uid
-g gid(基本组)
-G 附加组
[root@Jameszhan ~]# id
uid=0(root) gid=0(root) 组=0(root),500(test) 环境=unconfined_u:unconfined_r:unconfined_t:s0-
s0:c0.c1023
[root@Jameszhan ~]# id -u
0
[root@Jameszhan ~]# id -g
0
[root@Jameszhan ~]# id -G
0 500
################################################
usermod
参考资料:usermod manpage
usermod -modify a user account 修改用户帐户信息
usermod [options] username
usermod 命令修改系统帐户文件来反映通过命令行指定的变化
选项(options)
-a|--append ##把用户追加到某些组中,仅与-G选项一起使用
-c|--comment ##修改/etc/passwd文件第五段comment
-d|--home ##修改用户的家目录通常和-m选项一起使用
-e|--expiredate ##指定用户帐号禁用的日期,格式YY-MM-DD
-f|--inactive ##用户密码过期多少天后采用就禁用该帐号,0表示密码已过期就禁用帐号,-1表示禁用此
功能,默认值是-1
-g|--gid ##修改用户的gid,改组一定存在
-G|--groups ##把用户追加到某些组中,仅与-a选项一起使用
-l|--login ##修改用户的登录名称
-L|--lock ##锁定用户的密码
-m|--move-home ##修改用户的家目录通常和-d选项一起使用
-s|--shell ##修改用户的shell
-u|--uid ##修改用户的uid,该uid必须唯一
-U|--unlock ##解锁用户的密码
示例(Examples):
1,新建用户test,密码test,另外添加root组
[root@Jameszhan ~]# useradd test
[root@Jameszhan ~]# echo "test" | passwd --stdin test
更改用户 test 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
2,把test用户加入newtest组
##多个组之间用空格隔开
[root@Jameszhan ~]# usermod -aG newtest test
[root@Jameszhan ~]# id test
uid=500(test) gid=500(test) 组=500(test),501(newtest)
3,修改test用户的家目录
[root@Jameszhan ~]# usermod -md /home/jameszhan test
4,修改用户名test>jameszhan
#usermod -l jameszhan(新用户名称) test(原来用户名称)
[root@Jameszhan ~]# usermod -l jameszhan test
5,锁定用户-L
[root@Jameszhan ~]# usermod -L jameszhan
6,解锁户-U
[root@Jameszhan ~]# usermod -U Jameszhan
7,修改用户的shell
[root@Jameszhan ~]# usermod -s /bin/sh Jameszhan
8,修改用户的UID
[root@Jameszhan ~]# usermod -u 578 Jameszhan (UID必须唯一)
[root@Jameszhan ~]# id Jameszhan
uid=578(Jameszhan) gid=500(test) groups=500(test),501(usertest)
9,修改用户的GID
[root@Jameszhan ~]# groupadd -g 578 test1
[root@Jameszhan ~]# usermod -g 578 Jameszhan (578组一定要存在)
[root@Jameszhan ~]# id Jameszhan
uid=578(Jameszhan) gid=578(test1) groups=578(test1),501(usertest)
10,指定帐号过期日期
[root@Jameszhan ~]# usermod -e 2012-09-11 Jameszhan
11,指定用户帐号密码过期多少天后,禁用该帐号
[root@Jameszhan ~]# usermod -f 0 Jameszhan
注意(caution):
usermod不允许你改变正在线上的使用者帐号名称。当usermod用来改变userID,必须确认这名user没在电脑上执
行任何程序
/etc/passwd
user_name:x:uid:gid:commnet:home:shell
/etc/shadow
username:passwd:lastchg:min:max:warn:inactive:expire:flag
--用户名
--密码
--从1970年1月1日起到上次修改密码所经过的天数
--密码再过几天可以被变更(0表示随时可以改变)
--密码再过几天必须被变更(99999表示永不过期)
--密码过期前几天提醒用户(默认为一周)
--密码过期几天后帐号被禁用
--从1970年1月1日算起,多少天后账号失效
################################################
passwd:update user’s authentication tokens 更新用户密码
--stdin:接收标准输入内容
-l:锁定用户
-u:解锁用户
-d:清空用户密码
修改newtest用户密码
[root@Jameszhan ~]# passwd newtest
更改用户 newtest 的密码 。
新的 密码:
无效的密码: WAY 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
脚本修改密码
[root@Jameszhan ~]# echo "newtest" | passwd --stdin newtest
更改用户 newtest 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
################################################
chsh:修改用户的shell
chsh USERNAME
################################################
chfn:change finger 修改注释信息
chfn USERNAME
################################################
pwck:检查用户完整性
[root@Jameszhan ~]# pwk
-bash: pwk: command not found
[root@Jameszhan ~]# pwck
user 'adm': directory '/var/adm' does not exist
user 'uucp': directory '/var/spool/uucp' does not exist
user 'gopher': directory '/var/gopher' does not exist
################################################
chage:change user password expiry information 修改用户密码信息
-d:最近一次的修改时间
-E:过期时间
-I:非活动时间
-m:最短使用期限
-M:最长使用期限
-W:警告时间
################################################