参考:中国大学MOOC课程《Linux系统管理》,授课教师:颜晨阳。

推荐阅读: t.cn/RLXkhpc

1 符号(symbolic)链接

与Windows的快捷方式很像,这些文件很小,仅提供指向实际文件的通道。

创建符号链接,使用ln (link)命令:$ ln -s [链接指向的文件][链接名]

第一个参数:源文件,即链接指向的文件

第二个参数:要创建的链接文件名

可以通过符号链接文件来读、写和执行文件,但符号链接文件与源文件是完全不同的两个文件,二者的属性不同。符号链接应用灵活,可以为任意文件创建符号链接。

2 硬链接

2.1 文件存储方式

在Linux中,当划分磁盘分区并格式化时,整个分区会被划分为2部分,即Inode区和Data Block区。inode是index node的缩写,即索引节点。Linux的每个文件都被分成2部分存放:文件的唯一标识——inode-number和属性信息,放在Inode区的一个inode中,inode-number和inode是一一对应的;文件的实际数据放在Data Block区中。需要通过文件的inode来找到存放文件数据的data block。

在一个硬盘分区中,不可能有两个文件共用一个inode,因此两个文件的inode-number不可能是一样的。查看文件的inode-number:\$ ls -i

第一个属性就是inode-number。如果将硬盘分区中所有的文件比作一本书,inode区就是其目录,Data Block区就是其内容,我们必须通过目录来找到具体内容。

Linux中目录是一张表,每个表项都代表了一个文件,目录中有多少文件,这张表中就有多少表项。

每个表项包含了两样数据:一是文件名,二是文件的inode-number。因此,Linux中存取文件的过程就是,通过文件名找到对应的inode-number,然后找到文件的inode,最后找到文件的数据。

2.2 硬链接

在目录中让inode-number对应多个文件名,文件inode和数据还是一份(同一个文件),只是文件多出来一个名字,这个名字被称为硬链接。

创建硬链接:\$ ln [链接指向的文件][链接名]

删除源文件后,相当于删除了一个文件名,文件数据还可以通过其他文件名(硬链接)进行访问。

注意

1)不建议为目录创建硬链接,容易造成目录遍历死循环。详见 c2.com/cgi/wiki?HardLink

2)不能跨硬盘分区创建硬链接。因为在不同的硬盘分区中,文件的inode-number不唯一。详见 t.cn/RLXkhpc

转载本文请联系原作者获取授权,同时请注明本文来自刘洋洋科学网博客。

链接地址:http://blog.sciencenet.cn/blog-3031432-1074556.html

上一篇:Linux:拷贝、移动、删除、创建文件

下一篇:Linux:打包和压缩文件

linux中硬链接文件,科学网—Linux:文件的符号链接和硬链接 - 刘洋洋的博文相关推荐

  1. linux中常用名词解释,科学网—linux中常见名词解释 - 武海丹的博文

    Shell:是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行.实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核.(当用户发出 ...

  2. Linux中autoduck批量对接,科学网—用AutoDock进行分子对接教程——半柔性对接 - 杜文义的博文...

    以下所有内容均属于个人学习过程中的总结,如有错误,欢迎批评指正! Autodock分子对接教程 First release:2017-12-20  Last update: 2018-07-24 Au ...

  3. linux中怎么卸载gamit,科学网—Windows下自带Linux使用GAMIT问题 - 陈超的博文

    1.安装略微变化 sudo apt-get update sudo apt-get install gcc sudo apt-get install gfortran sudo apt-get ins ...

  4. charmm在Linux中的使用方法,科学网—Gromacs中添加CHARMM力场 - 贾壮的博文

    CHARMM力场提供了很多生物分子的力场参数,如蛋白质.脂质.核酸等,Gromacs中自带了CHARMM27力场,当然也可在Gromacs官网上下载到已转换成Gromacs支持的CHARMM36力场. ...

  5. 如何在Linux中使用sFTP上传或下载文件与文件夹

    如何在Linux中使用sFTP上传或下载文件与文件夹 sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似. 然而,sFTP 比 FTP 更安全;它通过 ...

  6. linux使用grep查找文件内容,Linux中使用grep命令搜索文件名及文件内容的方法

    这篇文章主要介绍了Linux中使用grep命令搜索文件名及文件内容的方法,同时文中还介绍了将匹配结果高亮显示的方法,相当实用,需要的朋友可以参考下 从文件中搜索并显示文件名 当从多个文件中搜索时,默认 ...

  7. Linux下dislocate命令用法,在 Linux 中遨游手册页的海洋 | Linux 中国

    原标题:在 Linux 中遨游手册页的海洋 | Linux 中国 Linux 系统上的手册页可以做的不仅仅是提供特定命令的信息.它们可以帮助你发现你没有意识到的命令. https://linux.cn ...

  8. linux vi 移动光标,linux中vi命令的光标移动操作linux网页制作 -电脑资料

    分享一篇关于linux中vi命令的光标移动操作的文章,有需要的朋友可以参考一下, 全屏幕文本编辑器中, 光标的移动操作无疑是最经常使用的操作了.用户只有熟练地使用移动光标的这些命令,才能迅速准确地到达 ...

  9. linux中wine文件夹在哪,科学网—Linux下wine的安装和使用以及CAJviewer的安装 - 苗玉虎的博文...

    最近突然想使用caj软件看文献,发现linux不支持,so百度一下如何安装,搜到好多,但很多都很乱,遂记下自己的心路历程,以示记载,或许时间久了忘记,留个备份吧,也希望对他人有帮助. 下载好CAJvi ...

最新文章

  1. RHEL6搭建本地yum源
  2. 李宏毅机器学习课程3~~~梯度下降法
  3. C语言之strstr函数
  4. bpython_Python机器学习(入门)
  5. PaddlePaddle线性回归示例
  6. android小球移动代码,Android中如何绘制一个跟随手指移动的小球
  7. GB28181之H264打包PS
  8. Smarty 获取当前日期时间和格式化日期时间
  9. vins 解读_VINS 中的 IMU 预积分推导和代码解读
  10. Java软件工程师职业规划
  11. Theano介绍及简单应用
  12. 单片机学习入门一 学习概述
  13. 华御上网行为管理FAQ
  14. linux proc 目录清理_/proc目录造成linux根目录爆满
  15. 解决Chrome无法显示本地的.vtt字幕文件 (如何让本地HTML运行在Server上)
  16. 出现“你的Windows许可证即将过期”提示
  17. Delphi的线程类
  18. mac浏览器打不开java_苹果电脑Mac打不开网页怎么办?Mac打不开网页的解决方法...
  19. Python日期抽取——df_dt.dt.weekday与df_dt.weekday()的区别
  20. 信号能量密度公式_信号理论(总结)..ppt

热门文章

  1. varchar汉字占几个字符_常用字符编码介绍
  2. 在线作图|FAPROTAX数据库在线注释
  3. R语言绘制简单行程图
  4. 上传数据,直接分析,这才是真正的生物云
  5. Nature综述:古菌的多样性、生态功能和进化史
  6. 微生物组-宏基因组分析第8期(报名直播课免费参加线下2020.7,早鸟价仅剩1周)...
  7. R最快且比dplyr最高效的大数据处理R包:tidyfst
  8. 中国肠道大会 | 日程及嘉宾(4月16日更新)
  9. FM:大熊猫的肠道菌群可能并没有特化出发酵纤维素的能力
  10. 计算机软件打开为什么跑一边,为什么打开Excel后开始菜单就跑掉了?