【Linux】什么是链接文件及其分类
背景链接文件时Linux文件系统的一个优势,如需要在系统上维护同一文件的两份或多分副本,除了保存多分单独的物理文件副本之外,还可以采用保存一份物理文件副本和多个虚拟副本的方法,这种虚拟的副本就称为链接,其是目录中指向文件真是位置的占位符。分类有两种不同类型的文件链接:符号链接硬链接符号链接是一个实实在在的文件。root@mgt01:/home/byy/tmp# ls -l test1 //当前目录
·
背景
链接文件时Linux文件系统的一个优势,如需要在系统上维护同一文件的两份或多分副本,除了保存多分单独的物理文件副本之外,还可以采用保存一份物理文件副本和多个虚拟副本的方法,这种虚拟的副本就称为链接,其是目录中指向文件真是位置的占位符。
分类
有两种不同类型的文件链接:
- 符号链接
- 硬链接
符号链接是一个实实在在的文件。
root@mgt01:/home/byy/tmp# ls -l test1 //当前目录下有一个test
1文件
-rw-r--r-- 1 root root 15 Oct 1 15:58 test1
root@mgt01:/home/byy/tmp# ln -s test1 sl_test1 //创建test1的符号链接
root@mgt01:/home/byy/tmp# ls -l
total 4
lrwxrwxrwx 1 root root 5 Oct 1 15:59 sl_test1 -> test1
-rw-r--r-- 1 root root 15 Oct 1 15:58 test1
root@mgt01:/home/byy/tmp# ls -i *test1 //查看两者的inode,发现两者不同说明是它们是不同的文件
1727808 sl_test1 1727810 test1
硬链接会创建独立的虚拟文件,其中包含了原始文件的信息及地址。但是从根本上而言他们是同一个文件。
root@mgt01:/home/byy/tmp# ls
test1
root@mgt01:/home/byy/tmp# ln test1 hl_test1 //创建test1的硬链接
root@mgt01:/home/byy/tmp# ls -li *test1 //查看发现两者的inode都是1727810,说明它们终归是同一个文件。并且第三列链接计数显示2,表示这两个文件都有两个链接,另外他们的文件大小也一模一样
1727810 -rw-r--r-- 2 root root 15 Oct 1 15:58 hl_test1
1727810 -rw-r--r-- 2 root root 15 Oct 1 15:58 test1
更多推荐
已为社区贡献1条内容
所有评论(0)