软链接解决系统盘存储
1、什么是软链接?
软链接(Soft Link),又称为“调用链接”,是一种相对于原文件和目录的指向。软链接的实现通过一个特殊的文件,指向原始文件或目录,而不会占用额外的存储空间。它相对于确实链接(Hard Link),更加灵活和容易管理。
例如,在算家云平台中,软连接的应用场景为:
平台系统盘为30GB,不可扩容,当我们的项目中文件存储需大于30GB时,系统盘存储空间就无法满足需求。这时我们就可以用到软连接的方法进行解决:
(1)将项目中所占存储大文件夹或文件移动到数据盘(/root/sj-tmp/)下。
(2)通过软链接的方式将文件变动前后的路径链接起来。
这样,当程序访问代码路径时,就会按照已创建的软链接指向新路径。
---
2、软链接和确实链接的区别
(1)指向共性:
* 软链接是指向原文件路径的链接,如果原文件被删除,则软链接将失效。
* 确实链接是指向原文件存储块的链接,原文件删除也不会影响链接。
(2) 存储占用:
* 软链接不增加文件存储占用,只会保存链接文件路径。
* 确实链接会增加文件的确实链接记录。
(3) 跨文件系统:
* 软链接支持跨文件系统,可以在不同分区间创建链接。
* 确实链接不支持跨文件系统。
---
3、创建和管理软链接
(1)创建软链接
在 Linux 系统中,可以使用 ln -s 命令创建软链接。格式如下:
```
ln -s <目标文件/目录> <链接文件/目录>
#### 实例:
① 为文件创建软链接
``
ln -s /home/user/document.txt /home/user/shortcut.txt
shortcut.txt
这会创建一个变量 ,指向 document.txt。`
② 为目录创建软链接
`
ln -s /var/log /home/user/log_link
/var/log
这会创建目录链接,将 指向 log_link。
(2)查看软链接
可以使用 ls -l 命令查看链接文件是否成功建立:
``
ls -l <文件或目录>
软链接会显示引用的目标,如下:
``
lrwxrwxrwx 1 user user 14 Dec 27 10:00 shortcut.txt -> document.txt
(3)删除软链接
删除软链接与删除普通文件相同,可以使用 rm 命令:
``
rm <链接文件/目录>
注意:删除软链接将不会影响原文件或目录。
例
接着算家云平台上的例子,当我需要存储一个40G的 sjy文件,但系统盘存储不够时:
(1)通过 mv命名将 sjy文件移动到数据盘中
``
mv /sjy /root/sj-tmp/

(2)创建软链接将新、旧路径链接到一起
ln -s /root/sj-tmp/sjy /sjy
(3)查看是否链接成功:
``
ls -l
(4)删除软连接:
```
rm sjy