Linux文件详细属性

文件属性

每列的含义

  [root@oldboyedu ~]# ll -i
  33575029 -rw-r--r--. 1 root root 337 Nov  2 10:26 hosts

  第一列:
  inode号 index node  文件索引 存放着 指向blok的指针  每个文件都占用一个inode

  block   具体存放文件内容的位置
          每个文件占用多个block 4k大小  最小的存储单位
          
  block的大小

  具体看业务: 生成的小文件多 还是大文件多  公司中的大文件也小文件业务
  小文件 block小一些好  节省磁盘空间
  生成1个小文件 不到1K ... 生成第二个小文件的时候 会重新占用一个新的block 4K
  block 4k  有一个10K的文件
  占用3个block		  
  大文件10M ---> block 很多很多
  读取一个block的时间为1秒
  10M 占用的block的事件为 10M/4K的时间
  
  ps:以上两个 其中一个满 无法往磁盘中写数据


  读取文件内容的一个过程:

  1.先找到文件名称(上级目录的block 文件名称存储在上级目录中)
  2.找到文件名 就能找到对应inode
  3.通过inode找到对应block 


  文件属性 第二列 分为三列
- rw-r--r-- .
文件类型 文件的权限 开启了selinux生成的
  Selinux 美国国家安全局开发的安全策略服务 不用
  (阿里发起过去IOE运动)

  需要关闭selinux
  1.如何查看当前selinux是否开启
  [root@oldboyedu ~]# getenforce 
  Enforcing
  2.临时关闭selinux
  [root@oldboyedu ~]# setenforce 
  usage:  setenforce [ Enforcing | Permissive | 1 | 0 ]
  3.永久关闭selinux
  vim /etc/selinux/config 
  SELINUX=disabled
  重启操作系统

文件类型

什么是文件类型:

  windows: 以后缀名识别不同的文件类型
  .exe
  .txt
  .mp4
  .avi
  .pdf
  .jgp
  ………… 改了就不能用了
				 
  而Linux:  后缀名称只是给我们自己看的

less 使用

less 一页一页的查看文件内容  类似more 了解
特点: 查看较大的文件 如果一个文件超过600M vim或者cat查看的时候速度非常慢 为什么?
空格/f  往下翻页
b  		往上翻页
100G    跳转到100行
1g      到首行
G       文件末尾
/搜索内容 回车
n       查找下一个
N       查找上一个

Linux的文件类型

  -  普通文件 

  三种普通文件都是以 - 来表示

  1.普通文件 普通文件 cat vim echo > less(一页一页的查看文件中的内容)
  -rw-r--r--. 1 root root 84485563 Nov  5 10:43 hosts

  2.二进制文件 可执行命令 ls pwd touch 都是二进制文件
  -rwxr-xr-x. 1 root root 62568 Oct 31  2018 /usr/bin/touch
	
  3.数据文件 压缩包 .rpm包 
  -rw-rw-r-- 1 root root    84280 Aug 23  2019 zziplib-0.13.62-11.el7.x86_64.rpm
  -rw-r--r--  1 root root       550 Nov  5 10:47 all.tar.gz


  d   表示目录
  drwxr-xr-x  2 root root         6 Nov  5 10:48 dir

	
  l   软链接文件 softlink 类似windows的快捷方式  存着放源文件的指针 会占用一个inode
  软链接的特点: 
        链接文件 存放着指针
  rwxrwxrwx 最高的权限 看着权限最高 实际还得看源文件的权限
  软链接在前面 源文件在> 后面
		

  b   块设备 硬件设备
  brw-rw---- 1 root disk 8, 0 Nov  5 10:27 /dev/sda
  brw-rw---- 1 root disk 8, 1 Nov  5 10:27 /dev/sda1	


  c   字节设备 可以自动生成一些字符串 也可以类似黑洞 吸收很多内容
  [root@oldboyedu ~]# ll /dev/urandom   吐的
  crw-rw-rw- 1 root root 1, 9 Nov  5 10:27 /dev/urandom
  [root@oldboyedu ~]# ll /dev/zero 	  吐得
  crw-rw-rw- 1 root root 1, 5 Nov  5 10:27 /dev/zero
  经常生成一些大的测试文件 比如生成1G的文件 配置成swap交换分区 扩展
  dd if=/dev/zero of=./1g.txt bs=1M count=1000
  命令
  if  input file
  of  output file
  bs  每次接收多大的数据
  count 总共接收多少次
  [root@oldboyedu ~]# ll /dev/null 	  吃的
  crw-rw-rw- 1 root root 1, 3 Nov  5 10:27 /dev/null

  > 或者1>  标准正确输出重定向
  >>        标准正确追加输出重定向
  标准正确输出:
  执行的命令是正确的 成功结果
  比如 
  ls cat ping成功后的结果
  [root@oldboyedu ~]# ls 1g.txt 
  1g.txt
  [root@oldboyedu ~]# ls 1g.txt > ok.txt
  [root@oldboyedu ~]# cat ok.txt 
  1g.txt
  [root@oldboyedu ~]# ls 1g.txt >> ok.txt
  [root@oldboyedu ~]# cat ok.txt
  1g.txt
  1g.txt
  [root@oldboyedu ~]# ls 1g.txt 2>> ok.txt      
  1g.txt
  [root@oldboyedu ~]# cat ok.txt 
  1g.txt
  1g.txt

  2> 标准错误输出重定向
  2>> 标准错误追加输出重定向
  标准错误输出:
  命令错误 执行结果不正确

  [root@oldboyedu ~]# ls 1ggg.txt 2> ok.txt
  [root@oldboyedu ~]# cat ok.txt 
  ls: cannot access 1ggg.txt: No such file or directory

  [root@oldboyedu ~]# ls 1g.txt 2> ok.txt 
  1g.txt
  [root@oldboyedu ~]# cat ok.txt 

  要接收正确和错误的
  [root@oldboyedu ~]# ls 1g.txt 2> ok.txt 
  1g.txt
  [root@oldboyedu ~]# cat ok.txt 
  [root@oldboyedu ~]# ls 1g.txt >> ok.txt 2>> ok.txt
  [root@oldboyedu ~]# cat ok.txt 
  1g.txt
  [root@oldboyedu ~]# 
  [root@oldboyedu ~]# ls 1gggg.txt >> ok.txt 2>> ok.txt
  [root@oldboyedu ~]# cat ok.txt 
  1g.txt
  ls: cannot access 1gggg.txt: No such file or directory



  [root@oldboyedu ~]# ls 1gggg.txt >>ok.txt 2>&1
  [root@oldboyedu ~]# ls 1g.txt >>ok.txt 2>&1
  [root@oldboyedu ~]# cat ok.txt 
  1g.txt
  ls: cannot access 1gggg.txt: No such file or directory
  ls: cannot access 1gggg.txt: No such file or directory
  1g.txt

  [root@oldboyedu ~]# ls 1g.txt &>ok.txt
  [root@oldboyedu ~]# ls 1gggg.txt &>ok.txt
  [root@oldboyedu ~]# cat ok.txt
  ls: cannot access 1gggg.txt: No such file or directory
  [root@oldboyedu ~]# ls 1gggg.txt &>>ok.txt
  [root@oldboyedu ~]# ls 1g.txt &>>ok.txt
  [root@oldboyedu ~]# cat ok.txt 
  ls: cannot access 1gggg.txt: No such file or directory
  ls: cannot access 1gggg.txt: No such file or directory
  1g.txt

  $? ?变量中存放着上一条执行命令的结果 0为成功 非0 失败
				
  [root@oldboyedu ~]# ping -c2 -W1 www.baidu.com &>/dev/null
  [root@oldboyedu ~]# echo $?
  0
  [root@oldboyedu ~]# ping -c2 -W1 www.baiduaaaaaaaaaaaaaa.com &>/dev/null
  [root@oldboyedu ~]# echo $?
  2

		
  了解 文件类型 
  s  
  p

文件权限: rw-r--r--

  r read   读取文件  less cat 
  w write  写入 可以编辑 echo vim
  x excute 可执行
  - 代表没权限
  Linux系统中文件的最高权限是rw    作为普通文件我们对它做什么操作?
  x 权限可执行权限 shell脚本 rwx
	
	
  rw-r--r--  # 三位为一组
  前三位	 文件的拥有者 属主(哪个用户创建的这个文件 比如我们自己的笔记本 属于我们自己) 拥有的权限 rw 可读 可写
  中三位   文件的属组 权限 (这个文件属于哪个组 比如我们笔记本属于家庭 ) 拥有可读的权限
  后三位	 其他用户 陌生人(比如笔记本对应着 不是家人 也不是主人) 拥有可读的权限
	
	
	
	
  33575029 -rw-r--r--. 1 root root 337 Nov  2 10:26 hosts
	
  第三列 1  硬链接的个数 给1个文件开了多个入口 类似于超市开了多个门
        作用: 提高文件的安全性
        特点: 文件默认1个硬链接数
        目录 默认2个硬链接
	
  第四列 root  属主 文件的拥有者  使用哪个用户创建 默认哪个用户的属主  root用户可以修改指定文件属主属组
  第五列 root  属组 文件属于哪个组 使用哪个用户创建 默认哪个用户的属主
		
  第六列 337   文件的大小 ll -h	
	
  第七列 Nov  2 10:26 文件的时间三种  Access 访问时间cat   Modify 内容修改时间 Change属性修改时间 下午测试
  第八列 文件名称
上一篇:python 全栈 day07 软链接


下一篇:Linux目录结构及设备挂载 & 重要目录文件