zoukankan      html  css  js  c++  java
  • Linux下硬链接与软链接

    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

  • 相关阅读:
    glog下载、安装、使用
    VS所需插件
    Qt 实现动态调整流程指令顺序(通过鼠标事件实现)
    QComboBox实现复选框功能
    QString string char* int互相转化
    Qt 滚动区域显示下拉框
    模式对话框,非模式对话框,reject和accept()槽函数确定对话框的返回值
    QT递归搜索文件(entryList)
    QT中foreach的使用
    Qstring格式化字符串
  • 原文地址:https://www.cnblogs.com/yinheyi/p/7248507.html
Copyright © 2011-2022 走看看