Linux下新建文件之间的连接命令(ln)
发表时间:2012-06-20 12:58 | 分类:Linux | 浏览:2,057 次
所谓的连接,类似于windows系统中的快捷方式,可以将目的文件指向来源文件,也就是修改来源文件或目的文件效果是相同的。linux系统中的连接又分为软连接与硬连接。
软连接:C(目的文件)与A(来源文件)新建软连接,就是将C(包含完整路径的文件名称)指向A的文件名称(包含完整路径的文件名称)。由于这只是文件名称与路径的对应,并不受文件系统的限制,因此两只可以在不同的文件系统下使用。
硬连接:B(目的文件)与A(来源文件)新建硬连接,就是将B(包含完整路径的文件名称)指向A所在的硬盘区块上。这样的做法只会增加连接文件的空间,而不会增加与A相同的硬盘用量。硬连接也有其限制,以上所述的A与B而言,两者必须在同一个文件系统之下,若不同的文件系统所挂载的分区不同,则无法直接对应。
新建硬连接:#ln /tmp/file1 file2
将源文件删除,查看结果,可以看到使用硬连接会产生一个内容相同的文件file2,效果相当于复制。因此当删除file1时并不会影响file2。
新建软连接:#ln -s /tmp/file1 file2
同样将源文件删除,查看结果后发现使用软连接仅产生一个指向的连接文件,因此当来源文件被删除时,连接文件也就一起失效了。