linux下的链接文件,尤其是软链接使用非常的频繁;

链分为硬链接(hard link)与软链接(symbolic link) 两种;关键在于inode;

硬链接:

当系统需要读取一个文件时,就会去读取inode table, 然后再去根据 inode中的信息到志区域去把数据读取出来。 而硬链接是直接建立了一个指向文件位置块区域的一个inode。 不过几个限制:1)不能跨文件系统,因为不同的文件系统的inode table是不一样的;2)不能链接目录;

软链接:

跟硬链接不同,软链接建立了一个独立的文件,而这个文件的作用就是当读取这个链接文件时,它们转发到该文件所链接的文件上。它就相当于我们windows系统下的快捷键啊;很小的;

命令:ln

语法 ln [-s] [被链接文件] [链接文件]

ln的常用的选项为 -s, 当加上时,为软链接, 当不加时,为硬链接;

举例:

下面有两个文件:

yinheyi@yinheyi-Aspire-V5-471G:~/play$ ls -l
总用量 476
-rw-r--r-- 1 yinheyi yinheyi 306788 7月 27 22:19 caffeNet.ipynb
-rw-r--r-- 1 yinheyi yinheyi 179976 6月 1 21:09 googLeNet.ipynb

我们为 caffeNet.ipynb 文件分别建立硬链接与软链接;

yinheyi@yinheyi-Aspire-V5-471G:~/play$ ln caffeNet.ipynb caffeNet_硬链接.ipynb
yinheyi@yinheyi-Aspire-V5-471G:~/play$ ln -s caffeNet.ipynb caffeNet_软链接.ipynb

现来观察观察:

yinheyi@yinheyi-Aspire-V5-471G:~/play$ ls -l
总用量 776
-rw-r--r-- 2 yinheyi yinheyi 306788 7月 27 22:19 caffeNet.ipynb
lrwxrwxrwx 1 yinheyi yinheyi 14 7月 28 09:31 caffeNet_软链接.ipynb -> caffeNet.ipynb
-rw-r--r-- 2 yinheyi yinheyi 306788 7月 27 22:19 caffeNet_硬链接.ipynb
-rw-r--r-- 1 yinheyi yinheyi 179976 6月 1 21:09 googLeNet.ipynb

看到了什么?是不是软链接很小,就14K, 而硬链接的大小与原文件的大小相同,都为306788k;

完毕;

参考: http://www.apelearn.com/study_v2/chapter7.html#id10

Linux下硬链接与软链接的更多相关文章

  1. Linux 下硬链接和软链接的说明

    Linux 链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln 命令产生硬链接. 硬连接 硬连接指通过索引节点来进行连接.在 Li ...

  2. 理解 Linux 的硬链接与软链接(待研究)

    从 inode 了解 Linux 文件系统 硬链接与软链接是 Linux 文件系统中的一个重要概念,其涉及文件系统中的索引节点 (index node 又称 inode),而索引节点对象是 Linux ...

  3. Linux 的硬链接与软链接

    Linux 的硬链接与软链接    http://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/    若一个 inode 号对 ...

  4. 理解Linux的硬链接与软链接-转载

    理解Linux的硬链接与软链接 来自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/index.html

  5. Linux系统硬链接和软链接介绍

    1.链接的概念 在Linux系统中链接分为硬链接和软连接两种,一种为硬链接,另一种为软连接或符号链接(symbolic Link).ln命令就是创建链接文件的,在默认不带参数的情况下,执行ln命令创建 ...

  6. 转:理解 Linux 的硬链接与软链接

    Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程 创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键 ...

  7. 理解 Linux 的硬链接与软链接

    Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键盘 ...

  8. 理解 Linux 的硬链接与软链接【转】

    转自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/index.html 从 inode 了解 Linux 文件 ...

  9. 【Linux】Linux系统硬链接和软链接

    在linux系统中有种文件是链接文件,可以为解决文件的共享使用.链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(Symbolic Link). 查看lin ...

随机推荐

  1. 菜鸟学SSH(九)——Hibernate——Session之save()方法

    Session的save()方法用来将一个临时对象转变为持久化对象,也就是将一个新的实体保存到数据库中.通过save()将持久化对象保存到数据库需要经过以下步骤: 1,系统根据指定的ID生成策略,为临 ...

  2. python(46):对字典进行排序,多键值排序

    注:改于2017-12-07,python3 下 Removed dict.iteritems(), dict.iterkeys(), and dict.itervalues(). Instead: ...

  3. (转)Go和HTTPS

    转自:http://studygolang.com/articles/2946 Go和HTTPS  2015-04-30   bigwhite  阅读 5688 次   4 人喜欢  3 条评论  收 ...

  4. ffmpeg抓屏输出的设置

    之前做windows下抓屏输出时使用ffmpeg.exe作为抓屏输出测试,命令行如下: ffmpeg -f gdigrab -i "desktop" -r 25 -vcodec m ...

  5. Leetcode:Interleaving String 解题报告

    Interleaving StringGiven s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2. For ...

  6. KVM虚拟机的xml配置文件

    在RHEL6中,用于从磁盘启动的XML文件 这里以dcs01.xml为例: <domain type='kvm'><name>dcs01</name><uui ...

  7. lsblk命令

    lsblk命令用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息.块设备有硬盘,闪存盘,cd-ROM等等.lsblk命令包含在util-linux-ng包中,现 ...

  8. JAVA-JSP内置对象之session范围

    相关资料:<21天学通Java Web开发> session范围1.就是指客户浏览器与服务器一次会话范围内,如果和服务器断开连接,那么这个属性也就失效了.2.通过使用session的set ...

  9. iOS 检测网络状态 自动判断 认为提示网络改变

    检测网络状态 在网络应用中,需要对用户设备的网络状态进行实时监控,目的是让用户了解自己的网络状态,防止一些误会(比如怪应用无能)根据用户的网络状态进行智能处理,节省用户流量,提高用户体验WIFI\3G ...

  10. Eclipse C++的配置问题launch failed binary not found

    首先下载eclipse c++ 我的是64bit版本 安装好MinGW,并配置好环境变量,参考我的博客 http://www.cnblogs.com/fickleness/p/3273044.html ...