精华内容
下载资源
问答
  • 软连接和硬链接区别

    千次阅读 2019-10-14 14:46:36
    Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 【硬连接】 硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的...

    1.Linux链接概念
    Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。

    【硬连接】
    硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

    【软连接】
    另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

    2.通过实验加深理解
    [oracle@Linux]$ touch f1 #创建一个测试文件f1
    [oracle@Linux]$ ln f1 f2 #创建f1的一个硬连接文件f2
    [oracle@Linux]$ ln -s f1 f3 #创建f1的一个符号连接文件f3
    [oracle@Linux]$ ls -li # -i参数显示文件的inode节点信息
    total 0
    9797648 -rw-r–r-- 2 oracle oinstall 0 Apr 21 08:11 f1
    9797648 -rw-r–r-- 2 oracle oinstall 0 Apr 21 08:11 f2
    9797649 lrwxrwxrwx 1 oracle oinstall 2 Apr 21 08:11 f3 -> f1

    从上面的结果中可以看出,硬连接文件f2与原文件f1的inode节点相同,均为9797648,然而符号连接文件的inode节点不同。

    [oracle@Linux]$ echo “I am f1 file” >>f1
    [oracle@Linux]$ cat f1
    I am f1 file
    [oracle@Linux]$ cat f2
    I am f1 file
    [oracle@Linux]$ cat f3
    I am f1 file
    [oracle@Linux]$ rm -f f1
    [oracle@Linux]$ cat f2
    I am f1 file
    [oracle@Linux]$ cat f3
    cat: f3: No such file or directory

    通过上面的测试可以看出:当删除原始文件f1后,硬连接f2不受影响,但是符号连接f1文件无效

    3.总结
    依此您可以做一些相关的测试,可以得到以下全部结论:
    1).删除符号连接f3,对f1,f2无影响;
    2).删除硬连接f2,对f1,f3也无影响;
    3).删除原文件f1,对硬连接f2没有影响,导致符号连接f3失效;
    4).同时删除原文件f1,硬连接f2,整个文件会真正的被删除。

    区别:
    软链接:

    以路径形式存在,类似于快捷方式
    可以跨文件系统
    可以对一个不存在的文件名进行链接
    可以对目录进行链接

    硬链接:

    以文件副本形式存在,但不占用实际空间
    不允许给目录创建硬链接
    只能在同一个文件系统中才能创建

    展开全文
  • 本篇文章详细介绍了linux软连接和硬链接,废话不多说,接着往下看把。 一 链接文件 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 ...
  • (1)软连接可以 跨文件系统 ,连接不可以 。实践的方法就是用共享文件把windows下的 aa.txt文本文档连接到linux下/root目录 下 bb,cc . ln -s aa.txt/root/bb 连接成功 。ln aa.txt /root/bb 失败 。 (2)...

    默认不带参数情况下,ln命令创建的是硬链接。

    硬链接原文件&链接文件公用一个inode号,说明他们是同一个文件,而软链接原文件&链接文件拥有不同的inode号,表明他们是两个不同的文件;

    在文件属性上软链接明确写出了是链接文件,而硬链接没有写出来。

    4点不同 :
          (1)软连接可以 跨文件系统 ,硬连接不可以 。实践的方法就是用共享文件把windows下的 aa.txt文本文档连接到linux下/root目录 下 bb,cc . ln -s aa.txt/root/bb 连接成功 。ln aa.txt /root/bb 失败 。

          (2)关于 I节点的问题 。硬连接不管有多少个,都指向的是同一个I节点,会把 结点连接数增加 ,只要结点的连接数不是 0,文件就一直存在 ,不管你删除的是源文件还是 连接的文件 。只要有一个存在 ,文件就 存在 (其实也不分什么 源文件连接文件的 ,因为他们指向都是同一个 I节点)。 当你修改源文件或者连接文件任何一个的时候 ,其他的 文件都会做同步的修改 。软链接不直接使用i节点号作为文件指针,而是使用文件路径名作为指针。所以 删除连接文件 对源文件无影响,但是 删除 源文件,连接文件就会找不到要指向的文件 。软链接有自己的inode,并在磁盘上有一小片空间存放路径名.

         (3)软连接可以对一个不存在的文件名进行连接 。

         (4)软连接可以对目录进行连接。

           备注:I节点 :它是UNIX内部用于描述文件特性的数据结构.我们通常称I节点为文件索引结点(信息结点).i节点 含有关于文件的大部分的重要信 息,包括文件数据块在

           磁盘上的地址.每一个I节点有它自己的标志号,我们称为文件顺序号.I节点包含的信息 1.文件类型 2.文件属主关系 3.文件的访问权限 4.文件的时间截.

     

    目录文件无法创建硬链接,只有文件才可以创建硬链接。

    硬链接无法跨越文件系统,即不能再不同分区上的文件创建硬链接。

    int link(const char *oldpath,const char *newpath);//创建硬链接函数,为一个已经存在的文件创建一个新的硬链接,Oldpath表示已经存在的文件。

    int unlink(const char *pathname);//删除硬链接函数。删除符号链接也是用的这个函数

    符号链接

    符号链接是通过文件名称来指向另一个文件的,因此符号链接文件和源文件的索引节点号并不同,一旦将源文件删除。那么符号链接文件就会无效

    int symlink(const char *oldpath,const char *newpath);//创建符号链接函数

    ssize_t readlink(const char *path, char *buf,size_t bufsize);//打开符号链接并获取文件名称。

    展开全文
  • 图示软硬链接区别有关硬链接的总结具有相同inode节点号的多个文件互为硬链接文件;删除硬链接文件或者删除源文件任意之一,文件实体并未被删除;只有删除了源文件所有对应的硬链接文件,文件实体才会被删除;...

    图示软硬链接的区别

    c576d62f64c945ff17c19caf0d4b4aff.png

    有关硬链接的总结

    具有相同inode节点号的多个文件互为硬链接文件;

    删除硬链接文件或者删除源文件任意之一,文件实体并未被删除;

    只有删除了源文件和所有对应的硬链接文件,文件实体才会被删除;

    硬链接文件是文件的另一个入口;

    可以通过给文件设置硬链接文件来防止重要文件被误删;

    创建硬链接命令 ln 源文件 硬链接文件;

    硬链接文件是普通文件,可以用rm删除;

    对于静态文件(没有进程正在调用),当硬链接数为0时文件就被删除。注意:如果有进程正在调用,则无法删除或者即使文件名被删除但空间不会释放。

    有关软链接的总结

    软链接类似windows系统的快捷方式;

    软链接里面存放的是源文件的路径,指向源文件;

    删除源文件,软链接依然存在,但无法访问源文件内容;

    软链接失效时一般是白字红底闪烁;

    创建软链接命令 ln -s 源文件 软链接文件;

    软链接和源文件是不同的文件,文件类型也不同,inode号也不同;

    软链接的文件类型是“l”,可以用rm删除。

    硬链接和软链接的区别

    原理上,硬链接和源文件的inode节点号相同,两者互为硬链接。软连接和源文件的inode节点号不同,进而指向的block也不同,软连接block中存放了源文件的路径名。

    实际上,硬链接和源文件是同一份文件,而软连接是独立的文件,类似于快捷方式,存储着源文件的位置信息便于指向。

    使用限制上,不能对目录创建硬链接,不能对不同文件系统创建硬链接,不能对不存在的文件创建硬链接;可以对目录创建软连接,可以跨文件系统创建软连接,可以对不存在的文件创建软连接。

    Linux硬链接与软连接

    1.Linux链接概念 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引节 ...

    Linux硬链接和软连接详解

    硬链接: 硬链接是通过索引节点inode来进行链接的(关于inode,http://www.cnblogs.com/ZGreMount/p/7653307.html).在Linux(ext2,ext3 ...

    linux 硬链接与软链接的区别

    硬链接的特点:不添加新文件 不能跨区建立 不能对目录建立 删除源文件硬链接正常访问   ln 源文件 目标链接文件   软连接的特点:会添加新文件 可以跨区建立 可以对目录建立 删除源文件软连接不 ...

    linux硬链接和软链接的区别

    1.原理上: 硬链接(hard link):A是B的硬链接(A和B都是文件名),则A的目录项中的inode节点号与B的目录项中的inode节点号相同,即一个inode节点对应两个不同的文件名,两个文件 ...

    Linux硬链接和软连接

    硬链接(hard link): A是B的硬链接(A和B都是文件名),则A的目录项中的inode节点号与B的目录项中的inode节点号相同,即一个inode节点对应两个不同的文件名,两个文件名指向同一个 ...

    【Linux学习】Linux文件系统4—Linux文件硬链接与软连接

    Linux文件系统4-Linux文件硬链接与软连接 inode:索引节点 (连接文件)link 一.文件硬链接 1.Linux文件系统中,inode只相同的文件是硬链接文件 2.不同文件名,inode ...

    linux 的硬链接与软连接

    linux 里有硬链接和软连接两种概念.要明白这些概念首先要明白文件在linux 上其实有3个组成部分. data 真正的数据存储区域 inode 一个用来唯一表示data的数据结构 filename ...

    Linux硬链接和软链接(符号链接)

    硬链接与软连接 :https://blog.csdn.net/u013777351/article/details/50557260 索引节点:https://blog.csdn.net/jessey ...

    轻松学习Linux之理解Shell的硬链接与软连接

    大家在学习linux的过程中常常遇到一些模糊且容易混淆的概念比如什么是硬链接和软链接,他们有什么区别?  软连接有点象windows中的快捷方式,连接和目标文件具有相同的节点,而硬连接就好象重新复制 ...

    随机推荐

    一个简单的web服务器

    写在前面 新的一年了,新的开始,打算重新看一遍asp.net本质论这本书,再重新认识一下,查漏补缺,认认真真的过一遍. 一个简单的web服务器 首先需要引入命名空间: System.Net,关于网络编 ...

    C# GridControl 行背景颜色

    使用C# DevExpress_gridControl 行号行样式显示行背景颜色,必须取消自动变换行色属性 取消Focus变色,属性为OptionSelection--EnableAppearance ...

    C#调用Python 脚本语言

    1. 安装IronPython http://pan.baidu.com/s/1qW4jNJ2  下载IronPython 2.7 安装下载下来的安装包 2. 创建项目 创建一个C#的Windows窗 ...

    树莓派2 安装mono3.0运行mvc4

    sudo apt-get updatesudo apt-get upgradesudo apt-get mono-completewget -c http://www.linuxdot.net/dow ...

    js的 new image()用法[转]

    创建一个Image对象:var a=new Image();    定义Image对象的src: a.src=”xxx.gif”;    这样做就相当于给浏览器缓存了一张图片. 图像对象: 建立图像对 ...

    tcp链接断开的探测

    有资料说,read.write都可以探测tcp的断开,但都不是实时的. 但是实际在某些设备上测试发现,即使开一个线程每隔一小段时间发一次心跳包(write),write也不能探测连接已经断开,而且这个 ...

    Linux-入门配置jdk,tomcat,mysql

    Mysql安装 大家可以在这里下 http://mirrors.163.com/mysql/Downloads/MySQL-5.7/ 1)查看CentOS自带的mysql rpm -qa | grep ...

    OEMCC 13.2 安装部署

    需求:安装部署OEM 13.2 环境:两台主机,系统RHEL 6.5,分别部署OMS和OMR: OMS,也就是OEMCC的服务端 IP:192.168.1.88 内存:12G+ 硬盘:100G+ OM ...

    url 中需要转义的字符

    1. +  URL 中+号表示空格 %2B 2. 空格 URL中的空格可以用+号或者编码 %20 3. /  分隔目录和子目录 %2F  4. ?  分隔实际的 URL 和参数 %3F  5. % 指 ...

    【bzoj3170】[Tjoi2013]松鼠聚会

    3170: [Tjoi2013]松鼠聚会 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1670  Solved: 885[Submit][Statu ...

    展开全文
  • 链接和硬链接到底有啥作用和区别

    万次阅读 多人点赞 2018-01-22 11:38:32
    前言:在网上搜索了好久,看了很多博客,某度知道等等。关于软硬链接的解释都太模糊,还有什么i节点,跨分区根本弄不明白...源文件:即你要对谁建立链接二 什么是链接和硬链接1,链接可以理解成快捷方式。它wind

    前言:在网上搜索了好久,看了很多博客,某度知道等等。关于软硬链接的解释都太模糊,还有什么i节点,跨分区根本弄不明白,在查阅了书籍和询问老师后决定自己写一篇简单的博文,让初学者都能够明白的博文。

    一 建立软链接和硬链接的语法

    软链接:ln -s 源文件 目标文件
    硬链接:ln 源文件 目标文件
    源文件:即你要对谁建立链接

    二 什么是软链接和硬链接

    1,软链接可以理解成快捷方式。它和windows下的快捷方式的作用是一样的。
    2,硬链接等于cp -p 加 同步更新。

    为了方便说明,我在根分区(/)下建立test文件夹,然后新建了一个jys文件
    这里写图片描述
    建立软链接和硬链接:
    这里写图片描述

    区别: 软链接文件的大小和创建时间和源文件不同。软链接文件只是维持了从软链接到源文件的指向关系(从jys.soft->jys可以看出),不是源文件的内容,大小不一样容易理解。
    硬链接文件和源文件的大小和创建时间一样。硬链接文件的内容和源文件的内容一模一样,相当于copy了一份。
    这里写图片描述

    但是简单的copy的文件创建文件的时间应该是复制文件时的时间,肯定不会像硬链接那样和创建源文件的时间相同。你想的没错。
    这里写图片描述
    但是只要加一个选项-p,时间就一样了
    这里写图片描述
    这里写图片描述
    那么cp -p的文件是不是就相当于硬链接了呢?其实不然,对于源文件的内容有修改,硬链接文件会同步更新修改,始终保持和源文件的内容相同,而复制的文件则不可能做到这一点。
    这里写图片描述
    所以,硬链接等于cp -p加同步更新。
    软链接像快捷方式,方便我们打开源文件,这一点在windows中深有体会,那硬链接有哪些应用呢?
    在多用户的操作系统里,你写一个脚本,程序等,没有完成,保存后等下次有时间继续写,但是其他用户有可能将你未写完的东西当成垃圾清理掉,这时,你对你的程序,脚本等做一个硬链接,利用硬链接的同步更新,就可以防止别人误删你的源文件了。

    三 删除源文件对软链接和硬链接的影响

    这里写图片描述
    查看软链接文件,查看的文件不存在。和windows一样,删除源文件,快捷方式也用不了。但是删除源文件,为什么硬链接文件还可以查看呢?
    这里要简单说下i节点了。i节点是文件和目录的唯一标识,每个文件和目录必有i节点,不然操作系统就无法识别该文件或目录,就像没有上户口的黑户。linux操作系统是不识别这些字母的,像这些jys ,jys.hard操作系统根本不知道是什么玩意。
    这里写图片描述
    可以看出硬链接文件和源文件i节点号相同,并且一个i节点可以对应多个文件名。
    这里写图片描述
    如图,删除了jys,只是删除了从920586到jys的映射关系,不影响它和jys.hard的映射关系。此图也解释了硬链接的同步更新,对源文件修改,操作系统只认i节点,于是操作系统就将修改内容写进所有i节点相同名字不同的文件。写到这里我突发奇想,如果对硬链接文件进行修改那么源文件会不会同步更新呢?留给读者自己试验吧!

    展开全文
  • 本文主要讲了一下关于Linux软连接和硬链接,希望对你的学习有所帮助。
  • Linux系统 软连接和硬链接区别

    千次阅读 2018-09-15 19:51:17
    软连接:symbolic link 软链接: 以路径形式存在,类似于快捷方式 可以跨文件系统 可以对一个不存在的文件名进行链接 可以对目录进行链接 硬链接: 以文件副本形式存在,但不占用实际空间 不允许给目录创建...
  • Centos 软连接和硬链接

    2019-08-15 17:57:02
    1.链接: 建立链接:ln -s /usr/local/node-v4.2.6-linux-x86/bin/node /usr/local/bin/node 解释:将/usr/local/node-v4.2.6-linux-x86/bin/下的node映射到/usr/local/bin/下的node ...建立硬链接:l...
  • linux下软连接硬链接的本质区别

    千次阅读 2016-08-02 18:18:20
    软连接硬链接最大的区别在于: 1.文件A文件B的inode号码一样,对文件内容进行修改,会影响到所有文件名;但是,删除一个文件名,不影响另一个文件名的访问。这种情况就被称为"硬链接"(hard link)。 2.文件A...
  • 总结软连接和硬链接区别,实例操作说明 硬链接:        本质时对同一个文件起多个文件名。所以表现为一个inode号可以对应多个文件名。 实例: [root@iZuf69aakqlvmt4fqvqcrxZ test]# ll -i total 0 1057905 -rw...
  • Linux软连接和硬链接

    2021-01-09 17:31:13
     Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。  【硬连接】  硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在...
  • 一、 建立链接和硬链接的命令 链接:ln -s 源文件 目标文件 链接:ln -s 源文件 目标文件夹(目录) 硬链接:ln 源文件 目标文件 二 、什么是链接和硬链接,下边举例描述如下: 1,链接可以理解成快捷方式...
  • linux中文件的inode编号的意义: 文件分为数据元数据。 数据:用户记录在物理磁盘空间的真实数据。...硬链接就是同一个inode编号,不同文件的名字。 链接: 是一个文件指向文件的路径,相当于windows的快...
  • linux硬链接链接的联系与区别

    万次阅读 多人点赞 2018-03-24 20:25:09
    (又称符号链接,即 soft link 或 symbolic link) 软链接与硬链接不同,若文件用户数据块中存放的内容是另一文件的路径名的指向,则该文件就是软连接。软链接就是一个普通文件,只是数据块内容有点特殊。软链接有着...
  • 软连接和硬连接区别

    千次阅读 2019-11-10 15:05:56
    今天我们来理顺下关于软连接和硬连接的区别,已经完全清楚的大拿请略过。 区别概览 区别分为以下几点: 1.本质:连接,同一个文件多个名字;软连接则是不同文件。 2.跨分区:连接不支持对目录创建,软连接支持...
  • 软连接硬链接区别

    2021-03-06 04:04:58
    接下来我们就从文件系统构成的基本原理出发来说明下linux链接和硬链接区别。文件系统简述:linux的哲学就是一切皆文件。为了方便人们的使用,我们可以通过看文件名来区分不同的文件。但作为只识别0 1 的机器,让...
  • linux 链接和硬链接到底有啥作用和区别(转)

    千次阅读 多人点赞 2020-02-19 11:24:21
    关于软硬链接的解释都太模糊,还有什么i节点,跨分区根本弄不明白,在查阅了书籍询问老师后决定自己写一篇简单的博文,然初学者都能够明白的博文。 一 建立链接和硬链接的语法 链接:ln -s 源文件 目标文件 ...
  • 删除一个,另一个也存在–连接数会减1 硬链接结点一样 限制: 不能跨设备创建(不同分区) 方法 : ln+原始文件 + 硬链接重命名文件 2.符号链接 链接 (有主次之分): 相当于创建一个快捷方式,记录原文件的位置...
  • 但是不能在软连接文件上创建链接文件,这样会导致断裂,形成混乱的链接链 区别: 挂载点 只能在同种存储媒体上的文件之间创建硬链接(Hard Link),不能在不同挂载点下的文件间创建硬链接,对于后一种情况,可以使用...
  • 在Linux的文件系统中,...软连接,其实就是新建立一个文件,这个文件就是专门用来指向别的文件的(那就windows 下的快捷方式的那个文件有很接近的意味)。软链接产生的是一个新的文件,但这个文件的作用就是专门...
  • linux软连接和硬链接区别
  • 总结软连接和硬连接区别硬链接和软链接的区别 1、本质不同 硬链接:同一个文件,多个名称。 ​软链接:不同的文件。 2、跨分区 硬链接:不支持跨分区。 软链接:支持跨分区。 3、目录 硬链接:不支持对目录创建。...
  • Linux 软连接连接的区别

    千次阅读 2020-07-30 00:48:43
    一、软连接(快捷方式) ln -s …/file file.s 1.软连接file.s的大小4字节,其内容是访问的路径 file.soft的大小为6字节,因为其内容(路径)不一样。 2.在windows下,快捷方式移动位置后仍可使用,而在linux不一定...
  • 如果需要在系统中维护同一个文件的两个或多个副本,不需要使用两个或多个物理副本,可以使用一个物理副本多个虚拟副本,这种虚拟副本称为链接。 链接是目录中的占位符,指向文件的真实...1、创建硬链接方式 方...
  • 硬链接和软连接区别: 1、本质:硬链接:同一个多个名字,软连接不同文件 2、跨分区:硬链接不能夸分区,软连接可以跨分区 3、目录创建 硬链接不能创建lls 4、相互关系,软连接依赖原始文件 5、indoe号 6、链接数 7、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 69,217
精华内容 27,686
关键字:

软连接和硬链接的区别

友情链接: 动态创建数组类.zip