关于软硬链接那些事儿

       小编这周接触到了链接,那么重点来了,啥是链接呢关于软硬链接那些事儿关于软硬链接那些事儿小编觉得链接简单来说就是一种共享的方式,比如我们去逛超市,超市的入口就是‘链接’。在Linux中,链接又分为软连接和硬链接,想要了解他俩,就得先了解几个基本概念。

一:Inode

      我们知道文件包含数据和元数据,它的数据都存在block(“块”)中,那它的元数据,比如说它的文件类型、权限、时间戳、连接数等也需要地方存储呀,所以inode(中文索点)来了,他来存储文件的这些元数据。下面我们可以通过stat命令查看一个文件的inode信息

关于软硬链接那些事儿

这里我们查看了/etc/passwd文件的元数据信息。ls -l命令也会列出一些文件的元数据信息,如下图所示:

关于软硬链接那些事儿

由左至右分别为:权限、硬链接数、属主、属组、文件大小、最近更改时间、文件名)

其实最初当我们在安装虚拟机创建分区并创建文系统的时候,就已经在文件系统的固定区域保留了inode节点区。我们可以通过下面的df -i命令查看某文件系统inode节点区域的大小及使用情况:

关于软硬链接那些事儿

二:目录项

       虽然每个文件对应了唯一的inode号,但当文件经过我们删删改改之后,inode号就会变得杂乱无章,不利于我们的记忆。但我们人跟计算机不同,我们爱取名字,中华文化博大精深,家里的宠物什么的都不仅仅只有一个名字呢,关于软硬链接那些事儿所以我们给文件取了名字之后,再建立文件名跟inode号之间的对应,就引出了目录项这个概念,强大的Linux把所有的文件和目录构建成了一个倒立的树状结构,从根开始。所以我们只要确定了根目录的inode号,就可以掌控整个文件系统关于软硬链接那些事儿关于软硬链接那些事儿画个图来表达的更简单一些:

关于软硬链接那些事儿

三:硬链接

      一般情况下,文件名和inode号码是一一对应关系,每个inode号码对应一个文件名。但是当多个文件名指向同一个inode号的这种情况就被称为”硬链接”,小编觉得硬链接其实就是给现有的文件起了一个别名关于软硬链接那些事儿

【1】创建硬链接

命令:ln 源文件 硬链接文件

关于软硬链接那些事儿

2】硬链接具体作用如下:

1.节省硬盘空间。同样的文件,只需要维护硬连接关系,无需进行多重拷贝,大大节省硬盘空间。
2.重命名文件。重命名文件并不需要打开该文件,只需改动某个目录项的内容就可以了。
3.删除文件。删除文件只需将相应的目录项删除,该文件的链接数减1,如果删除目录项后该文件的链接数为零,这时系统才把真正的文件从磁盘上删除。
4.文件更新。先下载好一个新版本,然后修改里面同名文件的硬链接就行。

举例作用3小编觉得硬链接删除文件在这里还是有必要提一下的,毕竟它不是像别的文件那样删除一个就可以彻底删除的哦

关于软硬链接那些事儿

小编觉得我们可以把文件比作一个超市,那么硬链接就是他的后门,只有把前后门都关掉,超市才会停止运营,也就是我们的文件才被彻底删除,如下图所示(简单形象不关于软硬链接那些事儿

关于软硬链接那些事儿

3 硬链接特点 

1. 只能对已存在的文件进行创建,否则就是下图的no such file or directory!

关于软硬链接那些事儿

2. 不能交叉文件系统进行硬链接的创建

关于软硬链接那些事儿

3. 不能对目录进行创建,只能对文件创建硬链接

关于软硬链接那些事儿

4. 删除一个硬链接并不影响其他具有相同inode号的文件

 关于软硬链接那些事儿

  四:软链接(symbolic link)

      我们把软链接也称为符号链接,类似于Windows的快捷方式它不直接使用inode号作为文件指针,而是使用文件路径名作为指针。链接有自己的inode并在磁盘上有一小片空间存放路径名。因此,软链接能够跨文件系统,也可以和目录链接

【1】软连接原理:

关于软硬链接那些事儿

【2】创建软连接命令:ln -s 源文件 软链接文件

【3】软连接特点 

1. 软链接有自己的文件属性及权限等

关于软硬链接那些事儿

 2. 软链接可以对不存在的文件或目录创建

关于软硬链接那些事儿

3. 软链接可以交叉文件系统

关于软硬链接那些事儿

 5. 创建软链接时,链接计数不会增加

关于软硬链接那些事儿

 6. 删除软链接不会影响被指向的文件,但若指向的原文件被删除,则成死链接。

关于软硬链接那些事儿

       小编总结:软链接没有硬链接那么多的限制,因而现在更为广泛使用,它具有更大的灵活性,甚至可以跨越不同机器、不同网络对文件进行链接。但是软链接的缺点在于:因为链接文件包含有原文件的路径信息,所以当原文件从一个目录下移到其他目录中,再访问链接文件,系统就找不到了,而硬链接就没有这个缺陷,你想怎么移就怎么移关于软硬链接那些事儿好啦,以上就是小编讲的软硬链接那些事儿,讲的不好关于软硬链接那些事儿还望各位看官多多包涵。同时,你们也可以通过下方评论来指出小编的不足之处,来吧来吧,让暴风雨来的更猛烈一些吧!




原创文章,作者:Qianzhihe,如若转载,请注明出处:http://www.178linux.com/82074

(0)
QianzhiheQianzhihe
上一篇 2017-07-22 11:10
下一篇 2017-07-22 11:59

相关推荐

  • keepalived相关配置示例(二)

    虚拟服务器配置实验: 两台centos6主机为web service系统为CentOS6.8 n1:172.16.253.87 n2:172.16.252.5都安装httpd yum install -y httpd[root@n1 ~]#vim /var/www/html/index.html<h1>Real Server 1</h1&g…

    Linux干货 2017-06-28
  • 系统无法正常启动的解决之道

    先来看下配置文件的格式: [root@centos6 ~]# uname -r 2.6.32-642.el6.x86_64 [root@centos6 ~]# cat /boot/grub/grub.conf  # Note that you do&…

    Linux干货 2016-09-19
  • Linux用户、组和权限管理

    知识框架图 学习笔记 用户和组 UID root:0 系统用户:1-499、1-999 普通用户:500+、1000+ GID 管理员组:0 系统组:1-499、1-999 普通组:500+、1000+ 安全上下文 进程:运行中的程序 进程所能访问资源的权限取决于进程运行用户本身 组的类别 主要组 用户有且只能有一个主要组 组名=用户名,组中只能有一个用户 …

    2018-03-17
  • 第一次测试

    1.第一层  video  视频 2.第二层  audio  音频 3.第三层  字幕 查看视频详细信息 ffmpeg -i 视频文件 转码修改视频格式 ffmpeg -i 输入文件   输出文件格式 视频文件中提取音频和视频 提取视频中的音频 ffmpeg -i CP0454900262.ts -…

    Linux干货 2017-02-06
  • 软件包管理器之二——YUM介绍及使用

    一、前言     之前我们介绍了RPM的应用(详细请查看http://www.178linux.com/archives/6383),发觉RPM安装软件有一个很繁琐的问题,那就是包与包之间的依赖关系,如果想正常安装和使用软件程序,就必须根据要求一步一步的解决软件之间的依赖关系。那么如果程序使用的包很多,将会很消耗使用人…

    Linux干货 2015-07-21
  • 磁盘管理(三)逻辑卷快照

      概述:逻辑卷管理(LVM)提供了为任何逻辑卷作一个快照的功能,目的是在一致的状态下来得到一个文件系统的备份.因为在备份过程中,应用程序可能访问一个分区的文件或者数据库.一些文件可能在一个状态被备份,而后面的文件可能在一个更新后被备份,导致备份的不完整 .传统的解决方法是以只读的方式挂载一个分区,对数据库应用表级锁或者关闭数据库的引擎等;所有的措…

    Linux干货 2016-09-05