美文网首页
linux中的两种链接

linux中的两种链接

作者: 一只烟酒僧 | 来源:发表于2020-09-10 09:33 被阅读0次

    参考链接:
    https://www.cnblogs.com/songgj/p/9115954.html
    https://www.cnblogs.com/itech/archive/2009/04/10/1433052.html
    https://www.linuxprobe.com/soft-hard-links-comments.html
    一、linux中保存文件的方式
    在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在文件系统建立之初,会自动生成一个索引节点号的表,每当建立一个文件,就分配一个索引节点号,相当于文件的地址
    二、硬链接
    在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。也就是说,对于一个重要的文件,可以通过设置多个硬链接,分配多个索引节点号来进行备份,反过来如果想彻底删除这个文件释放空间,必须将所有该文件的索引节点全部删除才可以。如果对源文件进行修改,那所有硬链接的对应的文件的内容均会被修改。硬链接只是复制了索引节点号,不会产生冗余的数据。硬链接只能对某个文件进行链接,无法会目录进行链接。
    三、软连接
    软链接又称符号链接,原理有点类似于windows系统下的链接,其文件内容是指向目标文件的路径。软链接可以对文件或路径进行链接。如果删除了源文件,对应的软链接会变成类似windows下的死链接。源文件修改,链接对应的文件也会修改。对软链接下的文件操作,相当于在源文件路径下的操作!
    总结:

    软链接:

    1.软链接是存放另一个文件的路径的形式存在。
    2.软链接可以 跨文件系统 ,硬链接不可以。
    3.软链接可以对一个不存在的文件名进行链接,硬链接必须要有源文件。
    4.软链接可以对目录进行链接。
    

    硬链接:

    1. 硬链接,以文件副本的形式存在。但不占用实际空间。
    2. 不允许给目录创建硬链接。
    3. 硬链接只有在同一个文件系统中才能创建。
    4. 删除其中一个硬链接文件并不影响其他有相同 inode 号的文件。
    

    四、链接的创建
    一般使用ln命令创建
    ln命令格式:

    ln [参数] [源文件或目录] [目标文件或目录]

    主要参数:

    -i 交互模式,文件存在则提示用户是否覆盖。
    -s 软链接(符号链接)。
    -d 允许超级用户制作目录的硬链接。
    -b 删除,覆盖以前建立的链接
    
    软链接 (符号链接) ln -s   source  target 
    硬链接 (实体链接)ln       source  target
    

    相关文章

      网友评论

          本文标题:linux中的两种链接

          本文链接:https://www.haomeiwen.com/subject/ifvuektx.html