精华内容
下载资源
问答
  • 硬链接与软链接

    千次阅读 2018-10-12 21:51:45
    2.硬链接不管有多少个只会指向同一个索引节点,软链接不直接使用索引节点号作为文件指针,而是使用文件路径名作为指针。 3.软链接可以对一个不存在的文件名进行链接 4.软链接可以对目录进行链接 ...

    Linux 文件系统最重要的特点之一是它的文件链接。链接是对文件的引用,这样您可以让文件在文件系统中多处被看到。
    两者的区别:
    1.软连接可以跨文件系统,硬链接不可以;
    2.硬链接不管有多少个只会指向同一个索引节点,软链接不直接使用索引节点号作为文件指针,而是使用文件路径名作为指针。
    3.软链接可以对一个不存在的文件名进行链接
    4.软链接可以对目录进行链接

    展开全文
  • 硬链接与软链接区别

    2017-08-28 12:33:35
    硬链接与软链接区别 学过操作系统的人都应该了解硬链接与软链接,我当时学的时候也是有点迷糊,其实硬链接...下面说一下软链接与硬链接的区别: 软链接相当于一个指向文件的一个指针,而硬链接相当于创建了一个文件的

    硬链接与软链接区别

    学过操作系统的人都应该了解硬链接与软链接,我当时学的时候也是有点迷糊,其实硬链接与软链接非常好理解。我们都知道windows里面的快捷方式的概念吧,链接就相当于快捷方式,Linux里面创建软链接的方式如下:
    ln -s test.txt softlink.txt

    下面说一下软链接与硬链接的区别:
    软链接相当于一个指向文件的一个指针,而硬链接相当于创建了一个文件的副本。每个文件都有一个引用值,这个引用值就标记了当前引用这个文件的个数,如果创建了文件的软链接那么这个引用值不会变化,如果创建里了这个文件的硬链接这个值将会+1。当删除这个文件的时候引用值将会-1(硬链接也会-1),此时指向这个文件的软链接就会失效;而直到引用值减为0的时候这个文件才相当于完全删除。

    • 未创建链接时文件的引用为1
    • 创建软链接引用值不变
    • 创建硬链接,引用值+1





    展开全文
  • 在linux系统中,链接分两种 :一种被称为硬链接(Hard Link),另一种被称为符号链接或软链接(Symbolic Link)。 硬链接与软链接是 Linux 文件系统中的一个重要概念,其涉及文件系统中的索引节点 (index node 又称...

    在linux系统中,链接分两种 :一种被称为硬链接(Hard Link),另一种被称为符号链接或软链接(Symbolic Link)。

    硬链接与软链接 是 Linux 文件系统中的一个重要概念,其涉及文件系统中的索引节点 (index node 又称 inode),而索引节点对象是 Linux 虚拟文件系统 (VFS) 的四个基本概念之一。通过剖析硬链接与软链接的联系与区别,我们可更好的了解 Linux 中 VFS 这一通用文件模型。并让 Linux 普通用户和系统管理员正确使用硬链接与软链接,帮助文件系统开发者获取 inode 的相关知识

    iNode与block理解参考博文:

    Linux文件与目录

    现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用。在 UNIX 系统中,操作系统为磁盘上的文本与图像、鼠标与键盘等输入设备及网络交互等 I/O 操作设计了一组通用 API,使他们被处理时均可统一使用字节流方式。换言之,UNIX 系统中除进程之外的一切皆是文件,而 Linux 保持了这一特性。为了便于文件的管理,Linux 还引入了目录(有时亦被称为文件夹)这一概念。目录使文件可被分类管理,且目录的引入使 Linux 的文件系统形成一个层级结构的目录树。清单 1.所示的是普通 Linux 系统的顶层目录结构,其中 /dev 是存放了设备相关文件的目录。

    硬链接:新建的文件是已经存在的文件的一个别名,当原文件删除时,新建的文件仍然可以使用.

    软链接:也称为符号链接,新建的文件以“路径”的形式来表示另一个文件,和Windows的快捷方式十分相似,新建的软链接可以指向不存在的文件.

    Linux顶层目录结构

     /              根目录
    ├── bin     存放用户二进制文件
    ├── boot    存放内核引导配置文件
    ├── dev     存放设备文件
    ├── etc     存放系统配置文件
    ├── home    用户主目录
    ├── lib     动态共享库
    ├── lost+found 	文件系统恢复时的恢复文件
    ├── media   可卸载存储介质挂载点
    ├── mnt     文件系统临时挂载点
    ├── opt     附加的应用程序包
    ├── proc    系统内存的映射目录,提供内核与进程信息
    ├── root    root 用户主目录
    ├── sbin    存放系统二进制文件
    ├── srv     存放服务相关数据
    ├── sys     sys 虚拟文件系统挂载点
    ├── tmp     存放临时文件
    ├── usr     存放用户应用程序
    └── var     存放邮件、系统日志等变化文件

    软链接和硬链接的区别与联系

    下面是在我理解的基础上画的模型

    软链接:                                                                          硬链接:

                                   

     

    硬链接(hard link) ln 

    UNIX文件系统提供了一种将不同文件链接至同一个文件的机制,我们称这种机制为链接。它可以使得单个程序对同一文件使用不同的名字。这样的好处是文件系统只存在一个文件的副本。系统简单地通过在目录中建立一个新的登记项来实现这种连接。该登记项具有一个新的文件名和要连接文件的inode号(inode与原文件相同)。不论一个文件有多少硬链接,在磁盘上只有一个描述它的inode,只要该文件的链接数不为0,该文件就保持存在。硬链接不能对目录建立硬链接!

    硬连接是直接建立在节点表上的(inode),建立硬连接指向一个文件的时候,会更新节点表上面的计数值。举个例子,一个文件被连接了两次(硬连接),这个文件的计数值是3,而无论通过3个文件名中的任何一个访问,效果都是完全一样的,但是如果删除其中任意一个,都只是把计数值减1,不会删除实际的内容的,(任何存在的文件本身就算是一个硬连接)只有计数值变成0也就是没有任何硬连接指向的时候才会真实的删除内容。

    软链接(symbolic link) ln-s

    我们把符号链接称为软链接,它是指向另一个文件的特殊文件,这种文件的数据部分仅包含它所要链接文件的路径名。软链接是为了克服硬链接的不足而引入的,软链接不直接使用inode号作为文件指针,而是使用文件路径名作为指针(软链接:文件名 + 数据部分-->目标文件的路径名)。软件有自己的inode,并在磁盘上有一小片空间存放路径名。因此,软链接能够跨文件系统,也可以和目录链接!其二,软链接可以对一个不存在的文件名进行链接,但直到这个名字对应的文件被创建后,才能打开其链接。

    那么如何判断是硬链接,软链接,源文件呢?其实不难

    创建方法:

    ln mo linka
    ln mo linkb
    ln -s mo linkc
    

    查看方法:

    ll
    -rw-r--r--  3 root root 11260 Jul 13 19:19 linka//硬连接
    -rw-r--r--  3 root root 11260 Jul 13 19:19 linkb//硬连接
    lrwxrwxrwx  1 root root     5 Jul 18 05:19 linkc -> mo//软连接
    -rw-r--r--  3 root root 11260 Jul 13 19:19 mo//原文件
    

    区别:
    软链接只是指向原文件的名字;
    创建软连接时创建一个文件,文件的内容就是原来的文件的地址;
    如果删掉原文件,则找不到软连接实际连接的文件了。

    相反,创建硬联接时创建一个inode,inode指向原文件,文件的连接数加1;
    硬链接与文件原有的名字是平权的,在Linux看来它们是等价的。
    即如果删掉原文件,只是把连接数减1,如果连接数为0,则文件仍然被删除,否则硬连接指向的文件仍然存在。
    如果删掉硬连接也是如此。

    由于这个原因,硬链接不能连接两个不同文件系统上的文件。

    总结

    硬链接: 与普通文件没什么不同,inode 都指向同一个文件在硬盘中的区块
    软链接: 保存了其代表的文件的绝对路径,是另外一种文件,在硬盘上有独立的区块,访问时替换自身路径。

    展开全文
  • 【Linux】硬链接与软链接

    千次阅读 2021-03-18 23:01:46
    在区分硬链接与软链接之前,我们先要了解inode的相关概念。在文件系统中包含inode区和data区,其中inode区又包括inode表、inode位图、block位图。 inode全称为index node,也就是索引节点,用于存放文件的元数据信息...

    在区分硬链接与软链接之前,我们先要了解inode的相关概念。在文件系统中包含inode区和data区,其中inode区又包括inode表、inode位图、block位图。
    inode全称为index node,也就是索引节点,用于存放文件的元数据信息。在Linux操作系统中,每一个文件都对应一个inode编号,系统用inode编号来识别访问文件。
    一些关于inode的基础指令如下:
    stat filename 查看文件的详细信息(包括inode信息);
    ls -li 长格式显示inode节点信息;
    df -i 查看inodes数目和空余数;
    df -h 查看磁盘的使用情况。
    链接文件指的是在两个文件直接创建链接,类似于Windows下的快捷方式。链接有两种方式,硬链接和软链接。

    • 硬链接:多个文件名指向同一个inode号,不同的文件名可以访问相同的内容,对文件内容进行修改会影响到全部文件名的访问,删除一个硬链接文件,并不影响其他拥有相同inode号的文件硬链接不可以跨文件系统也不可以创建目录的硬链接。
      硬链接的创建:ln 原文件名 新建链接名
    • 软链接:软链接数据块中存放的内容是另一文件的路径名的指向,软链接就是一个普通文件,有着自己的inode号以及用户数据块,基本上可以将软链接看作快捷方式。软链接是一种“独立”的文件,所以删除源文件后,软链接文件还存在,只是不能查看其“指向”的文件的内容。软链接可以跨文件系统,也可以为目录建立。
      软链接的创建:ln -s 原文件名 新建链接名
    展开全文
  • Linux 硬链接与软链接详解

    千次阅读 多人点赞 2019-06-27 16:48:30
    硬链接与软链接的联系与区别 文件都有文件名与数据,这在Linux上被分成两个部分:用户数据(user data)与元数据(metadata)。 用户数据:文件数据块(data block),数据块是记录文件真是内容的地方 元数据:而元...
  • 理解 Linux 的硬链接与软链接

    千次阅读 2013-10-28 09:33:45
    硬链接与软链接是 Linux 文件系统中的一个重要概念,其涉及文件系统中的索引节点 (index node 又称 inode),而索引节点对象是 Linux 虚拟文件系统 (VFS) 的四个基本概念之一。通过剖析硬链接与软链接的联系与区别,...
  • Linux系统中的硬链接与软链接应用十分广泛,本文对两者进行较为详细的分析和比较。
  • Linux的文件链接方式分为硬链接与软链接(也叫符号链接)两种,在Linux中链接也被视为文件来看待,一样可以被执行、编辑和访问。对系统中的应用程序而言,对链接的操作就是对原始文件的操作,所以链接不是副本。如果...
  • linux硬链接与软链接

    2013-10-08 15:30:51
    linux硬链接与软链接 1.Linux链接概念 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 【硬连接】 硬连接指通过索引节点来进行...
  • 20-硬链接与软链接

    千次阅读 2016-12-01 23:05:53
    首先,我们要理解的一个概念是:什么是链接?链接是一个传送门。当你使用 vim 打开一个链接的时候,看到的...既然如此,为什么还区分硬链接软链接?它们的区别在哪里?1 回忆 dir_entry如果你不知道什么是 dir_entr
  • Linux 硬链接与软链接

    2019-02-14 14:14:51
    在Linux中,连接文件有两种,一种类似于Windows的快捷方式,可以让你快速地链接到目标文件(或目录),这种称为软链接(soft link),也叫作... 软链接与硬链接是两种完全不一样的东西。 1.硬链接(hard link) 1...
  • 区分 Linux 的硬链接与软链接

    万次阅读 2020-09-21 21:52:43
    在 UNIX 系统中,操作系统为磁盘上的文本图像、鼠标键盘等输入设备及网络交互等 I/O 操作设计了一组通用 API,使他们被处理时均可统一使用字节流方式。换言之,UNIX 系统中除进程之外的一切皆是文件,而 Linux ...
  • 硬链接与软链接的联系与区别

    千次阅读 2017-04-17 20:53:35
    硬链接与软链接的联系与区别 我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata) 。用户数据,即文件数据块 (data block) ,数据块是记录文件真实内容...
  • 链接与软链接 硬链接 第3列的数叫硬链接数(有几个文件名对应着同一个inode,就叫硬链接数为几) 当前目录.的inode和上一级目录home下的admin是一样的 文件的硬链接创建方式:ln src dst 硬链接好处:两...
  • Linux中的硬链接与软链接

    千次阅读 2018-07-17 17:22:48
    硬链接:在一个文件里面,对于目录来说,记录着文件的名字和inode号(inode 是文件元数据的一部分但其并不包含文件名,inode 号即索引节点号,是文件的唯一标识),我们也可以在多个目录里记录相同的inode号,它们的...
  • linux硬链接与软链接的联系与区别

    万次阅读 多人点赞 2018-03-24 20:25:09
    我们知道文件都有文件名数据,这在 Linux 上被分成两个部分:用户数据 (user data) 元数据 (metadata)。 用户数据,即文件数据块 (data block),数据块是记录文件真实内容的地方; 元数据则是文件的附加属性,...
  • linux 下的硬链接与软链接

    千次阅读 2016-04-28 17:11:28
    在Linux系统中,内核为每一个...Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。一、硬链接 硬链接说白了是一个指针,指向文件索引节点,系

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 57,842
精华内容 23,136
关键字:

硬链接与软链接