链接命令: ln

链接分两种:
- 软链接 -s (soft)
- 硬链接
硬链接
特征:

请无视中间的vi命令,因为还没有学习vim
对于硬链接自己的理解备忘:
- 相同的硬连接文件指向同一片地址(inode一样),查询的block是一样的
- 修改其中一个文件,其实改的是地址所对应的内容,所以所有指向这地址的文件都”一起修改了”
- 删除其中某个不会影响其他文件的使用,因为地址的内存依然在
- 建立硬链接影响文件被引用的计数(+1)(该计数就是
ll看到的 文件权限命令后的那个数字) - 为什么会有引用计数呢?个人觉得正因为硬链接的inode跟block一样,所以可以通过计数来判断block是否还有引用,来决定是否删除数据(感觉像是gc,没有强引用了就代表可以回收了)
- 不推荐硬链接
软链接


理解备忘:
- 推荐使用
- 源文件删除后影响软链接的使用(就像失去源文件的快捷方式)
- 软链接拥有自己的inode和block,存的是指向源文件inode的信息,再通过源文件inode的信息找到内容,所以当源文件被删时,软链接也跟着失效了
- 修改软链接也同样影响硬链接以及源文件,反之亦然
- 软链接的文件类型是
l,并且它的权限跟随源文件,而并非是ll后所看到的那样! - 软链接要写绝对路径,默认会在当前文件目录下找,如果找不到就会报错!!(试了MacOS 它能找到 - -!)
软硬链接区别的个人理解:
硬链接就如我跟我妈,拥有相同的住址(inode)指向同一个block(我家),我装修了我家,我妈妈的家理所当然的跟着变了,我不见了(被删了)也不影响通过我妈找我家!
而软链接则像是我跟我的朋友的关系,他拥有自己的inode以及block,他可以用他们来找到我,然后通过我再找到我家(假设这里用的微博,朋友嘛告诉他家在哪里也正常,只不过他脑子不好,每次问完就忘记).有一天,他送给我了一份礼物,我放家里了,我妈回家也看得到(通过软链接修改,也影响其他的硬链接,其实改的就是我家!~).
有一天我没上网,也就上不了微博,我朋友找不到我了(我被删了),那么朋友也找不到我家了(源文件被删,软链接跟着失效了)
至于绝对路径,那就更好说啦!~比如我告诉我朋友我家在A村,但是全国这么多A村,他就懵b了…
纯属个人理解~