1、命令 ls -lhi
ls -l 长格式
ls -h 人性化(单位)
ls -i inode
可以分为 9个属性
inode属性、文件类型、权限、硬链接数、属组-所有者(第一个 root)、属组-所有者的组、文件大小、文件的修改日期、文件或目录的名字
2、inode
源自子文件系统
inode包含文件的元信息,具体来说有以下内容:
*文件的字节数
*文件拥有者的 User ID
文件的 Group ID
*文件的读、写、执行权限
文件的时间戳,共有三个: ctime指inode. 上一次变动的时间,mtime指文件内容上一次变动的时间,atime指文件. 上一次打开的时间。
*链接数,即有多少文件名指向这个inode
*文件数据 block的位置
3、Linux系统文件类型
ls -l 文件名//看第一个字符
格式 说明
- 普通文件(文本文件,二进制文件,压缩文件,图片文件等)
d 目录文件(深蓝色)
b 设备文件(块设备)存储设备硬盘/dev/sda, /dev/sdal
c 设备文件(字符设备)打印机,终端/dev/tty1, /dev/zero
s 套接字文件,进程间通信
p 管道文件
l 链接文件(浅蓝色)
注意:Linux的文件名和后缀名和显示颜色并不代表什么,只是为了看上去好区分,并没有实质性代表了什么
4、Linux系统的链接文件
4.1 软链接
就是快捷方式,文件类型为 l
建立方法
ln -s 源文件 软链接文件
应用场景
1、软件升级 例如,客户端永远显示 aaa,软件方面可以直接通过 aaa跳转到 aaa1,aaa2,aaa3等
2、代码发布
3、不方便目录移动 路径值固定,不能动,跳转
注意:建立软链接时用绝对路径,既可以对文件也可以对目录
4.2 硬链接
和软链接不一样,inode号一样,2个文件,但是代表了同一个文件
相当于一个文件开了2个门,一个门在这个文件夹,另一个门在另一个文件夹
但是,只能放在同一个分区,受 inode限制
而且不允许给文件夹做硬链接
方法
ln 源文件 硬链接文件
创建了 源文件、cp复制的文件 bak、软链接文件 link、硬链接文件 hard
其中,inode号,硬链接文件和源文件相同,显示硬链接数 2,别的都不相同
当源文件修改时候,硬链接的文件大小和源文件一样,复制的文件不变,软链接文件更改了少数
5、软硬链接的区别
1)ln命令创建硬链接,ln -s命令创建软链接。
2)目录不能创建硬链接,并且硬链接不可以跨越分区系统。
3)目录软链接特别常用,并且软链接支持跨越分区系统
4)硬链接文件与源文件的inode相同,软链接文件与源文件inode不同。
5)删除软链接文件,对源文件及硬链接文件无任何影响。
6)删除文件的硬链接文件,对源文件及链接文件无任何影响。
7)删除链接文件的源文件,对硬链接无影响,会导致软链接失效.
8)删除源文件及其硬链接文件,整个文件会被真正的删除。因为如果删除一个只是关闭了一个门而已,还有另一个门,只是硬链接数 -1 (数字 2变 1)
6、硬链接数
文件的硬链接数 1+硬链接文件数量
文件夹的硬链接数 2+文件夹下的文件数量(因为存在一个 xxxxxx/. )