在学习linux的过程中,我经常把软硬链接,所以今天专门查了一些资料,然后整合在自己的博客中,方便以后复习,查看。

一方面也是因为看了vamei的linux的概念与体系系列文章,感觉不全的做些补充。

软链接相当于windows中的快捷方式。硬链接相当于一个灾备系统,数据存放在两处,与复制不同的是两处之间存在同步机制,一处数据的改变会实时同步到另一处,另外,一处数据如果被删除了,不会影响到另一处的数据.

详细的介绍:

硬连接指向的是节点(inode),是已存在文件的另一个名字,修改其中一个,与其连接的文件同时被修改;对硬链接文件进行读写和删除操作时候,效果和软链接相同。但如果我们删除硬链接文件的源文件, 硬链接文件仍然存在,而且保留了原有的内容。这时,系统就“忘记”了它曾经是硬链接文件,而把他当成一个普通文件。 硬链接文件有两个限制: 1、不允许给目录创建硬链接;  2、只有在同一文件系统中的文件之间才能创建链接。

  软链接指向的是路径,又叫符号链接,这个文件包含了另一个文件的路径名可以是任意文件或目录,还可以链接不同文件系统的文件,和win下的快捷方式差不多。软链接文件甚至可以链接不存在的文件,这就产生一般称之为"断链"的问题(或曰“现象"),链接文件甚至可以循环链接自己,类似于编程语言中的递归。

示例:

  ln exitfile newfile

  ln -s exitfile newfile

这里的newfile为创建的链接名字,第一个没有参数,默认是硬链接,第二个 -s  表示是软链接。

ls -il  可以查看文件的inode号等属性,例如:

[root@server tmp]# touch file
[root@server tmp]# ln file file1
[root@server tmp]# ln -s file file2
[root@server tmp]# ls -il
total 0
27127 -rw-r--r--. 2 root root 0 Nov 20 10:40 file
27127 -rw-r--r--. 2 root root 0 Nov 20 10:40 file1
27132 lrwxrwxrwx. 1 root root 4 Nov 20 10:40 file2 -> file

在 /tmp 目录下,创建名为file的文件,先后创建硬链接file1,软链接file2.观察ls -il的输出

file 和 file1 的inode是一样的,所以可以说硬链接是指针指向同一个inode,系统并不为他重新分配inode。file2指向file,说明file2是软链接,inode号也发生变化,

若删除原始文件file,硬链接继续使用,但软链接就失效了。这点与win下的快捷方式类似。

这里需要强调的是,ls -l 命令输出中的第3个字段内容,此为inode链接数,只要不为0,对于硬链接来说,文件就一直存在,不管你删的是源文件还是之前生成的硬链接。

转载于:https://www.cnblogs.com/yaobai609/archive/2012/11/20/2778641.html

linux 硬链接和软链接相关推荐

  1. linux查看硬链接的对应文件,区分Linux硬链接与软链接

    在Linux中,连接文件有两种,一种类似于Windows的快捷方式,可以让你快速地链接到目标文件(或目录),这种称为软链接(soft link),也叫作符号链接(symbolic link):另一种则 ...

  2. linux硬链接与软链接

    详细文章链接:https://www.cnblogs.com/crazylqy/p/5821105.html (上面这个也是转载的!) 区别: 1.硬链接原文件/链接文件公用一个inode号,说明他们 ...

  3. Linux 硬链接和软链接的区别

    硬链接和软链接的区别 Linux 与其他类 UNIX 系统一样并不区分文件与目录:目录是记录了其他文件名的文件.我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user ...

  4. yfan.qiu linux硬链接与软链接

    http://www.cnblogs.com/yfanqiu/archive/2012/06/11/2545556.html Linux 系统中有软链接和硬链接两种特殊的"文件". ...

  5. Linux可以对目录进行硬链接,Linux硬链接与软链接原理及用法解析

    在linux系统中有种文件是链接文件,可以为解决文件的共享使用.链接的方式可以分为两种,一种是硬链接(hard link),另一种是软链接或者也称为符号链接(symbolic link). 硬链接概念 ...

  6. LINUX 硬链接与软链接的区别

    对于一个文件来说,有唯一的索引接点(inode)与之对应,而对于一个索引接点号,却可以有多个文件名与之对应.因此,在磁盘上的同一个文件可以通过不同的路径去访问该文件.注意在Linux下是一切皆文件的啊 ...

  7. linux硬连接脚本,linux 硬链接和软链接深入理解

    在学习linux的过程中,我经常把软硬链接,所以今天专门查了一些资料,然后整合在自己的博客中,方便以后复习,查看. 一方面也是因为看了vamei的linux的概念与体系系列文章,感觉不全的做些补充. ...

  8. Linux硬链接和软链接

    2019独角兽企业重金招聘Python工程师标准>>> 链接文件 1 软链接soft link 软链接(soft link)又叫符号链接(symbolic link),这个文件包含了 ...

  9. Linux 硬链接与软链接

    在 Linux 中,链接文件分为两种,一种类似于 Windows 的快捷方式,可以让你快速地链接到目标文件(或目录),这种称为软链接(soft link),也叫作符号链接(symbolic link) ...

最新文章

  1. 个人支付宝账号也可以做付款后自动发货发卡系统,附:源码+demo
  2. Cannot call sendRedirect() after the response has been committed解决方法
  3. kmeans中的k的含义_聚类分析:kmeans 算法簇个数的确定
  4. 安卓期末作品小项目_北京部编版八年级上册语文期末试卷
  5. 解决 nfs挂载错误wrong fs type, bad option, bad superblock
  6. android 启动一个应用,android 在一个应用中启动另一个应用
  7. python创建文件对象的函数_Python学习笔记之—— File(文件) 对象常用函数
  8. SpringSecurity OAuth2+JWT+网关实现认证授权中心
  9. STM32实现NRF24L01通信
  10. Android MeasureSpec的理解和源码的解析
  11. mysql 视图 过程 函数_MySql视图、存储过程、函数、索引
  12. 3.计蒜客ACM题库.A1597 结果填空:年龄
  13. 18.集合框架(Map集合,HashMap和Hashtable的区别,Collections(集合工具类),集合练习,模拟斗地主(洗牌,发牌,看牌))
  14. android内置sd卡挂载过程,Android获取机身存储、内置SD卡与外置TF卡路径
  15. 数据结构 Hash,哈希冲突,哈希聚集,BloomFilter,分布式一致性hash
  16. ProGuard使用说明
  17. 高含沙量测流这样操作,数据更精准
  18. TLM通信 — UVM
  19. 中学化学教学参考杂志社中学化学教学参考编辑部2022年第12期目录
  20. 软件设计师真题知识点(本人刷题笔记)

热门文章

  1. Winform开发框架之通用人员信息管理实现代码介绍
  2. PHP语法(3.)环境变量
  3. 分水岭算法分割图像的原理概述及OpenCV代码实现
  4. linux 防火墙开机启动项,Ubuntu 9.10下实现Firestarter网络防火墙自启动
  5. 如何在代码中让按钮高亮_如何在C代码中插入移位寄存器
  6. 如何让cxf客户端简单支持ssl
  7. mysql 存储过程执行慢_MySQL存储过程因为字符集不同导致执行慢
  8. linux存储--linux内存分配图(九)
  9. makefile编译_C++ Lesson 5:编译Makefile
  10. Angular6自定义指令实现多图片上传预览