创建连接实质上就是给系统中已经存在的文件指定另外一个可以访问它的名称,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. Deep learning网络调参技巧

    参数初始化 下面几种方式,随便选一个,结果基本都差不多.但是一定要做.否则可能会减慢收敛速度,影响收敛结果,甚至造成Nan等一系列问题.n_in为网络的输入大小,n_out为网络的输出大小,n为n_i ...

  2. easyui datagrid client搜索、分页、排序

    easyui datagrid的排序默认是server端排序.能够用sorter实现client排序[2].client分页可用filter实现[3].client搜索相同能够用filter实现. 不 ...

  3. ng-options bug解决方案(示例)

    情况: 无法获取 ng-model 的值 解决方案: 绑定到对象的属性值上 1.页面 <ion-view hide-nav-bar="true"> <ion-co ...

  4. HDU 1003 Max Sum (动规)

    Max Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  5. Intel processor brand names-Xeon,Core,Pentium,Celeron----Atom

    http://en.wikipedia.org/wiki/Intel_atom Intel Atom From Wikipedia, the free encyclopedia   (Redirect ...

  6. saltstack源码安装

    环境 centos6.3,python2.7.5. 1.install libzmq-master $ git clone git://github.com/zeromq/libzmq.git $ c ...

  7. Linux下VLAN功能的实现 (转)

    1.Linux网络栈下两层实现 1.1简介     VLAN是网络栈的一个附加功能,且位于下两层.首先来学习Linux中网络栈下两层的实现,再去看如何把VLAN这个功能附加上去.下两层涉及到具体的硬件 ...

  8. Xammp修改端口

    How can I get XAMPP working on port 80 under Windows 10? By default, Windows 10 starts Microsoft IIS ...

  9. FFT用到的各种素数

    int MOD; inline int mul(int a, int b){ return (long long)a * b % MOD; } int power(int a, int b){ ; ) ...

  10. javascript常用事件及方法

    1.获取鼠标坐标,考虑滚动条拖动 var e = event || window.event; var scrollX = document.documentElement.scrollLeft || ...