创建连接实质上就是给系统中已经存在的文件指定另外一个可以访问它的名称,linux系统当中连接的创建有两种形式:硬链接(Hard Link),与符号链接(Symbloic Link)既软链接。

ln命令:

语法:ln [选项] 目标

参数 作用

-s 创建软链接(默认是硬链接)

-f 强制创建文件或者目录的连接

-i 覆盖前先询问

-v 显示创建连接的过程

硬链接:

将目录/app/linktest/file1 文件链接到目录/app/linktest/hardlink 文件,利用ls -l命令可以观察到文件连接数的变化。

[root@CentOS6 linktest]#ls -l
total 4
-rw-r--r--. 1 root root 8 Jul 22 15:35 file1
[root@CentOS6 ~]#ln /app/linktest/file1 /app/linktest/hardlink
[root@CentOS6 linktest]#ls -l
total 8
-rw-r--r--. 2 root root 8 Jul 22 15:35 file1
-rw-r--r--. 2 root root 8 Jul 22 15:35 hardlink

理解:

  1. 硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
  2. 硬链接的本质就是给源文件添加一个关联数据,硬链接的建立并不意味着一个新文件的建立,所以建立硬链接并不占用系统的节点编号。

    [root@CentOS6 linktest]#ls -i

    262146 file1 262146 hardlink
  3. 观察file1和hardlink文件可以看出来,两个文件的节点编号是相同,也就是说这两个文件实质上指向同一个文件数据,当修改其中一个文件的信息数据的同时互为硬链接的多个文件会发生相应的改变。
  4. 硬链接不能对目录建立,不能跨分区建立。

软链接:

在目录/app/linktest2目录下创建一个软链接文件softlink,使他指向目录/app/linktest下的file1文件。

[root@CentOS6 linktest2]#ln -s /app/linktest/file1  /app/linktest2/softlink
[root@CentOS6 linktest2]#ls -l
total 0
lrwxrwxrwx. 1 root root 19 Jul 22 16:34 softlink -> /app/linktest/file1

理解:

  1. 通过实验观察软链接文件的节点编号与源文件不同,软链接文件有自己的节点编号,所以软链接建立的同时意味着一个新文件的创建。
  2. 软链接这个文件的内容就是源文件的路径名。作用与windows系统中的快捷方式 相似。
  3. 软链接有自己的节点标号所以与硬链接不能作用于目录文件不同,软链接可以作用于目录文件,可以跨分区建立,也可以在不同的文件系统中建立。
  4. 软链接的内容是源文件的路径信息,所以如果删除源文件那么链接文件也会失去意义。然而删除软链接文件对于源文件是没有影响的。

linux软硬连接学习总结的更多相关文章

  1. Linux 软硬链接区别

    一.“硬链接“和“软链接“ 链接的概念:链接简单说实际上是一种文件共享的方式,是 POSIX 中的概念,主流文件系统都支持链接文件. 链接的作用:可以将链接简单地理解为 Windows 中常见的快捷方 ...

  2. 初始Linux软硬链接

    转载 https://blog.csdn.net/libaineu2004/article/details/85918682 用实践让你明白"软链接"和"硬链接" ...

  3. Linux软硬连接

     曾经对软硬连接一直搞不明白,关键是怕操作错误. 硬链接不能跨区实现连接,硬链接是对原始文件的镜像,同一个inode,软连接是快捷方式,inode保存的是快捷方式的.原始文件删除,导致软连接文件无效. ...

  4. linux 软硬链接

    1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引节点 ...

  5. Linux 软硬链接的区别及目录权限对软硬链接的影响

    目录权限的影响 首先,构建实验环境如下图: 有 A.B 两个目录,A 目录下建有 test 文件,且文件中的内容为 "Hello".B 目录下分别创建 test 文件的硬链接 te ...

  6. Linux 软硬链接详解

    软链接 软链接: 类似于windows的快捷方式,—>文本文件,但是包含了真实文件的地址               源文件删除,则软连接也删除               软链接可以放在任何文 ...

  7. linux软硬链接

    ln分为软链接和硬链接 1.软连接 -s   ln -s /mnt/hgfs/SHARE hvshare2 相当于在当前目录下新建一个名为hvshare2的快捷方式指向/mnt/hgfs/SHARE路 ...

  8. Linux - 软硬链接,hard link and symbolic link

  9. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

随机推荐

  1. How to Install a Language Pack

    https://www.phpbb.com/kb/article/how-to-install-a-language-pack

  2. 【转】Code Your Own PHP MVC Framework in 1 Hour

      原文: https://www.codeproject.com/Articles/1080626/Code-Your-Own-PHP-MVC-Framework-in-Hour --------- ...

  3. poj1870--Bee Breeding(模拟)

    题目链接:点击打开链接 题目大意:给出一个蜂窝,也就是有六边形组成,从内向外不断的循环(如图).给出两个数的值u,v按六边形的走法,由中心向六个角走.问由u到v的的最小步数. 首先处理处每个数的坐标, ...

  4. weex 小结

    1. import  文件时,必须引入全称,不能省略 .vue import mEcharts from '../components/Echarts.vue' 2.weex 的 cli 中没有 配置 ...

  5. C++ primer 模板与泛型编程

    继续浏览c++ primer 看到模板与泛型编程这章.就顺便把这几节的代码综合了下,对一个Queue队列模板的实现 贴一下代码(看完书.自己敲,忘记了哪再看下书) #include <ostre ...

  6. SQL Server故障转移集群

    在XenServer集群上给客户搭建一个应用服务,要求有负载均衡,Web服务器用Windows Server 2008 R2 + IIS,数据库Sql Server 2008 R2,并且使用SAN存储 ...

  7. 全卷积神经网络FCN理解

    论文地址:https://people.eecs.berkeley.edu/~jonlong/long_shelhamer_fcn.pdf 这篇论文使用全卷积神经网络来做语义上的图像分割,开创了这一领 ...

  8. Mysql整数运算NULL值处理注意点

    CleverCode近期在导出报表的时候,在整数做减法的时候,发现整数减去null得到是null.这是一个细节问题,希望大家以后注意. 1 表中的数据 total,used都是整形,同意为空. 2 有 ...

  9. 跨平台C++:(前言)正确打开C++的方式

    接触C++已经十五年了...但是对于C++而言,我至今是个门外汉,不是谦虚,而是确实不得其门而入. 历程是这样的—— 大学考研要考C++,就自学了.研没考上,C++算是学了,准确的说是C++的语法,以 ...

  10. 服务器返回JSON,IE出现下载问题

    我向来的观点,IE就是个奇葩. 服务器返回json,chrome处理得好地地,但IE却奇葩地向你请求是否要保存这个JSON文件? 之所以出现这种弱智现象,是因为IE无法识别一个所谓的响应头部:appl ...