画布 1
08_文件属性权限篇_猿来教育
  课程学习思想分享
    学会坚持不懈
    学会总结知识
    学会懂得感恩
  课程学习方法分享
    反复输入知识
    反复输出知识
  文件属性信息概述
    文件属性信息组成
      01. 文件类型权限信息
      02. 文件链接属性信息-硬链接
      03. 文件属主属性信息-文件所有者
      04. 文件属组属性信息-文件所属组
      05. 文件大小属性信息-最小单位字节
      06. 文件修改时间信息
      07. 文件名称信息说明
  文件属性信息详述
    文件类型概念说明
      文件类型预备知识
        扩展名说明
          通过扩展名区分不同文件类型-window
          通过扩展名提示不同文件类型-linux
            就算把压缩文件扩展名改了，依旧是压缩文件
      文件类型详细说明
        普通文件
          f/-(file)
            ①. 纯文本文件 text /etc/hosts
            ②. 二进制文件 binary /bin/ls
            ③. 数据型文件 data /tmp/etc.tar.gz
            利用file命令可以查看文件类型
        目录文件
          d/d(directory)
        链接文件
          l/l(软链接 符号链接 快捷方式)
        设备文件
          c/c(character)(字符设备文件 会不断产生字符信息)
          b/b(block)(块设备文件)
          需要关注的设备文件
            磁盘设备文件 /dev/sda
            随机设备文件 /dev/urandom
            输出设备文件 /dev/zero
            输入设备文件 /dev/null
        套接文件
          s/s(socket)(套接接口文件 和网络有关的文件)
        管道文件
          p/p(pipe)(管道文件)
      文件类型查看方法
        file 文件信息
          配置文件---.conf
          日志文件---.log
          脚本文件---.sh
          脚本文件---.py
      文件目录相关命令
        显示文件信息类型命令
          file
        显示命令绝对路径信息
          which
        显示命令路径以及文件
          whereis
        快速定位文件路径信息
          locate
          updatadb
        快速查找数据信息命令
          find
            寻找指定名称文件信息
              find / -type f -name 'yuchao.pwd'
            寻找部分名称文件信息
              find / -type f -name '*.log'
              find / -type f -name '*.log'
            寻找指定大小文件信息
              find / -type f -name '*.log'
              find / -type f -size +100k -size -1M
            寻找指定目录层次信息
              find / -maxdepth 1 -type f -name '*.log'
            寻找指定权限文件信息
              find / -type f -perm 644
        目录结构信息显示命令
          tree
            显示指定目录结构层次
              tree -L 1 /yuchao01
            只显示目录的结构信息
              tree -d /yuchao01
        数据信息压缩打包命令
          tar
            压缩命令用法
              # 压缩语法
tar zcvf 压缩包(框).tar.gz 需要压缩文件01 文件02 目录01
                参数说明：-z 采用gzip方式进行压缩
                参数说明：-j 采用bzip方式进行压缩
                参数说明：-c 创建压缩包信息
                参数说明：-v 显示压缩过程
                参数说明：-f 指定要压缩的文件
              # 解压语法
tar zxvf 压缩包.tar.gz -C 路径信息
                参数说明：-x 解压压缩包
                参数说明：-v 显示解压过程
                参数说明：-C 解压到指定路径
              # 检查查看
tar ztf 压缩包.tar.gz
                参数说明：-t 采用gzip方式进行压缩
            压缩扩展功能
              01. 进行排查数据信息打包（排除单个信息）
tar zcf /tmp/etc-pai.tar.gz /etc/ --exclude=/etc/services
              02. 进行排查数据信息打包（排除多个信息）
tar zcf /tmp/etc-pai.tar.gz /etc/ --exclude-from=被排除文件
            压缩提示说明
              01. 默认解压到当前路径，会去掉/目录信息
              02. 采用相对路径进行打包，避免覆盖原有文件信息
    文件相关权限说明
      权限说明
        权限类型
          读取权限（4）：read（r）
          写入权限（2）：write（w）
          执行权限（1）：execute（x）
          没有权限（0）：N/A（-）
        拥有权限
          文件或目录属主用户权限：rw-（6）
          文件或目录属组组员权限：r--（4）
          文件或目录其它用户权限：r--（4）
          用户权限说明图
    文件用户和用户组
      用户概念
        UID user id（用户id）
        GID group id（用户组id）
      用户分类（id 用户名称）
        超级管理用户（皇帝） root--- uid=0
          基本是无敌的存在
          面见皇帝方法：
            01. 利用地址信息访问-IP
            02. 利用用户信息访问-root
            03. 利用密码信息访问
              暴力破解你的密码
            04. 利用端口信息访问
          保护皇帝方法：
            01. 修改远程连接端口-52113
            02. 禁止root用户远程登录
        系统虚拟用户（傀儡） www---uid=1-999
          Linux下面每个程序/进程都需要有一个对应的用户和用户组
          是无法登录Linux系统的用户
          著名的傀儡用户 id nobody id=99
        系统普通用户（百姓） yuchao01---uid=1000+
          只能管理家目录和临时目录数据
      文件管理者信息
        文件所属用户信息（属主-主人）
          UID user id（用户id）
        文件所属的组信息（属组-家人）
          GID group id（用户组id）
        文件所属其它用户（其它-隔壁）
          other user
      用户相关的文件
        用户的特征信息
          /etc/passwd （掌握文件各列信息）
        用户的密码信息
          /etc/shadow
        用户组特征信息
          /etc/group
        用户组密码信息
          /etc/gshadow
    文件时间信息说明
      文件时间信息分类
        三种时间信息
          文件修改时间：mtime
          属性修改时间：ctime
          文件访问时间：atime
      文件时间详细说明
        验证时间信息
          stat
        编辑文件内容
          文件修改时间变化
          文件属性时间变化
          文件访问时间不变
        修改文件属性
          文件修改时间不变
          文件属性时间变化
          文件访问时间不变
        访问文件信息
          文件修改时间不变
          文件属性时间不变
          文件访问时间变化
      系统时间信息命令
        命令信息掌握：date
        重点知识掌握：显示时间方式方法
          方法一：默认显示系统时间
            date
              # 显示系统日期信息：date +%F
              # 显示系统时间信息：date +%T
          方法二：指定格式显示时间
            date
              date +%y-%m-%d
              date +%H：%M：%S
          方法三：变化系统日期时间
            显示变化时间
              n天前：date +%F -d "n day ago"
              n天前：date +%F -d "-nday"
              n天后：date +%F -d "+nday"/"nday"
            修改系统时间
              手动修改：# date -s "20171212 12:12:12"
              自动修改：# ntpdate ntp2.aliyun.com
    存储数据相关说明
      inode
        概述介绍
          索引节点-index node
          存放文件属性信息
            文件大小
            文件时间
            文件类型
            文件权限
            文件名称
        诞生过程
          前期存储知识准备
            硬盘硬件--拥有房子
            硬盘分区--划分隔断
            格式化硬盘--开始装修
            文件系统--装修风格
            进行挂载--安装门窗
          诞生原因概述说明
            是在格式化创建文件系统的时候诞生的
        特点说明
          inode用于存放的是文件属性
          inode用于存放块的指针位置
          创建一个文件至少占用一个inode和一个block
          在同一分区中，两个文件的inode号码相同，两个文件互为硬链接
        命令查看
          展示inode信息
            [root@yuchao01edu ~]# ls -lhi /etc/hosts
131100 -rw-r--r--. 2 root root 352 Jan 27 01:15 /etc/hosts
          统计inode数目
            [root@yuchao01edu ~]# df -i
      block
        概述介绍
          存储数据-block块信息
          存储文件数据信息
        诞生过程
          诞生原因概述说明
            是在格式化创建文件系统的时候诞生的
        特点说明
          block用于存放的是数据信息
          block默认大小为4k
            比较大的文件，会占用多个block
            比较小的文件，剩余空间无法使用, 浪费磁盘空间
          创建一个文件至少占用一个inode和一个block（非空文件）
          磁盘读取数据按block为单位读取的
          读取一个block会消耗一次磁盘I/O（input/output 磁盘读写）
        命令查看
          展示block信息
            [root@yuchao01edu ~]# ls -lh /etc/hosts
-rw-r--r--. 2 root root 352 Jan 27 01:15 /etc/hosts
          统计block数目
            [root@yuchao01edu ~]# df/df -h
    文件软硬链接说明
      硬链接说明
（hard link）
        概念说明
          相当于访问文件的一个入口
          相当于访问文件的入口数量
          同一个分区中，inode号码相同的文件互为硬链接
        操作练习
          01. 创建文件信息
# touch /data/yuchao01
          02. 创建硬链接
# ln /data/yuchao01 /data/yuchao01.txt_hard
          03. 检查创建信息
# ls -lhi yuchao01*
        特点作用
          01. 软件链接创建最好采用绝对路径，否则容易失效
          02. 链接源文件删除，会影响软链接
      软链接说明
（soft link）
        概念说明
          相当于快捷方式
          用于存放指向源文件的路径信息
        操作练习
          01. 创建文件信息
# touch /data/yuchao01
          02. 创建软链接
# ln -s /data/yuchao01 /data/yuchao01.txt_soft
          03. 检查创建信息
# ls -l yuchao01*
        特点作用
          01. 防止误删数据
          02. 不能给目录创建硬链接
      扩展知识点：
        如何真正删除一个文件
          01. 文件硬链接数为0时，表示数据真正删除了
            i_link数为0
          02. 文件信息没有被进程调用的时候，进程调用数为0
            i_count数为0
            查看文件是否被进程调用：lsof |grep "secure"
    访问文件原理-inode/block
find命令条件默认关系是并且
-maxdepth 1