10.用户管理
1.用户管理
1.1用户分三类
1.管理员:root #类似于皇帝 最高权限 默认系统中就1个,UID:0
2.傀儡用户-虚拟用户
作用: 用户不需要登录系统 只用来运行和启动程序
UID:CentOS6.x 1-499和CentOS7.x 1-999都是虚拟用户,不允许登录操作系统 没有家目录
3.普通用户 #默认没有普通用户 手动创建的用户 可以登录系统 正常运行命令 有家目录
1.2用户相关目录
[root@oldboyedu ~]# ll /etc/passwd /etc/shadow /etc/group /etc/gshadow
-rw-r--r-- 1 root root 566 Aug 25 00:01 /etc/group # 组信息
---------- 1 root root 447 Aug 25 00:01 /etc/gshadow # 组的密码信息文件
-rw-r--r-- 1 root root 1171 Aug 25 00:01 /etc/passwd # 用户的信息
---------- 1 root root 720 Aug 25 00:01 /etc/shadow # 用户的密码信息
[root@jyh ~]# head -1 /etc/passwd
root: x:0:0:root:/root:/bin/bash
以冒号分割 看每一列的含义
第一列:root:用户名
第二列:x: 用户密码 x必须存在如果删除 表示清空密码 可以使用su的方式进行免密码切换用户
第三列:0:UID属主ID
第四列:0:GID数组ID
第五列:root:用户的描述信息 可有可无
第六列:/root:家目录
第七列:/bin/bash:解释器 当前用户登录系统后默认的使用什么解释器运行命令 普通用户和管理员用户
/sbin/nologin: 不运行当前的用户登录操作系统 傀儡用户 虚拟用户
1.3用户相关命令
1.useradd #创建普通用户
格式:useradd 参数 用户名
参数:-s 指定解释器;-u 指定UID;-g 指定GID; -M 不创建家目录;-c 描述;-G 指定属于多个组 附属组
[root@oldboyedu ~]# # 创建一个虚拟用户 UID999 不允许登录 不创建家目录
[root@oldboyedu ~]# #oldboy2
[root@oldboyedu ~]# useradd -u899 -M -s /sbin/nologin oldboy2
2.创建用户的过程
1)使用命令创建用户 自动创建/home/oldboy1
2)会复制/etc/skel/目录下的隐藏文件 存放环境变量的文件 到/home/oldboy1
3)系统自动修改拷贝过去的隐藏文件权限为普通用户
出现以下错误的解决方式 系统客户端不是root
-bash-4.2$ # 运维 笔试题 开发必会
-bash-4.2$
方法:1.先拷贝隐藏文件到当前家目录 cp /etc/skel/.* .
2.退出重新登录到当前用户
方法1: 使用su的方式
方法2: ssh远程连接的方式登录
3.source 和 . 重新执行.bash_profile
3.usermod #修改已经创建用户的信息 参数选项与创建用户一样
usermod -s /bin/bash -Goldboy1,root -c hehe oldboy2
oldboy2 :x:899:1003:hehe:/home/oldboy2:/bin/bash
[root@oldboyedu ~]# id oldboy2 #查看用户
uid=899(oldboy2) gid=1003(oldboy2) groups=1003(oldboy2),0(root),1002(oldboy1)
清空附加组:usermod -G '' oldboy2 #单引号里不加内容
4.userdel #删除用户
-r #删除用户家目录及相关信息
ll /home #查看用户家目录
ll /var/spool/mail #查看目录日志信息
5.passwd # 给用户设置密码
交互式方式设置密码:
[root@oldboyedu ~]# passwd # 直接回车默认修改当前登录用户的密码
[root@oldboyedu ~]# passwd root(用户名) # 指定修改某个用户的密码
非交互式方式:echo 密码|passwd --stdin oldboy1(用户名)
6. chown # 修改文件的属主属组
-R 同时修改目录及目录以下所有的文件的属主属组
chown oldboy.oldboy file # 同时修改文件的属主属组
chown oldboy file # 只修改文件的属主
chown .oldboy file # 只修改文件的属组
chown -R oldboy.oldboy dir #修改dir目录及目录以下所有的文件
7.last #查看用户IP
查看Linux服务器的公网IP地址:curl cip.cc或curl ifconfig.me
8.id #查看用户信息
如何判断用户是否存在?
1. id 用户名
2. cat /etc/passwd #可以使用grep 等过滤文件内容
[root@oldboyedu ~]# grep 'oldboy1' /etc/passwd