linux 文件的八个属性 我们可以用 ll -i 来查看:
[root@baimeidashu /etc]#ll -i
这张图 看起来有点乱:
我来简单的介绍一下吧:
51265814 drwxr-xr-x. 3 root root 32 Feb 23 05:21 baimeidashu
第一列: inode号码
第二列: 文件类型
第三列: 9位文件权限rwx
第四列: 硬链接的个数
第五列: 文件的属主
第六列: 文件的属组
第七列: 文件的大小 使用ls -h
第八列: 文件的时间
第九列: 文件名称
第一列: inode 号码
类似我们身份证号码,在linux 中 找文件,首先要找到这个inode 才可以找到真正的存储数据的位置,类似我们书本的目录, 上边记录具体的存放位置。
在磁盘分区或者格式化的时候,系统生成了定量的inode 和block
inode 是存放具体内容的指针指向: df -i
block 具体存放数据的地方: df -h
面试题: 是否可以写入数据导磁盘,需要查看 inode 和 block
第2列: 文件类型
51265814 drwxr-xr-x. 3 root root 32 Feb 23 05:21 baimeidashu
17350695 -rw-r--r--. 1 root root 970 Oct 2 2020 yum.conf
文件类型分为如下几种:
(1) 第一种文件类型 -
可以表示 普通文件 比如 : /etc/resolv.conf , /etc/hosts
可以是命令文件 比如: /etc/bin/ls , /etc/bin/touch
可以是数据文件: 压缩包, rpm包,视频,音频 等。
(2)第2种 是 d
表示目录: directory
(3)第3中是: l
16950038 lrwxrwxrwx. 1 root root 13 Feb 23 00:35 /etc/rc.local -> rc.d/rc.local
软连接
(4)其他文件类型:
b: 块设备 , /dev/cdrom -》 /dev/sr0 , /dev/sda1
c: 字节设备 , /dev/null (重要), 黑洞,一直往内吸收
/dev/urandom , 一直往外吐字符
p: 管道
s: socket
第3列 :9位文件权限 rwx
17720053 -rw-r--r--. 1 root root 1011 Mar 3 11:57 /etc/passwd
3位一组
前3位对应属主权限 : 文件的所有者对这个文件的权限, 比如我自己的笔记本
中间3位 属组权限 : 和主人在同一小组的权限, 比如我家人对我笔记本的权限
后3位:其他用户权限: 陌生人对我笔记本的权限, linux 中属组基本上没用。
接下来说说具体的含义:
r: read 代表可读
w: writer 代表可写
x: excute 代表是否可执行
chomd + x 文件名, 给文件添加 可执行权限
扩展:
对于文件来讲最高权限是rw-rw-rw-
使用数字表示文件的权限:
r 4
w 2
x 1
将文件权限每三位进行相加得到文件的权限
r(4)w(2)- r(4)-- r(4)-- 644
6-4=2 r
2-2=0 w
rw-rw-rw- 666
755使用rwx如何表示
7-4=3 r
3-2=1 w
1-1=0 x
5-4=1 r
1-2=0 -
1-1=0 x
rwxr-xr-x
600 rw-------
第4列: 硬链接的个数
硬链接 的作用: 保护系统文件的安全,类似备份。
创建硬链接 命令:
[root@baimeidashu /tmp]#ln /etc/passwd /tmp/passwd_bk
硬链接的特点:
(1) 具有相同的inode 号
(2) 创建硬链接:ln 源文件 ,硬链接名称(源文件必须存在)
(3) 修改其中的一个文件,其他也会变化
(4)类似书有多个相同的目录,类似秦始皇的宝藏有多个藏宝图
(5) 目录不支持创建硬链接, 目录默认的硬链接数为2
(6) 删除其中一个硬链接,不影响其他的文件
(7) 硬链接不常用,我们常用的还是做备份
(8) 硬链接不支持跨文件系统, 就是不支持 在不同磁盘分区上创建硬链接
跟硬链接对应的是 软连接
[root@baimeidashu /tmp]#ln /etc/passwd /etc/passwd_link
软连接的特点:
(1)软连接inode号不同
(2)软连接 类似windows 快捷方式, 存储指向源文件的路径
(3) 目录和文件都可以做软连接
(4 )创建软连接 ln -s 源文件,
(5)删除软连接文件,不影响源文件,删除源文件后软连接文件失效,显示红底白字。
(6)软连接可以跨文件系统,跨磁盘分区
(7)创建软连接使用绝对路径,这样不容易丢失。
在企业中, 经常使用 软连接, 作用有2个
1: 解决磁盘不够用的问题。
2: 解决代码发布回滚的问题
第5列: 文件属主
就是 这个文件是谁创建的
第6列: 文件的属组
在linux 中属组意义不大。
第7列: 文件的大小
有2个命令:
du -h /etc 可以查看 目录和文件的大小。
ll -h 可以查看文件的大小
第8列 : 文件时间
我们用stat 1.txt 命令可以查看 文件的3中 时间:
Access: 2023-03-07 17:17:21.449954749 +0800
Modify: 2023-03-07 17:17:28.188954596 +0800
Change: 2023-03-07 17:17:28.188954596 +0800