红联Linux门户
Linux帮助

关于硬链接和软练级的问题

发布时间:2008-12-01 11:41:08来源:红联作者:ly458
那位大哥能为我很形象的解释一下硬链接和软连接?
文章评论

共有 2 条评论

  1. zhongshuijin 于 2008-12-03 21:22:55发表:

    这么基础的问题为什么不百度一下呢。。发问之前应该先自己找找资料。。

  2. tlze 于 2008-12-01 12:50:55发表:

    48740 -rw-r--r-- 2 tlze tlze 6 12-01 12:45 lnk1
    48751 lrwxrwxrwx 1 tlze tlze 8 12-01 12:44 lnk2 -> testfile
    48740 -rw-r--r-- 2 tlze tlze 6 12-01 12:45 testfile

    先理解文件系统里这三者的关系:文件名->文件ID->实际文件位置
    硬连接->文件ID
    软连接->文件名

    大家都指向同一个文件,也就是内容是想同的,但也有一些区别:
    1.硬连接是指向文件ID的,也就是改变硬连接的文件名,不会影响其它硬连接.但只能在同一文件系统(分区)里边连接.因为跨分区的话有可能ID相同但不是同一个文件,这很好理解,假如大家都从1开始编ID,各向一个分区写一个文件,大家的ID就都是一,但是不同的文件来的,所以硬连接不可以夸分区。
    2.软连接是指向文件名的,也就是改变原文件的名后,软连接就失效了.但软连接可以指定文件名的绝对地址,所以,软连接可以夸文件系统(分区)连接.软连接本身也是一个文件来的,它有自己独立的文件ID

    上例中:
    lnk1是硬连接,与原文件有同样的ID:48740
    lnk2是软连接,与原文件有不同的ID:48751,此软连接(文件)的内容指向原文件的文件名.