首页 > 系统服务 > 详细

linux--硬链接和软链接

时间:2021-06-02 21:26:08      阅读:19      评论:0      收藏:0      [点我收藏+]

ln命令:在文件之间建立链接

 

ln [选项] 源文件 目标文件
    选项:
     -s:建立软链接文件。如果不加-s,则建立硬链接文件
     -f:强制。如果目标文件已经存在,则删除目标文件后再建立链接文件

 

创建硬链接

 

如:touch ying
  ln /home/ying /tmp/
  #建立硬链接文件,目标文件没有写文件名,会和原名一直
  #也就是/home/ying 和/tmp/ying 是硬链接文件

 

技术分享图片

创建软链接

touch ruan
ln -s /home/ruan /tmp/
#建立软链接

技术分享图片

 

这里需要注意,软链接文件的源文件必须写成绝对路径,而不能写成相对路径(硬链接没有这样的要求);否则软链接文件会报错

硬链接详解

#代表系统用户,$代表当前用户

[root@VM-0-17-centos home]# touch test
#建立源文件
[root@VM-0-17-centos home]# ln /home/test /tmp/test-lianjie
#给源文件建立硬链接文件/tmp/test-lianjie
[root@VM-0-17-centos home]# ll -i /home/test /tmp/test-lianjie 
393820 -rw-r--r-- 2 root root 0 6月   2 19:13 /home/test
393820 -rw-r--r-- 2 root root 0 6月   2 19:13 /tmp/test-lianjie
#查看两个文件的详细信息,可以发现这连个文件的inode号是一样的

技术分享图片

 硬链接特点

  • 不论是修改源文件(test文件),还是修改硬链接文件(test-lianjie文件),另一个文件中的数据都会发生改变
  • 不论是删除源文件,还是删除硬链接文件,只要还有一个文件存在,这个文件(inode号是393820的文件)都可以被访问
  • 硬链接不会建立新的inode信息,也不会更改inode的总数
  • 硬链接不能跨文件系统(分区)建立,因为在不同的文件系统中,inode号是重新计算的
  • 硬链接不能链接目录,因为如果给目录建立硬链接,那么不仅目录本身需要重新建立,目录下所有的子文件,包括子目录中的所有子文件都需要建立硬链接,较复杂

 

          硬链接的限制比较多,既不能跨文件系统,也不能链接目录,而且源文件和硬链接文件之间除inode号是一样的之外,没有其他明显的特征。这些特征都使得硬链接并不常用

linux--硬链接和软链接

原文:https://www.cnblogs.com/u-damowang1/p/14842810.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!