用户管理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用户管理相关的知识,希望对你有一定的参考价值。
第1章 复习
定时任务
1.定时备份
2.定时执行命令
3.书写排错流程
4.企业故障案例: 定时任务没有定向到空或追加到文件
5.企业故障案例: 书写重启tomcat(java程序)定时任务
实例1-1 如何让一个脚本开机自启动
/etc/rc.local (Centos 7 给 /etc/rc.d/rc.local 加上执行权限)
chkconfig
如何通过chkconfig 管理开机自启动
1.脚本存放在
/etc/init.d/
2.脚本要有执行权限
chmod +x /etc/init.d/oldboyd
3.增加chkconfig要求的格式
# chkconfig: 2345 99 98
[[email protected] ~]# cat /etc/init.d/oldboyd
# chkconfig: 2345 99 98
echo oldboy
4.加入到chkconfig管理与检查
[[email protected] ~]# chkconfig --add oldboyd
[[email protected] ~]# chkconfig |grep oldboy
oldboyd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
小结:
面试题:如何让一个脚本开机自启动
1./etc/rc.local
2.chkconfig
3.如何通过chkconfig管理
1)脚本/etc/init.d/ 且 有执行权限
2)符合chkconfig格式
# chkconfig: 2345 99 99
3)添加到chkconfig管理并检查
第2章 用户管理:
2.1 用户分类:
root 0
虚拟用户 1-499 命令解释器/sbin/nologin
服务/程序 运行所需要的用户
普通用户 500
2.2 命令
2.2.1 useradd
-u 指定uid
-s shell 命令解释器 (默认是/bin/bash)
/sbin/nologin
-M 不创建家目录 (sM)
-g 指定用户组名称
实例2-1 添加一个用户lidao999 uid为999 禁止 登录系统不创建家目录
[[email protected] ~]# useradd -u 999 -s /sbin/nologin -M lidao999
[[email protected] ~]# grep lidao /etc/passwd
lidao999:x:999:999::/home/lidao999:/sbin/nologin
[[email protected] ~]# ll /home/lidao999
ls: cannot access /home/lidao999: No such file or directory
实例2-2 创建一个uid为999的虚拟用户 lidaoxxxx
[[email protected] ~]# useradd -M -s /sbin/nologin -u 888 lidao888
[[email protected] ~]#cat /etc/passwd|grep lidao888
lidao888:x:888:888::/home/lidao888:/sbin/nologin
2.2.2 userdel 默认不会删除用户家目录
-r 删除用户的老家 与邮箱
通过注释 /etc/passwd 用户所在行
2.2.3 passwd 修改密码
--stdin 非交互式设置密码
一问一答 交互式
非交互式设置密码
[[email protected] ~]# echo 123456|passwd --stdin oldboy
Changing password for user oldboy.
passwd: all authentication tokens updated successfully.
2.2.4 usermod 修改用户信息
与useradd类似
附加组 -G
[[email protected] ~]# id lidao999
uid=999(lidao999) gid=999(lidao999) groups=999(lidao999)
[[email protected] ~]# usermod -G root,oldboy,www lidao999
[[email protected] ~]# id lidao999
uid=999(lidao999) gid=999(lidao999) groups=999(lidao999),0(root),500(oldboy),501(www)
清空附加组
[[email protected] ~]# usermod -G lidao999
2.2.5 groupadd 添加用户组
-g gid
添加一个虚拟用户mysql 用户和用户组的uid 666
useradd -u 666 -s /sbin/nologin -M mysql
groupadd -g 666 mysql
useradd -u 666 -g mysql -s /sbin/nologin -M mysql
2.3 查询用户信息
id 显示用户信息 uid gid 和属于用户组
w 显示谁登陆系统 并 在干什么
last 所有用户的每次的登录情况
lastlog 所有用户最近一次的登录情况
2.4 文件和目录
2.4.1 文件
/etc/passwd 存放用户信息
/etc/group 用户组信息
/etc/shadow 用户密码信息
/etc/gshadow 用户组密码信息
2.4.2 /etc/skel
目录/etc/skel 每个新用户的家目录的模板
实例2-3 添加用户过程
useradd oldboy
1.创建家目录 修改权限 所有者
2.把 /etc/skel下面所有文件 复制到 oldboy家目录中
[[email protected] ~]# ll -a /etc/skel/
total 20
drwxr-xr-x. 2 root root 4096 Jul 10 18:21 .
drwxr-xr-x. 78 root root 4096 Aug 13 11:08 ..
-rw-r--r--. 1 root root 18 Mar 23 2017 .bash_logout #用户退出的时候 运行里面的命令
-rw-r--r--. 1 root root 176 Mar 23 2017 .bash_profile #/etc/profile
-rw-r--r--. 1 root root 124 Mar 23 2017 .bashrc #/etc/bashrc
模拟故障:
先把/etc/profile中的
PS1的行注释
[[email protected] ~]# useradd wc
[[email protected] ~]# su - wc
[[email protected] ~]$ ll -a
total 20
drwx------ 2 wc wc 4096 Aug 13 11:19 .
drwxr-xr-x. 5 root root 4096 Aug 13 11:19 ..
-rw-r--r-- 1 wc wc 18 Mar 23 2017 .bash_logout
-rw-r--r-- 1 wc wc 176 Mar 23 2017 .bash_profile
-rw-r--r-- 1 wc wc 124 Mar 23 2017 .bashrc
[[email protected] ~]$ m -f .bash*
重新登录:
[[email protected] ~]# su - wc
-bash-4.1$
-bash-4.1$
-bash-4.1$
在有故障的用户下面
cp /etc/skel/.bash* ~
2.4.3 sudo
临时成为root sudo
oldboy用户 查看系统日志
1. sudo
2. cat(root) suid
3. 日志加上 r权限
4. root密码
sudo -l #查看当前用户命令权限
[sudo] password for oldboy:
Sorry, user oldboy may not run sudo on oldboyedu50-lnb. [email protected] ~]$
你没有配置sudo
root用户 visudo 92行下面
1.授予oldboy用户 ls,touch,mkdir
oldboy ALL=(ALL) /bin/ls, /bin/touch, /bin/mkdir
oldboy进行测试
sudo ls /root/
2.授予oldboy /bin/下所有命令
oldboy ALL=(ALL) /bin/*
3.授予oldboy/bin/下所有命令,禁止使用vi和rm命令
oldboy ALL=(ALL) /bin/*, !/bin/rm, !/bin/su, !/bin/vi
4.授予oldboy 系统所有命令并且不需要输入密码
oldboy ALL=(ALL) NOPASSWD:ALL
以上是关于用户管理的主要内容,如果未能解决你的问题,请参考以下文章