用户密码
设置密码
passwd命令
– 格式:passwd [选项]… 用户名
[[email protected] ~]# passwd nsd01 #交互式设置
更改用户 nsd01 的密码 。
新的 密码: #输入新密码
无效的密码: 密码少于 8 个字符
重新输入新的 密码: #重新输入新密码
passwd:所有的身份验证令牌已经成功更新。
[[email protected] ~]# su - nsd01 #临时切换用户身份
[[email protected] ~]$ passwd
更改用户 nsd01 的密码 。
为 nsd01 更改 STRESS 密码。
(当前)UNIX 密码: #输入旧密码
新的 密码: #输入新密码
重新输入新的 密码: #重新输入新密码
passwd:所有的身份验证令牌已经成功更新。
[[email protected] ~]$ exit #退出。回到root用户身份
passwd命令,支持非交互式设置密码
– --stdin:从标准输入(比如管道)取密码
[[email protected] ~]# echo 123 | passwd --stdin nsd01
[[email protected] ~]# echo 123456 | passwd --stdin nsd01
[[email protected] ~]# echo redhat | passwd --stdin nsd01
/etc/shadow,保存密码字串/有效期等信息
– 每个用户记录一行,以:分割为9个字段
[[email protected] ~]# grep nsd01 /etc/shadow
nsd01:
6
6
6NVe937Nd$B0n94XrpQ.LipQHTpYh0iV/M4jCLdccfHxzRLprdxDzwk8WDDh/TzdTfh8lA9y9WKJ.8Ls/l5.w/1W.nV6CFX/:18481:0:99999:7:::
上一次修改密码的时间:自1970-1-1到达上一次修改密码的时间,所经历的天数
字段1:用户帐号的名称
字段2:加密后的密码字符串
字段3:上次修改密码的时间
字段4:密码的最短有效天数,默认0
字段5:密码的最长有效天数,默认99999
字段6:密码过期前的警告天数,默认7
字段7:密码过期后多少天禁用此用户账号
字段8:帐号失效时间,默认值为空
字段9:保留字段(未使用)
用户初始配置文件
配置文件来源
新建用户时,新建用户家目录,根据 /etc/skel 模板目录复制
[[email protected] ~]# ls -A /etc/skel/
[[email protected] ~]# touch /etc/skel/haxi.txt
[[email protected] ~]# mkdir /etc/skel/test
[[email protected] ~]# ls -A /etc/skel/
[[email protected] ~]# useradd nsd19
[[email protected] ~]# ls -A /home/nsd19
[[email protected] ~]# useradd nsd20
[[email protected] ~]# ls -A /home/nsd20
主要的初始配置文件
– ~/.bash_profile:每次登录系统时执行,定义初始变量值
– ~/.bashrc:每次进入新的Bash环境时执行(开启新的终端)
[[email protected] ~]# vim /root/.bashrc #定义永久别名
alias haha=‘echo haha’
开启新的终端进行测试:
[[email protected] ~]# haha
haha
– /etc/bashrc:全局配置文件,影响全体用户 (开启新的终端)
[[email protected] ~]# vim /etc/bashrc
alias xixi=‘echo xixi’
[[email protected] ~]# useradd nsd20
[[email protected] ~]# su - nsd20 #相当于开启新的终端
[[email protected] ~]$ xixi
xixi
[[email protected] ~]$ exit
登出
[[email protected] ~]#
删除用户
userdel命令
格式:userdel [-r] 用户名
添加 -r 选项,宿主目录/用户邮件也一并删除
[[email protected] ~]# userdel -r nsd01 #连同家目录一并删除
[[email protected] ~]# userdel nsd02 #不删除家目录,只删除用户信息
组账户管理
/etc/group,保存组帐号的基本信息
每个组记录一行,以:分割为4个字段
[[email protected] ~]# grep stugrp /etc/group
stugrp❌1504:nsd06
组名:组密码占位符:组的GID:组成员列表
[[email protected] ~]# groupadd tarena #新建一个组
[[email protected] ~]# grep tarena /etc/group #查看组信息
tarena❌1607:
[[email protected] ~]# useradd kaka
[[email protected] ~]# useradd nb
[[email protected] ~]# useradd jack
[[email protected] ~]# useradd kenji
gpasswd命令
– 格式:gpasswd [选项]… 组名
• 常用命令选项
– -a:添加组成员,每次只能加一个
– -d: 删除组成员,每次只能删一个
– -M:定义组成员用户列表,可设置多个
– -A:定义组管理员列表
]# gpasswd -a kaka tarena #添加用户kaka到tarena组
]# grep tarena /etc/group #查看组信息
]# id kaka
]# gpasswd -a nb tarena #添加用户nb到tarena组
]# grep tarena /etc/group
]# gpasswd -M ‘jack,kenji’ tarena #定义组成员列表
]# grep tarena /etc/group
]# gpasswd -a nb tarena
]# grep tarena /etc/group
]# gpasswd -d nb tarena #将nb用户从tarena组中删除
]# grep tarena /etc/group
]# gpasswd -M ‘’ tarena #删除组中所有成员
]# grep tarena /etc/group
-A:定义组管理员列表
[[email protected] ~]# su - nb
[[email protected] ~]$ gpasswd -a kaka tarena
gpasswd:没有权限。
[[email protected] ~]$ exit
[[email protected] ~]# gpasswd -A nb tarena #设置组管理员
[[email protected] ~]# su - nb
[[email protected] ~]$ gpasswd -a kaka tarena
正在将用户“kaka”加入到“tarena”组中
[[email protected] ~]$ exit
[[email protected] ~]#
/etc/gshadow:组的管理信息配置文件
[[email protected] ~]# grep tarena /etc/gshadow
tarena:!:nb:
组名:密码加密字符串:组的管理员列表:组成员列表
删除组账号:删除组的时候,不可以删除基本组
[[email protected] ~]# groupdel tarena
[[email protected] ~]# groupdel tmooc
[[email protected] ~]# grep tmooc /etc/group
[[email protected] ~]# grep tarena /etc/group
计划任务
用途:按照设置的时间间隔为用户反复执行某一项固定的系统任务
软件包:cronie、crontabs
系统服务:crond
日志文件:/var/log/cron
使用 crontab 命令
– 编辑:crontab -e [-u 用户名]
– 查看:crontab -l [-u 用户名]
– 清除:crontab -r [-u 用户名]
计划任务书写格式
分 时 日 月 周 任务命令行(绝对路径)
30 8 * * * #每天早上8:30 执行一次
30 23 * * * #每天晚上23:30 执行一次
30 23 * * 5 #每周的周五23:30 执行一次
30 23 * * 1-5 #每周的周一至周五23:30 执行一次
30 23 * * 1,3,6 #每周的周一周三周六23:30 执行一次
30 23 1 * 1 #每月的1号或每周一晚上23:30 执行一次
-
* * * * #每分钟运行一次
*/5 * * * * #每隔5分钟运行一次
1 */2 * * * #每隔2小时运行一次
*:匹配范围内任意时间
,:分隔多个不连续的时间点
-:指定连续时间范围
/n:指定时间频率,每n …
案例:
每分钟记录当前的系统时间,写入/opt/time.txt
[[email protected] ~]# date
[[email protected] ~]# date >> /opt/time.txt
[[email protected] ~]# cat /opt/time.txt
[[email protected] ~]# crontab -e #编写计划任务
-
-
-
-
- date >> /opt/time.txt
-
-
-
[[email protected] ~]# crontab -l #查看计划任务内容
-
-
-
-
- date >> /opt/time.txt
-
-
-
[[email protected] ~]# cat /opt/time.txt
上一篇: 数据库连接池JDBC
下一篇: 构建本的Yum仓库--用户管理简介