总结软连接和硬连接区别,并用实例操作说明

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了总结软连接和硬连接区别,并用实例操作说明相关的知识,希望对你有一定的参考价值。

硬链接和软连接区别
(1)本质:
硬链接:本质是同一个文件
例:
ln file1.txt file2.txt
ll -i file1.txt file2.txt (发现两个文的节点号相同,表明是同一个文件)
软连接:本质不是同一个文件
例:
ln -s file1.txt file3.txt
ll -i file1.txt file3.txt (两文件的节点号不同,说明是不同的文件)
(2)块设备
硬链接:不支持
ln /dev/sr0 /data/sr0.bak (提示失败)
软连接:支持
ln -s /dev/sr0 /data/sr0.bak (成功)
(3)Inode
硬链接:相同
例:
ln file1.txt file2.txt
ll -i file1.txt file2.txt (发现两个文的节点号相同)
软连接:不同
例:
ln -s file1.txt file3.txt
ll -i file1.txt file3.txt (两文件的节点号不同)

(4)连接数
硬链接:创建新的硬链接,连接数会增加,删除硬链接,连接数减少
例:
ln file1.txt file2.txt
ll file1.txt file2.txt (链接数相同)
ln file2.txt file4.txt
ll file2.txt file1.txt file4.txt (连接数增加)
rm -f file2.txt
ll -file1.txt (链接数减少)
软连接:创建或删除,连接数不会变化
例:
ll file1.txt (查看文件连接数)
ln -s file1.txt file5.txt
ll file1.txt (链接数没有变化)

(5)文件夹
硬链接:不支持
例:
mkdir test
ln /data/test /data/test2 (提示:失败信息)
软连接:支持
例:
ln -s /data/test /data/test2 (成功)
(6)相对路径
硬链接:原始文件相对路径是相对于当前工作目录
软连接:原始文件的相对路径是相对于链接文件的路径
(7)文件类型
硬链接:和源文件相同
例:
ln file1.txt file2.txt
ll file1.txt file2.txt (查看文件属性,文件类型相同)
软连接:链接文件和源文件无关
例:
ln -s file1.txt file6.txt
ll file1.txt file6.txt (文件属性显示,file6.txt文件的类型为链接文件)
(8)删除源文件
硬链接:只是连接数减一,但链接文件的访问不受影响
例:
ln file1.txt file2.txt
ll file1.txt file2.txt (链接数相同)
rm -f file1.txt
ll file2.txt (链接数减少)
cat file2.txt
软连接:链接文件将无法访问
例:
ln -s file1.txt file5.txt
rm -f file1.txt
cat file5.txt (提示没有文件)

以上是关于总结软连接和硬连接区别,并用实例操作说明的主要内容,如果未能解决你的问题,请参考以下文章

总结软连接和硬连接区别,并用实例操作说明

Linux 软连接和硬链接的区别

Linux 软连接和硬链接的区别

Linux硬链接,软连接和复制的区别

Linux中硬链接和软链接的区别与联系!

Linux下软连接(link)和硬链接(hard)的区别