1.ln命令介绍
ln命令可以看作是 link 的缩写,其功能是创建文件间的链接,链接类型包括硬链接(hard link)和软链接(符号链接,symbolic link)
2.ln命令格式
ln 命令的基本格式如下:
ln [选项] 源文件 目标文件
选项:
-s:建立软链接文件。如果不加 "-s" 选项,则建立硬链接文件;
-f:强制。如果目标文件已经存在,则删除目标文件后再建立链接文件;
3.软连接
ln -s [源文件] [目标文件] ## 创建软连接
说明:软链接生成的是符号链接文件(l 类型)
源文件没了或者路径改变,ls -l 查看时会看到源文件有红色背景不断闪烁。
示例:
ln -s /linux/file.txt softlink.txt
软链接小结:
1)、软链接类似于 Windows 的快捷方式,里面存放着源文件的路径,指向源文件实体;
2)、删除了源文件,软链接文件依然存在,但是无法访问指向源文件路径的内容;
3)、源文件和软链接文件是不同类型的文件,inode 索引节点也不相同;
4)、对于目录,不可以创建硬链接,但是可以创建软链接;
4.硬链接
ln [源文件] [目标文件] ##创建硬链接
说明:硬链接生成的是普通文件(- 字符 f类型)
硬链接除了名称和位置,其它信息都相同, 包括日期, 没法区分。
权限信息后面一列,可以看到文件被link的次数
示例:
ln /linux/file.txt hardlink.txt
ls -i ##查看文件的inode号
硬链接小结:
1)、源文件和硬链接文件具有相同的 inode 索引节点号;两者可以看成同一个文件或一个文件的多个入口;
2)、删除硬链接文件或删除源文件任意之一,文件实体并未被删除;
3)、只有删除了源文件和对应的硬链接文件,文件实体才会被删除;
4)、通过给文件设置硬链接文件,来防止重要文件被误删;
5)、许多硬件设备中的快照功能,就是利用硬链接的原理;
5.软连接和硬链接区别
1)硬链接原文件&链接文件共用一个inode号,说明他们是同一个文件;而软链接原文件&链接文件拥有不同的inode号,表明他们是两个不同的文件;
2)链接数目(inode)是不一样的,软链接的链接数目不会增加,硬链接会相应的加1;
3)在文件属性上软链接明确写出了是链接文件,而硬链接没有写出来,因为在本质上硬链接文件和原文件是完全平等关系,就像文件被复制了一份一样;
4)文件大小是不一样的,硬链接文件显示的大小是跟原文件是一样的,而这里软链接显示的大小与原文件就不同了。
5)使用限制上,不能对目录创建硬链接,不能对不同文件系统创建硬链接,不能对不存在的文件创建硬链接;可以对目录创建软连接,可以跨文件系统创建软连接,可以对不存在的文件创建软连接。
6.打包链接文件
-h参数:打包软链接文件指向的真实源文件
示例:
tar zcfh test.tar.gz softlink.txt
标签:文件,ln,创建,源文件,Linux,inode,链接 From: https://www.cnblogs.com/yeyuzhuanjia/p/17428613.html