硬链接创建:ln 文件名 硬链接名
删除:unlink 硬链接名/rm 硬链接名
软链接创建:ln -s 文件名 软链接名
删除:unlink 软链接名/rm 软链接名
区别:是否具有独立的inode
这是我们向log.txt写入点东西以后,会发现硬链接和log.txt文件大小会发生变化,但是软链接没有
💡结论:建立硬链接根本没有创建新文件!因为没有给硬链接分配独立的inode,既然没有创建文件,那么你一定没有自己的属性集合和内容集合,你用的一定是别人的inode和内容
显示数字2是因为inode里面有个引用计数,每有一个指向就会+1,所以所谓的文件删除是指他的硬链接数变为0
如果删除log.txt会发现硬链接可以正常访问,但是软链接却不可以了,所以软链接在标定一个文件的时候用的是文件名,软链接里面保存的是目标文件的路径,所以你删除就找不到了
我们只要在创建一下就又可以了,只不过是全新的文件罢了
并且log.txt的删除虽然影响了软链接,但是他的inode,文件属性等还是正常存在,这个软链接就相当于windows下的快捷方式
所以建立软链接以后就会方便很多,不需要把路径全部写完
硬链接的测试,在test5底下创建一个文件以后他的硬链接数字为2,这是为什么呢?
我们进入到dir目录下即可知道答案
并且linux不需要用户对目录创建硬链接