linux文件夹ln,linux下如何ln建立文件/夹到另外一个文件/夹连接(软/硬链接&映射&快捷方式&ln命令用法)...

Linux连接分两种,一种被称为硬连接(Hard Link),另外一种被称为符号连接(Symbolic Link)。默认状况下,ln命令产生硬连接。node

【硬链接】

硬链接指经过索引节点来进行链接。在Linux的文件系统中,保存在磁盘分区中的文件无论是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。通常这种链接就是硬链接。硬链接的做用是容许一个文件拥有多个有效路径名,这样用户就能够创建硬链接到重要文件,以防止“误删”的功能。其缘由如上所述,由于对应该目录的索引节点有一个以上的链接。只删除一个链接并不影响索引节点自己和其它的链接,只有当最后一个链接被删除后,文件的数据块及目录的链接才会被释放。也就是说,文件真正删除的条件是与之相关的全部硬链接文件均被删除。oracle

【软链接】

另一种链接称之为符号链接(Symbolic Link),也叫软链接。软连接文件有相似于Windows的快捷方式。它其实是一个特殊的文件。在符号链接中,文件其实是一个文本文件,其中包含的有另外一文件的位置信息。测试

2.经过实验加深理解索引

touch f1          #建立一个测试文件f1 注意:touch更多时候是被用来修改文件时间 Hacker修改别人文件后喜欢用来隐藏本身的操做时间记录

ln f1 f2          #建立f1的一个硬链接文件f2

ln -s f1 f3       #建立f1的一个符号链接文件f3get

ls -li            # -i参数显示文件的inode节点信息

total 0

9797648 -rw-r--r--  2 oracle oinstall 0 Apr 21 08:11 f1

9797648 -rw-r--r--  2 oracle oinstall 0 Apr 21 08:11 f2

9797649 lrwxrwxrwx  1 oracle oinstall 2 Apr 21 08:11 f3 -> f1file

从上面的结果中能够看出,硬链接文件f2与原文件f1的inode节点相同,均为9797648,然而符号链接文件的inode节点不一样。

使用操做来说解软硬连接之间的关系总结

echo "I am f1 file" >>f1

cat f1

I am f1 file

cat f2

I am f1 file

cat f3

I am f1 file

rm -f f1

cat f2

I am f1 file

cat f3

cat: f3: No such file or directory数据

经过上面的测试能够看出:当删除原始文件f1后,硬链接f2不受影响,可是符号链接f1文件无效touch

3.总结

依此您能够作一些相关的测试,能够获得如下所有结论:

1).删除符号链接f3,对f1,f2无影响;

2).删除硬链接f2,对f1,f3也无影响;

3).删除原文件f1,对硬链接f2没有影响,致使符号链接f3失效;

4).同时删除原文件f1,硬链接f2,整个文件会真正的被删除。di

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值