PhoneGap中文网

 找回密码
 立即注册
查看: 18544|回复: 0
打印 上一主题 下一主题

Linux软连接原理详解

[复制链接]

87

主题

87

帖子

327

积分

中级会员

Rank: 3Rank: 3

积分
327
跳转到指定楼层
楼主
发表于 2017-8-25 15:58:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文和大家分享的主要是linux中软连接相关内容,一起来看看吧,希望对大家学习linux有所帮助。
  软连接又称符号链接,最大用途为相对路径共享文件,优势如软件迁移到另外一块磁盘、分区或其他服务器。
  具体解析实例如下,在/app/hex/a6/b2/c3/下有文件share.function,现需在b1目录下创建软连接文件指向shre.function
  /app
  └── hex
  ├── a1
  │  ├── b1
  │  ├── c1
  │  └── c2
  ├── a2
  ├── a3
  ├── a4
  ├── a5
  └── a6
  ├── b2
  │  └── c3
  │      └── share.function
  └── b3
  做法如下:
  [root@CentOS7 ~]# cd  /app/hex/a6/b2/c3    # 先进入c3目录
  [root@centos7 c3]# ln -s 源文件 目标软连接文件:../../../a1/b1/ll.share.function
  先进入c3目录,然后在b1下创建的话,需先从c3进入b1并创建软连接的方法为../../../a1/b1/ll.share.function。具体路径为c3-b2-a6-hex-a1-b1-ll.share.function,说明目标软连接创建完成。
  软连接文件目前已经存在b1目录中,软连接如何回指相对路径,b1-a1-hex-a6-b2-c3-share.function,用..路径表示为../../a6/b2/c3/share.function
  整体方法为:
  [root@centos7 c3]# ln  -s  ../../a6/b2/c3/share.function  ../../../a1/b1/ll.share.function
  底层原理解析:
  不论在任何目录下都可以进行软连接的创建,只要当前路径通过..或其他方法找到目标路径,并在目标路径下创建软连接,然后软连接的所在的目录通过寻找路径的方法找到源文件,即实现软连接的创建和联通。
  程序软件共享时,必须用软连接共享,原因如下:
  1.  硬链接是元数据的一个备份,只能在同一分区中有效,因此如若部分软件迁移硬链接则无法找到另外分区中的block,导致无法实现数据共享;
  2.  软链接可以夸分区,只要在同一文件系统下则都可实软连接创建
  软连接与硬链接的区别:
  1.  软连接的权限是777,硬链接的权限和源文件权限一致;
  2.  硬链接不能跨分区,软连接可以跨分区(只要通过路径能相互找到即可);
  3.  硬链接不支持目录,而软链接可以支持目录;
  4.  创建硬链接后,源文件的链接数增加(指向块的数增加),软连接不会增加(软连接是指向源文件的元数据,而不是指向块)
来源: Linux公社

it营
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2024-4-26 18:34 , Processed in 0.043241 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表