CentOS创建软链接(符号链接)、硬链接和区别

一、创建软链接(符号链接)

查看ln --help:

命令:

bash 复制代码
ln -s 源 链接名

例如在/data目录下有个zulu8.84.0.15-ca-jdk8.0.442-linux_x64.tar.gz文件,我们为它创建软链接

bash 复制代码
ln -s /data/zulu8.84.0.15-ca-jdk8.0.442-linux_x64.tar.gz   /data/java8

删除软链接指向的目标文件(这个是为了测试一下软链接在源文件删除后什么表象)

bash 复制代码
 rm -rf zulu8.84.0.15-ca-jdk8.0.442-linux_x64.tar.gz

删除后,软链接失效了,在这变成了红色名字,如果目标文件被删除,软链接将变成"悬挂链接"(dangling link),即指向一个不存在的文件。

二、创建硬链接

硬链接就是ln不加-s默认就是硬链接

bash 复制代码
ln  /data/zulu8.84.0.15-ca-jdk8.0.442-linux_x64.tar.gz  /data/jdk8

此时可以看到它并不是软链接那种指向关系。

删除源文件,只保留jdk8这个硬链接

解压jdk8,仍然可以解压

硬链接是直接指向存储块的,也就是说源文件删除掉后这个硬链接还存在的话就可以进行操作(硬链接和原文件共享相同的 inode 和数据块)

三、注意

软链接可以跨文件系统。你可以在不同的磁盘分区之间创建指向目标的软链接。

硬链接只能在同一文件系统内创建,它不能跨越不同的磁盘分区或文件系统

相关推荐
21号 131 分钟前
4.应用层自定义协议与序列化
运维·服务器·网络
xx.ii2 小时前
4.Linux 应用程序的安装和管理
linux·服务器·网络
奋斗的蛋黄2 小时前
解析分区、挂载与块设备:Linux 存储管理核心命令详解
linux·服务器·网络
墨迹的陌离3 小时前
【Linux】重生之从零开始学习运维之Mysql
linux·运维·服务器·数据库·学习·mysql
Ray Song3 小时前
Linux DNS解析1--终端通过网关或者路由器进行域名解析的原理
linux·运维·服务器·dns解析
2025年一定要上岸3 小时前
【pytest高阶】源码的走读方法及插件hook
运维·前端·python·pytest
Zero .3 小时前
macbook安装homebrew
linux·运维·服务器
NEXU53 小时前
Linux:线程同步与线程互斥
linux
FJW0208144 小时前
负载均衡集群HAproxy
linux·服务器·云原生·负载均衡
云道轩4 小时前
使用Docker在Rocky Linux 9.5上在线部署LangFlow
linux·人工智能·docker·容器·langflow