21天 操作系统权限管理 用户管理

操作系统特殊权限位

setuid :  s  属主权限  4  属主权限位总结: s r w x
概念说明: 可以让所有普通用户获得指定文件属主用户能力, 像属主用户一样执行命令或者操作文件
          以文件的所属用户身份执行,而非执行文件的用户
作用说明: 特殊命令操作权限 --> 赋予 --> 所有普通用户
设置方法: chmod  u+s/u-s 文件信息 u(user 属主)  |  chmod 4755 文件信息

setgid :  s  属组权限  2  属组权限位总结: s r w x
概念说明: 可以让所有普通用户获得指定文件属组用户能力, 像属组用户一样执行命令或者操作文件
          以文件的所属用户组身份执行,而非执行文件的用户	
设置方法: chmod  g+s/g-s 文件信息 g(group 属组)  |  chmod 2755 文件信息

Sticky bits (粘滞位) : t 1  *****  其他用户权限位总结: t r w x
概念说明: 给目录设置特殊权限, 将目录变为共享资源目录, 文件数据只能被属主用户所管理
          其他用户只看文件内容
设置方法: chmod  o+t/o-t 文件信息 o(other 其他用户)  | chmod 1777 目录信息

总结权限命令

chmod  -- 修改数据权限信息

针对不同用户修改权限
· 属主用户: chmod u +-= s r w x  文件/目录 
· 属组用户: chmod g +-= s r w x  文件/目录  	
· 其它用户: chmod o +-= t r w x  文件/目录

针对所有用户修改权限
· 按照字符进行修改: chmod a +-= r w x  文件/目录
· 按照数值进行修改: chmod 000 ~ 777    文件/目录
                    chmod 0000 - 7777  文件/目录
PS: 使用chmod前提, 必须对权限非常熟悉

chmod -R 777 /oldboy  --- 递归修改目录权限以及目录下面所有数据权限

chown  -- 修改文件数据属主和属组信息
chown oldgirl oldboy.txt      --- 只修改文件属主信息
chown .oldboy01 oldboy.txt    --- 只修改文件属组信息 
chown oldgirl.oldboy01 oldboy.txt --- 属主和属组信息同时修改
chown oldgirl. oldboy.txt 

chown -R oldgirl. /oldboy  --- 递归修改目录属主属组以及目录下面所有数据属主和属组

给文件上锁命令:
chattr +i  文件信息    --- 给文件上锁 
lsattr 文件信息        --- 查看文件是否上锁
chattr -i  文件信息    --- 给文件解锁
说明: 系统中非常重要文件必须上锁

普通用户操作系统, 出现权限拒绝, 如何处理

1) 修改文件或目录权限    chmod       OK
2) 进行用户身份信息转换  su - root   OK 
3) 进行用户提权操作      sudo        OK 
4) 修改文件特殊权限位    setuid setgid 粘滞位  OK 
5) 文件数据信息上锁      
   
   面试题: 根据以下文件属性信息, 判断文件权限, 但是此时root用户无法编辑文件什么原因:
   -rw-r--r-- 1 root root 158 Nov  8 11:38 /etc/hosts
   可能文件被上锁了, 利用lsattr查看确认, 利用chattr -i 解锁

操作系统用户管理

   1) 操作系统用户知识回顾 
                 用户分类:
   · 创建管理员 权限比较大    root   uid  0 
   · 虚拟用户   管理进程信息  nobody uid  1-999   不能登录系统  不能有家目录
   
     linux进程信息如何查看:
	 查看进程命令: 
	 ps - report a snapshot of the current processes
	      显示出来当前某一时刻进程信息
     ps -ef  --- 查看系统中所有服务进程信息
     # ps -ef|grep sshd
     root       6581      1  0 09:33 ?        00:00:00 /usr/sbin/sshd -D	
    ==================================================		 
   · 普通用户  权限较低用户   oldboy uid 1000+
          用户和用户组关系: 
   用户标识信息:
   uid  :  用户身份证号  
   gid  :  用户组编号
   PS: 系统识别用户只关注uid或者gid号码信息 oldboy -- 1002  ???

和用户或者用户组相关文件信息

   /etc/passwd  ****** : 保存系统所有用户信息
   /etc/shadow         : 保存系统所有用户密码信息  
   /etc/group	       : 保存系统所有用户组信息
   /etc/gshadow	       : 保存系统所有用户组密码信息   
   
   sunwukong01:x:1024:1024::/home/sunwukong01:/bin/bash
   sunwukong02:x:1025:1025::/home/sunwukong02:/bin/bash
   sunwukong03:x:1026:1026::/home/sunwukong03:/bin/bash
   sunwukong04:x:1027:1027::/home/sunwukong04:/bin/bash
   sunwukong05:x:1028:1028::/home/sunwukong05:/bin/bash
      01       02  03  04 05   06               07   
	  
   01. 用户名称信息
   02. 早期密码信息
   03. 用户UID数值信息
   04. 用户GID数值信息
   05. 用户描述信息
   06. 用户家目录信息
   07. shell信息  登录系统方式 
       /bin/bash      --- 可以登录	
       /sbin/nologin  --- 不可以登录系统	 	   
   
   测验: passwd文件中有多少个虚拟用户
         grep 
         awk			 
   思路1) 查出虚拟用户
          grep "/sbin/nologin" /etc/passwd
		  awk '$NF~/nologin/' /etc/passwd
   
   思路2) 将查出虚拟用户进行统计
          grep -c "/sbin/nologin" /etc/passwd
          awk '$NF~/nologin/{i++}END{print "虚拟用户数量:",i}' /etc/passwd

和用户相关目录信息

   /etc/skel     --- 用户家目录样板房
   .bash_logout  --- 用户退出系统后执行操作
   .bash_profile --- 可以配置变量 环境变量 别名  局部配置
   .bashrc       --- 可以配置变量 环境变量 别名  局部配置

   /home/oldboy  --- 用户房子
   
   用于修复加目录
   命令提示符出现错误/家目录中没有任何信息   
   cp /etc/skel/.b*  ~/
   面试题: 命令提示符显示异常了如何修复: -bash-4.2$
   方法一: 修复用户家目录
   方法二: 设置PS1环境变量

和用户相关的命令

 useradd   --- 创建用户命令
   -u   --- 指定用户uid信息
   -c   --- 设置用户描述信息
   -g   --- 指定用户属于哪个主要组 
   -G   --- 指定用户属于哪个附属组
        [root@linux67 ~]# useradd alex07 -u 2002 -c dba -g olddog -G linux
        [root@linux67 ~]# grep -E "olddog|linux" /etc/group
        linux:x:1500:alex07
        olddog:x:1201:
        [root@linux67 ~]# id alex07
        uid=2002(alex07) gid=1201(olddog) groups=1201(olddog),1500(linux)
   创建虚拟用户:
   -s   --- 指定登录方式  /sbin/nologin 
   -M   --- 指定不能创建家目录
   # useradd alex08 -M -s /sbin/nologin    *****  --- 如何创建虚拟用户
   # ll -d /home/alex08
   ls: cannot access /home/alex08: No such file or directory
   [root@linux67 ~]# grep alex08 /etc/passwd
   alex08:x:2003:2003::/home/alex08:/sbin/nologin
   [root@linux67 ~]# su - alex08
   su: warning: cannot change directory to /home/alex08: No such file or directory
   This account is currently not available.
   
   测验: 创建一个database用户, uid为888, 并且不能登录系统, 不能有家目录
         useradd -u 888  -s /sbin/nologin -M
   
   usermod  - 修改用户信息
   -u   --- 修改用户uid信息
   -c   --- 修改用户描述信息
   -g   --- 修改用户属于哪个主要组 
   -G   --- 修改用户属于哪个附属组
   -s   --- 修改登录方式  /sbin/nologin 
  
   userdel --- 删除用户家目录
   userdel -r 用户信息   --- 彻底删除用户
   问题: 删除用户不彻底, 有可能原有家目录会被别人占用

课程知识梳理总结:

1) 系统权限管理
   a 系统特殊权限   setuid setgid 粘滞位
   b 文件加锁方式   chattr lsattr 
   c 权限相关命令   chmod chown
2) 系统用户管理
   a 用户相关文件   passwd 
   b 用户相关目录   /etc/skel 
   c 用户相关命令   useradd usermod userdel
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值