链接文件:ln

链接分为硬链接以及符号链接(也可叫做软链接)。
两种链接实现机理不同,因此要求与效果也都不同

1. 硬链接(Hard Link)

  • 原理简介
    a. 每个文件都会占用一个 inode,文件内容由 indoe 的记录来指向
    b. 想要读取文件的实际内容,必须要经过目录所记录的文件名来指向到正确的 inode 号码,再通过 inode 记录的 block 信息,找到文件存储的实际内容
    c. 文件名只与目录有关,但是文件的内容却与 indoe 相关
    => 那么硬链接就是多个文件名关联到同一个 inode 号码
    => 简单地讲,硬链接就是在某个目录下新建了一个文件名,并将该文件名与某个 inode 号码关联,仅此而已
    =>由于两个文件名指向的其实是同一个文件,那么这两个文件名除了名字不同,其他所有属性、内容都一模一样

  • 查看方式

[root@localhost ~]# ll aaa                      # 注意观察列表的第二列,此列展示的是多少个文件指向与其相同的 inode,此时该列为‘1’
-rw-r--r--. 1 root root 0 5月  15 06:43 aaa
[root@localhost ~]# ln aaa aaa-hard             # 建立 aaa-hard,使其指向 aaa 文件的 inode
[root@localhost ~]# ll -i
总用量 0
67914933 -rw-r--r--. 2 root root 0 5月  15 06:43 aaa     
67914933 -rw-r--r--. 2 root root 0 5月  15 06:43 aaa-hard    # 看!两者使用了相同的 indoe,而且第二列的值变为了‘2’
  • 作用
    可能是“安全”吧。如果两个文件名指向同一个 inode,删掉任意一个文件名,都不影响 inode 及另一个文件名

  • 限制
    a. 硬链接不能跨越文件系统
    原理简介部分已经说明,硬链接的核心是两个文件 inode 相同。但是不同的文件系统的 inode 几乎是完全不同的,那么也就不可能跨越文件系统建立硬链接。

    b. 硬链接仅能作用于文件,不能作用于目录
    目录的硬链接不仅仅是目录之间进行硬链接,目录下的子目录、子文件都需要进行硬链接,工程浩大、复杂。
    所以 Linux 不让用户进行目录的硬链接,但她自己其实已经为所有目录做了硬链接。不信?我们来看看!

[root@localhost ~]# ll -id /root/
67165921 dr-xr-x---. 3 root root 4096 5月  15 06:43 /root/    # 咦?/root/所用的 67165921 竟然链接有3个文件名

[root@localhost ~]# ll -id /root/. /root/.ssh/..
67165921 dr-xr-x---. 3 root root 4096 5月  15 06:43 /root/.               # 一个是该目录下的 .
67165921 dr-xr-x---. 3 root root 4096 5月  15 06:43 /root/.ssh/..         # 另一个是该目录的子目录下的 ..

## 可以得出规律:一个目录下的链接数减去1,就等于其下1级子目录的个数
  • 用法
    ln <so_file> <dst_file>
    如:ln /etc/passwd /root/mima.txt

    ps. <dst_file>不一定必须存在。如果不存在,ln命令会自动新建

2. 符号链接(Symbolic Link)

  • 原理简介
    相比硬链接,符号链接就简单了许多。软链接将一个文件名链接至另一个文件名。那么当对这个文件名进行操作时,实际上是操作其所软链接的文件名。其实就像是 Windows 下的“快捷方式”

  • 特点
    a. 源文件被删除后,软链接文件会失效
    b. 不仅能对文件进行软链接,也能对目录进行软链接
    c. 可以跨文件系统使用
    d. 软链接文件与源文件是两个完全不同的文件,而该文件的大小其实取决于指定链接时输入的源文件名字的长度,看一下下面的例子

[root@localhost ~]# touch a
[root@localhost ~]# ln -s a a-link-short;ln -s /root/a a-link-long;ll   # 用两种文件写法来做链接
总用量 0
-rw-r--r--. 1 root root 0 5月  15 07:30 a
lrwxrwxrwx. 1 root root 7 5月  15 07:31 a-link-long -> /root/a          # 明明是链接到同一个文件,为何文件大小不同?
lrwxrwxrwx. 1 root root 1 5月  15 07:31 a-link-short -> a

## 软链接的文件大小,主要看指定链接时使用的源文件名字或路径的长度
  • 用法
    ln -s <so_file> <dst_file>
    如:ln -s /etc/passwd /root/mima.txt

    ps. <dst_file>不一定必须存在。如果不存在,ln命令会自动新建

  • 注意点
    a. 如果文件做了软链接,那么当你在对软链接文件的内容进行操作时,其实是在对源文件进行操作
    b. 如果目录做了软链接,那么当你在对软链接目录的内容(也就是目录中的文件)进行操作时,其实是在对源目中的文件进行操作,所以要切记小心。
    c. 做软链接尽量使用绝对路径,不然会加大链接失效的概率
  • 实际案例

问题
如果某个分区快满了,该分区中有一些大文件,且经常被访问。这时硬盘上还有一个较为空闲的分区。
请问如何处理才能够在缓解容量的同时不影响用户的正常使用?

解法
a. 在空闲分区建立新的目录;
b. 将大文件 file-1 转移至新建的目录(推荐使用 rsync,因为其支持增量备份);
c. 在旧目录中新建与原文件同名的文件(file-1),并软链接至真实的 file-1文件;

(The End)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容