Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1061365
  • 博文数量: 239
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 3618
  • 用 户 组: 普通用户
  • 注册时间: 2012-11-12 13:17
文章分类

全部博文(239)

文章存档

2021年(1)

2016年(1)

2015年(30)

2014年(91)

2013年(116)

分类: LINUX

2013-10-28 11:42:16

           在实际应用中硬链接和符号链接)很难区分,但它们的确是有区别的:硬链接,只能应用于文件,而不能应用于目录,而且不能跨文件系统(即分区);
符号链接可以应用于文件,而且可以应用于目录和可跨文件系统(分区);
这是它们在应用上的区别;
也就是说,创建硬链接有两个规定:
1.不允许给目录创建硬链接
2.只有在同一文件系统中的文件之间才能创建连接.

 
底层的区别:
当我们创建了一个文件的硬链接时,硬链接会使用和文件相同的inode号,此时我们发现,原来的文件的inode连接数由最初的1变为了2,实际上硬链接和文件使用了相同的inode,只不过是inode连接数增加了,删除文件不会影响硬链接,硬链接的inode数会从2变为1;


[root@portal01 test]# touch testlink
[root@portal01 test]# echo "goodbye,cruel world" > testlink 
[root@portal01 test]# ls -li
总用量 4
1308323 -rw-r--r--. 1 root root 20 10月 28 11:32 testlink
[root@portal01 test]# ln testlink htestlink
[root@portal01 test]# ls -li
总用量 8
1308323 -rw-r--r--. 2 root root 20 10月 28 11:32 htestlink
1308323 -rw-r--r--. 2 root root 20 10月 28 11:32 testlink
[root@portal01 test]# cat htestlink 
goodbye,cruel world
[root@portal01 test]# rm -rf testlink 
[root@portal01 test]# ls -li
总用量 4
1308323 -rw-r--r--. 1 root root 20 10月 28 11:32 htestlink
[root@portal01 test]# cat htestlink 
goodbye,cruel world
[root@portal01 test]# touch testlink
[root@portal01 test]# echo "goodbye,cruel world" > testlink 
[root@portal01 test]# cat testlink 
goodbye,cruel world

             而在创建文件的软链接时,软链接会使用一个新的inode,所以软链接的inode号和文件的inode号不同,软链接的inode里存放着指向文件的路径,删除文件,软链接也无法使用了,因为文件的路径不存在了;当我们再次创建这个文件时(文件名与之前的相同),软链接又会重新指向这个文件(inode号与之前的不同了),而硬链接不会受其影响
[root@portal01 test]# ln -s testlink stestlink
[root@portal01 test]# rm -rf testlink 
[root@portal01 test]# cat htestlink 
goodbye,cruel world
[root@portal01 test]# cat stestlink 
cat: stestlink: 没有那个文件或目录
[root@portal01 test]# touch testlink
[root@portal01 test]# echo "goodbye,cruel world again" > testlink 
[root@portal01 test]# cat htestlink 
goodbye,cruel world
[root@portal01 test]# cat stestlink 
goodbye,cruel world again
[root@portal01 test]# ls -li
总用量 8
1308323 -rw-r--r--. 1 root root 20 10月 28 11:32 htestlink
1308326 lrwxrwxrwx. 1 root root  8 10月 28 11:34 stestlink -> testlink
1308324 -rw-r--r--. 1 root root 26 10月 28 11:35 testlink
阅读(1585) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~