创新路
我们一直在努力

Linux之链接分软硬

    Linux中一切皆文件,意思就是所有东西都是文件,不管是什么应用程序,还是啥设备之类的,都是文件组成的。比如/boot就是放一些启动类的文件,/dev就是放一些设备类的文件,/usr就是大多一些应用程序放置的文件。

    所以,文件也分为四种类型

        1.普通文件—如什么txt,可执行脚本之类的

        2.目录文件—放文件的目录文件

        3.链接文件—指向同一个地方的文件

        4.特殊文件—如/dev下的设备文件

    那么文件又到底是怎么组成的呢?文件是有Inode和数据块组成的

    Inode:就是索引节点,它用来存放档案及目录的基本信息,包含时间、档名、使用者及群组等

    数据块:就是文件存放在硬盘上的数据块,也就是在硬盘上的位置

    那么inode具体有包含什么东西,它包含用来识别文件类型,以及用于 stat C 函数的模式信息,文件的链接数目,属主的ID (UID),属主的组 ID (GID),文件的大小,文件所使用的磁盘块的实际数目,最近一次修改的时间,最近一次访问的时间,最近一次更改的时间等

    一、硬链接:hard link

        硬链接就是创建出来的文件链接指向同一个inode号码,当原来的文件链接删除的时候,并不会删除数据块上的文件,新的链接依然可以继续使用这个文件,是不是有点像复制,但是和复制还是有点不一样。复制是复制文件,创建一个新的文件和一个新的inode号码,并且消耗了一部分空间。而硬链接就不会消耗那么多空间,只是多出了一个新的链接而已

        例:创建硬链接

          image.png

           查看inode

           image.png

            删除原文件试试

            image.png

            这就是硬链接

    二、软链接

        软链接:软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。创建软链接只是创建一个文件,文件包含的是指向源文件的路径,当你打开软链接的时候,它就自动地位到源文件上,并且打开了源文件,当你删除了源文件时,那么你打开软链接,系统就会报错

        例:创建软链接

        image.png

        查看inode

        image.png

        可以看出inode不一样,因为保存得事源文件的路径

        删除源文件后rlj.txt就成为死链接…

    总结注意:硬链接不能跨文件系统创建,软链接多用于安装软件后创建软连接,方便快速使用该软件

        

未经允许不得转载:天府数据港官方信息博客 » Linux之链接分软硬

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机