zoukankan      html  css  js  c++  java
  • 用户权限管理之用户组管理

    上节课内容

    1、字符处理命令

    sort 排序   |   uniq 去重复的行

    (割成、切牌)cut 和 awk 一样 处理有规律格式的 位置 提取

    sort -t":" -k2 -n -r  文件路径

    sort 文件路径 | uniq -c 显示重复的次数 
    sort 文件路径 | uniq -d 只显示有重复的内容

    sort 文件路径 | uniq -u 只显示没有重复的内容

    cut -d":" -f1-3 文件路径 1 到 3 行

    cut -d":" -f1,3,7 就是第 1 行 3 行 7 行

    内容 | tr "rot" "ROT"

    内容 | wc -l 统计行数

    内容 | wc -w 统计单词个数 (默认以空格分割)

    wc -c 统计 bytes 个数 

    [root@web01 ~]# wc -c c.txt
    75 c.txt
    [root@web01 ~]# ll c.txt
    -rw-r--r-- 1 root root 75 10月 27 14:38 c.txt
    [root@web01 ~]# wc -c c.txt | cut -d" " -f1
    75
    [root@web01 ~]# ll c.txt | cut -d" " -f5
    75
    [root@web01 ~]#

    2、打包、压缩、解压 

    tar cvzf 路径/打包文件名.tar.gz 文件1 文件2 文件3 ...
    tar cvjf 路径/打包文件名.tar.bz2 文件1 文件2 文件3 ...

    tar xvf 路径/打包文件 -C 解压的文件夹


    tar cvzf `date "+%Y-%m-%d"`.bak.tar.gz /home  打包home文件 做个标记时间点

    zip 路径/打包文件名.zip
    unzip 路径/打包文件名.zip -d 解压的文件夹

    3、文件系统

    操作系统: 文件系统 文件系统 文件系统
    硬盘 : 分区1 分区2 分区3

    centos7:xfs
    centos6:ext4



    硬盘--------》房子
    硬盘分区----》打隔断,分成一间间小屋子
    文件系统----》对每间小屋子装修一下



    superblock-》inode/block的使用情况,。。。
    inode---》元数据
    block---》真实的内容


    cat /etc/passwd

    4、软硬连接
    ln -s 源路径 目标路径
    ln 源路径 目标路径

    相同点:
    修改一个文件的内容,其他链接文件都跟着改

    不同点:
    1、硬链接的多个文件inode号一样,软链接的多个文件inode号不一样
    2、删除源文件,硬链接仍然可用,但软链接文件失效
    3、硬链接只能对文件做,而且不能跨分区
    软链接可以对文件和文件夹做,而且可以跨分区

    磁盘满了:
    1、inode号用完了
    2、磁盘空间用完了

    ps:通常情况下都是inode号够用,但是磁盘空间满了



    /a/b/c/d/e/f.txt
    /boot/test.txt

    /boot/data/a.txt

    /boot/aaaa/b.txt

    /dev/sda3---------------/
    /dev/sda1---------------/boot
    /dev/sdb2---------------/boot/data/

    今日内容:
    用户权限管理之用户与组管理
    1、创建用户与哪些文件有关系=》编辑文件手动创建用户
    2、创建用户与组

    用户权限管理之基本权限rwx管理
    1、设置
    2、权限的作用(文件、文件夹)


    一:用户与组管理
    1、什么是用户
    用户是操作系统提供一种安全机制
    用户是权限的化身

    2、为何要有用户?
    1、划分权限,增强安全性

    2、每启动一个进程都会与一个用户关联
    进程-》用户-》权限(作用在文件身上)


    3、组的概念
    主组: 用户本身所在部门
    附加组:为用户添加的部门

    用户与组的关系:
    一对一:一个用户可以属于一个组,用户默认就在自己的主组下
    一对多:一个用户可以属于多个组,用户只有一个主组,但可以为用户添加多个附加组

    多对多:多个用户可以属于多个组




    4、总结
    linux系统把文件的权限分为了三类
    1、属主对应的权限
    2、属组对应的权限
    3、其他对应的权限

    一个用户对文件的权限扫描的优先级:
    1、先看该用户是否是文件的属主
    2、在1失败的情况,再看该用户是否是文件的属组
    3、在2失败的情况,该用户属于其他人权限








    -rw-r--r-- 1 egon IT 2413 10月 26 10:16 /etc/passwd


    5、创建用户
    useradd egon


    /etc/passwd
    /etc/shadow


    ps:每创建一个用户都会创建一个该用户的主组,主组的名字与用户名相同
    /etc/group
    /etc/gshadow


    /home/tom # /etc/skel家目录的模板

    /var/spool/mail/tom


    手动创建用户

    #1、准备用户信息
    [root@web01 ~]# tail -1 /etc/passwd
    likui:x:1004:1004::/home/likui:/bin/bash
    [root@web01 ~]# tail -1 /etc/shadow
    likui:$6$ilevDH.F$eYR2qYz9yWAIWBGKwNVJN3T4QjPZ5jEgOoRxXJ8WUCXlUR.xhlMDpMTE2j3oY/QGZTZA10.Z7q1lDL9vrofAG0:18563:0:99999:7:::
    [root@web01 ~]# openssl passwd -1 -salt 'i have a dream'
    Password:
    $1$i have a$UE.0R7CD7Y8Bdh/.F1SFH.
    [root@web01 ~]#
    [root@web01 ~]#

    #2、准备组信息
    [root@web01 ~]# tail -1 /etc/group
    likui:x:1004:
    [root@web01 ~]# tail -1 /etc/gshadow
    likui:$6$Q1ywq/DXFEnMDIhP$WzKzOf0mmr4BPhUuYsQVGUFDB8ddEPrlrgLy10ToW4qgYi7xKYEof7OA0JVNwoE966uCj.aVNI5hFnoB4pLoO0::
    [root@web01 ~]#


    #3、准备家目录
    [root@web01 ~]# mkdir /home/likui/ ^C
    [root@web01 ~]#
    [root@web01 ~]# chown likui.lilui /home/likui/ ^C
    [root@web01 ~]# chmod 700 /home/likui/ ^C
    [root@web01 ~]#
    [root@web01 ~]# cp -ra /etc/skel/.[!.]* /home/likui/ ^C
    [root@web01 ~]# chown likui.likui /home/likui/.[!.]* ^C
    [root@web01 ~]#

    4、准备邮箱
    [root@web01 ~]#
    [root@web01 ~]# touch /var/spool/mail/likui ^C
    [root@web01 ~]# chown likui.mail /var/spool/mail/likui ^C
    [root@web01 ~]# chmod 660 /var/spool/mail/likui ^C
    [root@web01 ~]#



    6、修改用户
    usermod


    usermod -g 主组名或主组id 用户
    usermod -G 附加组名或附加组id 用户 # 覆盖
    usermod -a -G 附加组名或附加组id 用户 # 添加


    练习:
    创建tom用户
    主组为tom
    附加组为it、sale、hr


    7、组操作
    一个用户必须有一个主组
    groupdel 删掉的组不能是任何用户的主组



    8、往组里添加用户
    usermod -a -G 附加组名或附加组id 用户 # 添加 (一个用户添加多个组)
    gpasswd -a 用户 组名

    gpasswd -A(设置 组长)

    gpasswd -M (多个用户添加一个组)

     

                   

    ps(附言):

                       id 查看当前用户 组信息

                      df -i  查看 inode

                      df -h 查看 容量

                      stat  查看 inode 块

                      su 切换  户主

                      chmod o+w 其他人权限添加 (写 功能)

                      chmod g+w 给组权限添加  (写 功能)

                      newgrp    临时切换 ( 临时权限 )

  • 相关阅读:
    C# 打印文件
    oc语言学习之基础知识点介绍(五):OC进阶
    oc语言学习之基础知识点介绍(四):方法的重写、多态以及self、super的介绍
    oc语言学习之基础知识点介绍(三):类方法、封装以及继承的介绍
    oc语言学习之基础知识点介绍(二):类和对象的进一步介绍
    oc语言学习之基础知识点介绍(一):OC介绍
    c语言学习之基础知识点介绍(二十):预处理指令
    c语言学习之基础知识点介绍(十九):内存操作函数
    XCTF-ics-04
    Portswigger-web-security-academy:dom-base_xss
  • 原文地址:https://www.cnblogs.com/dachangtui/p/13892974.html
Copyright © 2011-2022 走看看