链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link,也叫做软链接)。默认情况下,ln命令产生硬链接。
(一)硬链接
1.产生硬链接的语法

ln 源文件 目标文件 (注意:不能为目录创建硬链接)

2.关于inode
inode 译成中文就是索引节点。每个存储设备或存储设备的分区(存储设备是硬盘、软盘、U盘 … … )被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是Block,Block是用来存储数据用的。而inode呢,就是用来存储这些数据的信息,这些信息包括文件大小、属主、归属的用户组、读写权限等。inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令,能通过inode值最快的找到相对应的文件。
硬连接指通过索引节点来进行的连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件才会被真正删除。
3.inode相同的文件是硬链接文件
在Linux 文件系统中,inode值相同的文件是硬链接文件,也就是说,不同的文件名,inode可能是相同的,一个inode值可以对应多个文件。
inode值相同的文件,他们的关系是互为硬链接的关系。当我们修改其中一个文件的内容时,互为硬链接的文件的内容也会跟着变化。如果我们删除互为硬链接关系的某个文件时,其它的文件并不受影响。
(二)软链接(符号链接)
与硬连接相对应,Lnux系统中还存在另一种连接,称为符号连接(Symbilc Link),也叫软连接。软链接文件有点类似于Windows的快捷方式。它实际上是特殊文件的一种。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
1.产生软链接的语法
# ln -s 源文件或目录 目标文件或目录
2.关于软链接
软链接也叫符号链接,它和硬链接有所不同,软链接文件只是其源文件的一个标记。当我们删除了源文件后,链接文件不能独立存在,虽然仍保留文件名,但我们却不能查看软链接文件的内容了。
值得我们注意的是:当我们修改链接文件的内容时,就意味着我们在修改源文件的内容。当然源文件的属性也会发生改变,链接文件的属性并不会发生变化。当我们把源文件删除后,链接文件只存在一个文件名,因为失去了源文件,所以软链接文件也就不存在了。这一点和硬链接是不同的;
(三)示例
touch f1(创建一个f1的文件)
ln f1 f2 创佳一个f2的硬连接
ln -s f1 f3 创建一个f3的软连接
此时如果删除f3,对f1,f2无影响;如果删除f2,对f1,f3也无影响,如果删除f1,那么因为f2也应用f1,所以并不影响f2节点的,touch 创建的文件仍然存在;但是此时f3因为是软连接,导致f3失效。如果删除f1,f2 ,那么touch 创佳的文件会被删除

linux下的符号链接文件相关推荐

  1. linux下的lib文件

     zz:http://ooplab.org/post/421.html 作者:曹江华 赛迪技术天地 随着Linux性能的不断提升和逐渐普及,会有越来越多的人在Linux下从事应用软件的开发.这里笔 ...

  2. 运维日记010 - Linux下的链接文件

    运维日记010 - Linux下的链接文件 几个基本概念 Linux下的链接文件可以分为硬链接(hard link)与软链接(soft link).要理解它们,必须先要理解几个基本概念. inode ...

  3. Linux下创建符号链接(软链接)

    Linux下创建符号链接(软链接) 一.硬链接 二.符号链接(软链接) 一.硬链接 硬链接是通过索引节点进行的链接.在Linux中,多个文件指向同一个索引节点是允许的,像这样的链接就是硬链接.硬链接只 ...

  4. linux+笔记:linux下判断一个文件或者目录是否存在

    工作中涉及到文件系统,有时候需要判断文件和目录是否存在,下面是一些前人的经验分享. 转自:http://blog.csdn.net/adcxf/article/details/6386901 转自:h ...

  5. linux下编译make文件报错“/bin/bash^M: 坏的解释器,使用grep快速定位代码位置

    一.linux下编译make文件报错"/bin/bash^M: 坏的解释器 参考文章:http://blog.csdn.net/liuqiyao_01/article/details/415 ...

  6. linux下删除乱码文件

    为什么80%的码农都做不了架构师?>>>    在linux下对于每个文件都一个对应的不变的inode号,使用 ls -li 可以查看到文件的inode号,同时find可以根据ino ...

  7. Linux下统计当前文件夹下的文件个数、目录个数

    这篇文章主要介绍了Linux下统计当前文件夹下的文件个数.目录个数,本文使用ls命令配合管理.grep命令实现统计需求,需要的朋友可以参考下 1) 统计当前文件夹下文件的个数 复制代码 代码如下: l ...

  8. linux 音频文件长度,Linux下压缩音频文件

    安装工具 sudo apt-get install lame 具体用法可以查看帮助  lame --help 通过更改音频文件的帧数 可以让文件变小  但是音质也会随之下降 现在比较多的mp3文件是1 ...

  9. (转载)linux下的find文件查找命令与grep文件内容查找命令

    linux下的find文件查找命令与grep文件内容查找命令 转载于和感谢:linux下的find文件查找命令与grep文件内容查找命令 目录 1.前言 1.1 find命令和grep命令的区别 2. ...

最新文章

  1. elementUI源码修改的爬坑之旅
  2. appium安装完成后运行和执行python脚本的错误合集
  3. Ice笔记--C++线程与并发(小结)
  4. scrapy使用笔记
  5. Flashback Data Archive(转)
  6. 腾讯 AI Lab 正式开源PocketFlow自动化深度学习模型压缩与加速框架
  7. 状态管理工具vuex的基本使用(vuebus的理解)
  8. 我的专业我的梦作文计算机,我的创新我的梦作文
  9. 基于智能手机Android平台音乐播放器全程开发实战
  10. 分计算iv值_筛选变量的指标—IV值
  11. linux脚本获取usb设备,Linux基于USB端口执行脚本
  12. 538.把二叉搜索树转换为累加树(结合自己的理解解释一下别人题解的递归部分)
  13. 随想录(从DO-178C和ARINC653想到的)
  14. 还没有合并再请求pull_代码被revert,你pull了master代码没了咋找回来
  15. python wxpython常用控件实例
  16. 易语言数字指令编程大全(发送信息代码数据集合)
  17. 国民感冒众生相,“微大夫”电磁脉冲预防+舒缓
  18. 贪心题集(vjoj)
  19. 关于元素定位使用class_name定位报错的部分问题Unable to locate element: {“method“:“css selector“
  20. u盘在电脑上读不出来?不一定是坏了

热门文章

  1. Linux可以用vs2019,使用visual studio 2019进行Linux系统编程
  2. COJ1981-小M的魔术表演
  3. L1-011 A-B(Python3)
  4. IDEA 手动设置HTTP代理(使用代理解决Translation 翻译失败)
  5. opencv矩阵乘法
  6. 日照市计算机硕士研究生招聘,我市公开招聘硕士研究生以上学历人才
  7. 软件缺陷智能分析技术(3) - 提升SZZ的准确率
  8. 7-58 求幂级数展开的部分和
  9. 奖补100万!2022年武汉市智能制造试点示范企业申报流程及条件梳理
  10. jq通过对象获取其ID值