当前位置: 首页 > Linux

Linux链接文件

时间:2023-04-06 20:03:51 Linux

链接文件说明链接文件分为硬链接(hardlink)和软链接(symboliclink)两种。两种链接的本质区别在于inode。inode解释inode包含文件元信息,具体有以下内容:文件的字节数;文件的用户ID;文件的组ID;文件的读、写和执行权限;文件的时间戳,一共有三个,ctime?inode的最后一次改变时间,mtime是指文件内容的最后一次改变时间,atime是指文件的最后一次打开时间。链接数,即有多少个文件名指向这个inode;文件数据块的位置;hardlinks:当系统要读取一个文件时,会先读取inode表,一个文件对应一个inode,然后根据inodeblock区的信息来提取数据,hardlink直接使用与源文件相同的inode,硬链接文件直接链接到文件所在的块区。也就是说,在进行硬链接的时候,文件实际上内容没有任何变化,只是指定了相同的inode。硬链接是直接将文件链接到硬盘的硬链接。有两个限制:不能跨文件系统,因为不同的文件系统有不同的inode表;它不能链接目录;软链接:与硬链接不同,这是建立一个独立的文件,而这个文件的作用是在读取链接文件时,将读取行为转发给该文件所链接的文件。比如:现在有文件a,我们做了一个软链接文件b(只是一个链接文件,很小),b指向文件a,读b的时候,那么读动作就会转发给a,这样,文件a被读取。大多情况下,当我们删除文件a时,文件b不会被删除,但是当我们再次读取b时,会提示文件无法打开。但是,当我们删除b时,a是不会有任何影响的。从上面可以看出,硬链接似乎更安全,因为即使删除了某个文件,只要有任何文件存在,用来改变文件的inode还在,文件不会消失!不过遗憾的是,硬链接的限制太多了,包括不能作为目录使用的链接,所以在使用上比较受限!取而代之的是,软链接的使用方向更加广泛。建立软链接和硬链接的方法ln命令:ln[-s][源文件][目标文件]ln常用的选项是-s,不加则建立硬链接,加则建立一个软链接。由上可见,硬链接删除了源文件passwd,空间不变。硬链接不能用于目录。如果源文件被删除,则无法读取软链接文件,使用命令ll查看时颜色已经改变。由上可知,该目录是可以软链接的。硬链接不占空间,软链接占空间。命令du:查看剩余磁盘空间和文件夹大小参数含义如下:-s:对于每个names参数,只显示占用的数据块总数;-a:递归显示指定目录下每个文件占用的数据块数,如果不指定-s和-a,则只显示每个目录和names中每个子目录占用的磁盘块数;-b:以字节为单位列出磁盘空间使用情况(系统默认以k字节为单位保存);-k:以1024字节为单位列出磁盘空间使用情况;-c:在末尾添加总计(系统默认设置);-l:计算所有文件大小;