zoukankan      html  css  js  c++  java
  • linux的软连接和硬连接

    一、hard link(硬连接或实际连接)

    如图1所示,硬连接文件名指向被连接文件内容对应的inode号。当文件1删除时,因为文件内容1对应的inode号仍有其他的连接,所以文件内容1不会被删除,仍可通过硬连接文件名2来访问。

    从图2可知,文件1和硬连接文件名2均指向同一个inode。

    硬连接不能跨文件系统,不能连接到目录。为什么不能连接到目录呢?这是因为hard link连接到目录时,连接的数据需要连同被连接目录下面的所有数据都建立连接,举例来说,如果要将/etc使用硬连接创建一个/etc_hd的目录时,那么在/etc_hd下面的所有文件名同时都与/etc下面的文件名要创建硬连接,而不仅仅连接/etc_hd和/etc而已。另外,未来如果需要在/etc下面创建新文件,连带的,/etc_hd下面的数据又得要创建一次hard link,因此造成环境相当大的复杂度。所以目前暂不支持硬连接目录。

    图1 硬连接与软连接

    图2 硬连接文件名和原文件名均指向同一个inode

    二、软连接(符号连接)

    如图1所示,软连接文件名指向被连接文件名对应的inode号。当文件1删除时,因为文件内容1对应的inode号没有其他的连接,所以文件内容1将被删除。通过软连接文件名3访问将无法访问原文件的内容。

    从图3可知,文件1和软连接文件名2指向不同的inode。

    图3 软连接文件名和原文件名指向不同的inode

  • 相关阅读:
    关于terminal
    如何从word、excel、ppt中提取flash文件?
    backbone event inherit
    backbonejscomplexmodel
    ssh
    on off trigger
    从数组中删除指定值
    jstl 标签报错 Unterminated <%@ page tag 错误 .
    selenium + python自动化测试环境搭建
    自勉一则
  • 原文地址:https://www.cnblogs.com/sunada2005/p/3041859.html
Copyright © 2011-2022 走看看