文件属性软硬连接:

链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。建立硬链接时,链接文件和被链接文件必须位于同一个文件系统中,并且不能建立指向目录的硬链接。而对符号链接,则不存在这个问题。默认情况下,ln产生硬链接。

在硬链接的情况下,参数中的“目标”被链接至[链接名]。如果[链接名]是一个目录名,系统将在该目录之下建立一个或多个与“目标”同名的链接文件,链接文件和被链接文件的内容完全相同。如果[链接名]为一个文件,用户将被告知该文件已存在且不进行链接。如果指定了多个“目标”参数,那么最后一个参数必须为目录。

如果给ln命令加上- s选项,则建立符号链接。如果[链接名]已经存在但不是目录,将不做链接。[链接名]可以是任何一个文件名(可包含路径),也可以是一个目录,并且允许它与“目标”不在同一个文件系统中。如果[链接名]是一个已经存在的目录,系统将在该目录下建立一个或多个与“目标”同名的文件,此新建的文件实际上是指向原“目标”的符号链接文件。

硬链接:ln 源文件 目标文件

软连接:ln -s 源文件 目标文件(目标文件不能已经存在)

1. 硬链接(hard link) :

在Linux文件系统中,多个文件名指向同一个索引节点(inode)。这种情况文件就称为硬链接。硬链接文件就相当于文件的另外的一个入口。

例:

[root@centos ~]# ls -il ett.txt

39 -rw-r--r--. 1 root root 292 5月  10 19:58 ett.txt

[root@centos ~]# ln ett.txt a

[root@centos ~]# ls -hil ett.txt a

39 -rw-r--r--. 2 root root 292 5月  10 19:58 a

39 -rw-r--r--. 2 root root 292 5月  10 19:58 ett.txt

硬链接知识:

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

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

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

  4. 当所有的硬链接文件及源文件被删除后,再存放新的数据会占用这个文件的空间,或者磁盘fsck检查的时候,删除的数据也会被系统回收

  5. 硬链接文件就是文件的另一个入口

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

  7. 通过执行 ln 源文件 硬链接文件 即可创建硬链接文件

  8. 硬链接文件是普通文件,所以可以用rm命令删除

  9. 对应静态文件(没有进程正在调用的文件)来讲,当对应硬链接数为0(i_link),文件就被删除了。i_link的查看方法:ls -l 第三列的数字就是

硬链接的限制:

我们在使用硬链接的同时也需要对硬链接的限制有所了解; 
1. 不能跨文件系统 
2. 不能链接到目录

2.软链接(symbolic link):

软连接又叫做符号链接,它几乎可以等价于windows下的快捷方式;

[root@centos ~]# ls -li install.log b

121 lrwxrwxrwx  1 root root    11 5月  18 15:14 b -> install.log

13 -rw-r--r--. 1 root root 21712 5月   8 00:06 install.log

软连接的创建:

软连接:ln -s 源文件 目标文件(目标文件不能已经存在)

软连接知识:

  1. 软连接类似window的快捷方式(可以通过readiink查看其指向)

  2. 软连接类似一个文本文件,里面存放的是源文件的路径,指向源文件实体

  3. 删除源文件,软连接文件依然存在,但是无法访问指向的源文件路径内容了

  4. 失效的时候一般是白字红底闪烁提示

  5. 执行命令“ln -s 源文件 软连接文件”,即可完成创建软连接(目标不能存在)

  6. 软连接和源文件是不同类型的文件,也是不同的文件,inode号也不相同

  7. 软连接文件的文件类型为(l),可以用rm命令删除

有关文件的整体总结:

1.删除软连接,对源文件和硬链接文件都没有影响

2.删除硬链接,对源文件和软连接文件都没有影响

3.删除源文件,对硬链接没有印象,但是会导致软连接文件失效,白底红字闪烁

4.同时删除源文件和硬链接文件,整个文件才会真正的被删除

5.源文件和硬链接文件具有相同的索引节点号,可以认为是同一个文件或一个文件多个入口

6.源文件和软连接文件的索引节点号不相同,是不同的文件,软连接文件相当于源文件的快捷方式,含有源文件的位置指向

有关目录的总结:

  1. 对于目录,不可以创建硬链接,但可以创建软连接

  2. 目录的硬链接不能跨越文件系统

  3. 每个目录下面都有一个硬链接.号,和对应上级目录的硬链接..

  4. 在父目录里面创建一个子目录,父目录的链接数会增加1(子目录里都来指向父目录)

硬链接和符号链接详解相关推荐

  1. Linux 系统的硬链接和软链接详解

    文章目录 什么是链接 链接用来干什么的 硬链接和软链接的区别 硬链接和软链接的图示 总结 我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 ...

  2. 【Linux】Linux下的硬链接与符号链接

    Linux的初学者常常混淆Linux中的硬链接(hard link)与符号链接(symbol link)的概念,分不清楚它们的区别.因此,本文将向读者全面介绍硬链接与符号链接,给予读者以全面的认识. ...

  3. gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解

    例子:由多个源文件组成的C程序,经过编辑.预处理.编译.链接等阶段才能生成最终的可执行程序.此过程中,在__c__阶段可以发现被调用的函数未定义. A. 编辑和预处理 B. 预处理 C. 编译 D. ...

  4. Linux上创建和更改硬链接和符号链接(软连接)

    Linux上创建和更改硬链接和符号链接(软连接) 对于Linux上的硬链接和软连接而言,使用cp命令,无论覆盖其中的那个文件(源文件,软连接文件,硬链接文件),其它文件的内容都会同步修改. 点击(此处 ...

  5. 浅谈硬链接和符号链接的区别

    硬链接(hard link)的创建 使用命令(ln 源文件名 新建文件名) 创建 ls -l命令查看当前目录的文件 当前目录下只有hello.c这一个文件文件类型是 - 表明hello.c是普通文件( ...

  6. 【Linux】硬链接和符号链接(软连接)都可以修改原文件吗?--相同点与不同点

    答案是都可以修改 测试 测试命令如下 $ cd /tmp # 所有人都有rwx权限 $ touch test.txt $ vim test.txt #写入: this is the test file ...

  7. linux 符号链接有什么用,硬链接和符号链接有什么区别?

    问题描述 正如标题所示,我想知道命令ln创建的硬链接和软链接之间的区别.命令man ln确实提供信息,但没有充分回答我的问题. 另外,如果有人能提供一个硬链接比符号链接更可取的设置,那将会很好. 最佳 ...

  8. 友情链接在html中怎么写,HTML+CSS入门 网站友情链接显示页面详解

    本篇教程介绍了HTML+CSS入门 网站友情链接显示页面详解,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < 1.列表标签 有序列表:type默认是1,2,3--,rese ...

  9. 硬链接与符号链接的比较?

    今天就说说硬链接(实体链接)与符号链接(类似Windows的快捷方式)的不同? 首先我们应知道: 每个档案都会占用一个inode ,档案内容由 inode记录来指向; 想要读取该档案,必须要经过目录记 ...

最新文章

  1. 宗成庆:如何撰写毕业论文?
  2. 全球首款碳纳米管通用计算芯片问世!RISC-V架构,5倍于摩尔定律,Nature连发三文推荐...
  3. selenium+chromedriver爬取淘宝美食信息保存到MongoDB
  4. 最大全0/1子矩阵的探究
  5. python读取单元格的值csv,比较单元格值的csv文件python
  6. wsl centos7: Failed to get D-Bus connection: Operation not permitted
  7. 介绍Python的魔术方法 - Magic Method
  8. kotlin学习笔记——lambda表达式
  9. 2010年5月22日 网络规划师下午II 试题预测和论文预测
  10. php 静态方法 call,php的 __callStatic 函数
  11. SharePoint Pages(1)之SharePoint页面体系架构
  12. matlab meshgrid函数_从零开始的matlab学习笔记——(28)立体图切面与三视图
  13. TensorFlow HOWTO 2.1 支持向量分类(软间隔)
  14. Python循环完成剪刀石头布游戏
  15. 大数据可视化应用在哪些方面
  16. scala学习笔记四----scala基础知识学习
  17. SVN遗漏so文件的解决办法
  18. 由0.1+0.2-0.3不等于0说起
  19. websocket实现实时直播
  20. CentOS修改SSH端口号

热门文章

  1. SVM笔记(二)拉格朗日对偶、KTT条件、软间隔SVM
  2. nhieushop chovt.com hoan nghenh cac ban ghe tham nhe - chovt hovabbkb
  3. forward() takes 2 positional arguments but 3 were given
  4. 通过Mybatis批量插入表数据
  5. SpringBoot(四)整合视图
  6. 目标检测各类数据集格式互转以及处理方法(VOC, COCO, txt)
  7. HEG安装教程(windows平台)
  8. 金融基础知识笔记(一)
  9. 51NOD 2370 奈芙莲的护符
  10. 整理下OSS方面的资料,免得到处找,linux音频编程,open sound system