摘要:本篇主要介绍了系统运维之Linux 运维基础:用户管理,通过具体的内容展示,希望对Linux开发的学习有一定的帮助。
本篇主要介绍了系统运维之Linux 运维基础:用户管理,通过具体的内容展示,希望对Linux开发的学习有一定的帮助。
用户类型
用户管理基本操作
创建用户
# 创建普通用户danni
useradd danni
# 创建用户,指定用户id,所属组,附属组,用户注释
useradd danni -u 2000 -g danni -G dannis -c "An IT girl"
# 创建虚拟用户 mysql
useradd mysql -M -s /sbin/nologin -c "database manager"
useradd参数说明:
查看用户信息
用户的信息保存在 /etc/passwd 目录下
# 查看用户信息
[root@smartgirl ~]# grep mysql /etc/passwd
mysql:x:1002:1002:database manager:/home/mysql:/sbin/nologin
1 2 3 4 5 6 7
------------------------------------------------------------------------
各字段含义:
1.用户名
2.用户密码,正真的密码保存在/etc/shadow中,此处仅占位
3.用户id
4.所属组id
5.用户注释
6.用户家目录 --- 虚拟用户的家目录实际并不存在
7.用户登录方式 /sbin/nologin ---- 不能登录
修改用户信息
usermod $用户名 $参数 $信息
# 修改用户登录方式 --- 当有员工离职,账号可以设置为不可登录(保留账号)
usermod danni -s /sbin/nologin
删除用户
userdel $用户名 — 不会删除用户的家目录
userdel -r $用户名 — 彻底删除用户,会删除用户家目录
补充:
groupadd $用户组名 — 创建用户组
groupdel $用户组名 — 删除用户组
设置用户密码
交互式设置
passwd $用户名
非交互式设置
echo 密码信息|passwd --stdin $用户名
查看所有用户登录信息
# 根据用户信息空闲时间,当前操作等,可以判断用户的使用系统情况
# 如判断用户是否占用CPU资源过多,是否长时间运行脚本
# 从而判断是否执行了死循环脚本,或者系统被植入病毒
[root@smartgirl ~]# w
05:47:31 up 10:19, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/2 10.0.0.1 01:45 3.00s 0.24s 0.00s w
root pts/3 10.0.0.1 01:45 2:55m 0.03s 0.02s bash
1 2 3 4 5 6 7
----------------------------------------------------------------------
各字段含义:
1. 登录用户用户名
2. pts/x 远程登录系统
tty1 本地登录
echo '请勿继续操作!' >> /dev/pts/2 --- 将在用户终端输出该信息,可用于提醒用户
3. 从哪连接的服务器
4. 登录时间
5. 空闲时间 --- 无操作
6. 用户操作系统 消耗的CPU资源
7. 用户当前操作 ich(执行脚本) bash命令行输入
文件/目录权限
文件/目录权限的设置是用户管理中非常重要的内容,因为Linux中一切皆文件,掌握了文件的控制权,就掌握了系统的控制权,文件权限的管理对服务器的安全至关重要。
文件权限说明
r 可读
w 可执行
x 执行这个文件(脚本文件)
权限配置结论:
root用户对任何文件都默认有读写权限,即使没有执行权限也可以用sh命令执行文件
对于文件来说,写权限和执行权限都需要有读权限支持
普通如果想对文件进行操作,必须对文件赋予读的权限
目录权限说明
r 可读目录中文件的属性
w 可在目录中添加或删除文件数据信息
x 可进入到目录中
目录权限配置结论:
root用户对目录有绝对权限
对于目录来说,写权限和读权限都需要有执行权限的配合
如果想对目录进行操作,必须对目录赋予执行操作
root用户文件默认权限:644
保证属主可编辑文件,其他用户可读文件
root用户目录默认权限:755
保证属主可编辑目录中文件,其他用户可读取目录信息,并进入到目录
ps:文件是否可以编辑查看,不仅与文件自身的权限有关,还与上一级或上n级目录的权限有关
设置用户文件权限
修改单类型用户权限
属主 — user — u
属组 — group — g
其他用户 — other — o
chmod u+r/w/x — 添加权限
chmod u-r/w/x — 减少权限
chmod u=rw — 直接赋值
修改所有类型用户权限
数值设定:chmod 755 $文件名
符号设定:chmod a=x $文件名
修改文件属主/属组
# 修改属主
chown $属主 $文件
# 修改属组
chgrp $属组 $文件
# 修改属主和属组
chown $属主.$属组 $文件
chown $属主. $文件
# 修改目录的权限
chown -R $属主.$属组 $目录 --- 递归修改(注意参数是大写R)
默认用户文件/目录权限
系统中有一个umask,是文件/目录权限掩码,不同用户的umask值是不一样的,不同用户的umask的值可以是不一样的,umask决定了用户创建的文件/目录的默认权限。
这里只用root用户权限来作说明。
默认umask : 0022
默认文件权限: 666 - 022 = 644
默认目录权限:777 - 022 = 755
文件权限计算:
对于目录,只需要用 777 减去 umask的值即可
但是,对于文件,其情况就比较特殊
若 umask 某一位是奇数,则该位对应的计算结果要+1
若都是偶数,则不需要特殊处理,也就是说:
假如umask是033,那么文件权限是 666 - 033 => 633 + 011 => 644
修改umask
临时修改
umask $数字
永久修改
vi /etc/profile
文件特殊权限位
文件在系统中一共有12个权限位,除了属主,属组和其他用户rwx一共9个权限位外,还有另外三个,分别时:
setuid:将用户属主所拥有的能力分配给所有人chmod u+s $文件名 或 chmod 4xxx $文件名
setgid:将用户属组所拥有的能力分配给所有人 chmod g+s $文件名 或 chmod 2xxx $文件名
sticky bit(粘滞位):可以将不同用户信息放置到共享目录中,实现不同用户数据可以互相查看,但是不可以互相随意修改,可以用于创建一个共享目录 chmod o+t $目录 或 chmod 1777 $目录
系统有一个默认的共享目录 /tmp
普通用户提权
修改文件/目录 rwx 权限位
修改/etc/sudoers文件内容,使用sudo命令执行被赋予的权限
# 示例
# `visudo` 或 `vi /etc/sudoers` 可对文件进行编辑,推荐使用`visudo`,其有语法检查功能
92 root ALL=(ALL) ALL
93 danni ALL=(ALL) /usr/sbin/useradd
------------------------------------
[danni@smartgirl ~]sudo useradd danni01 # 获得添加用户的权限
设置setuid/setgid,赋予普通用户属主/属组的权限
注意:
setuid 权限一般赋予二进制文件的命令文件或者一些可执行的脚本文件
setgid
特殊目录和文件
系统中一个特殊的目录 : /etc/skel/
该目录是用户家目录的样板目录,新创建用户的家目录会参考这个目录
目录中自带的文件有:
/etc/skel 目录的应用:
目录中可以存储运维操作规范说明文件
调整命令提示符信息
用户家目录中文件被恶意删除,出现问题:命令提示符变为bash-4.2$
可将/etc/skel目录中的文件复制到用户家目录下,提示符即恢复正常
用户家目录下的特殊文件
.bash_history — 历史命令记录文件
.viminfo — 样式信息(可设置默认显示行号,文件头信息)
系统中和用户相关的文件
/etc/passwd — 记录系统用户信息文件
/etc/shadow — 系统用户密码文件
/etc/group — 组用户记录文件
/etc/gshadow —组用户密码信息
/etc/shells — 所有可选登录方式
我是小职,记得找我
✅ 解锁高薪工作
✅ 免费获取基础课程·答疑解惑·职业测评
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号