Linux 之 ln 硬链接和软链接

ln

语法

ln 命令用于创建链接,可以创建硬链接或符号链接。以下是 ln 命令的基本语法:

ln [OPTION]... TARGET LINK_NAME
  • TARGET:指定链接的目标文件或目标目录。
  • LINK_NAME:指定要创建的链接的名称。

常用选项包括:

  • -s, --symbolic:创建符号链接(软链接)。
  • -f, --force:如果链接已经存在,则先删除它。
  • -n, --no-dereference:将符号链接视为一般文件。
  • -v, --verbose:显示创建链接的详细信息。
硬链接和软链接的区别

在Linux系统中,硬链接和软链接(符号链接)是两种不同类型的链接方式,它们有一些重要的区别:

  1. 硬链接
    • 硬链接是文件系统中一个文件的多个名称,它们指向相同的inode(索引节点)。
    • 硬链接不能跨文件系统,因为它们依赖于相同的inode。
    • 当你删除原始文件,硬链接仍然可以访问文件的内容,因为文件的内容只有在所有硬链接都被删除后才会被释放。
    • 硬链接不能链接目录。
    • 修改任意硬链接文件,其他文件同样改变
  2. 软链接 (符号链接):
    • 软链接是一个特殊的文件,它包含指向另一个文件的路径。
    • 软链接可以跨文件系统,因为它们只是一个路径的引用。
    • 如果原始文件被删除,软链接将变为死链接(broken link),因为它指向的路径不再存在。
    • 软链接可以链接目录。

总的来说,硬链接是文件本身的另一个名称,而软链接是一个指向文件的路径。硬链接依赖于inode,而软链接只是一个指向目标文件的路径。

示例

创建符号链接/硬链接:

ln cc ccAgain :硬连接;删除一个,将仍能找到(除非删除掉了原文件和所有硬链接文件);修改任意硬链接文件,其他文件同样改变
ln -s cc ccTo :符号链接(软链接);类似window的创建快捷键,删除源,另一个无法使用;(后面一个ccTo 为新建的文件)
相关推荐
让开,我要吃人了1 分钟前
OpenHarmony技术开发:Launcher架构应用启动流程分析
linux·前端·华为·移动开发·harmonyos·鸿蒙·openharmony
妍妍的宝贝9 分钟前
MySQL高可用之MHA
linux·运维·服务器·数据库·mysql
Renhongzhou15 分钟前
Mysql 集群技术
运维·数据库·mysql·mha·mysql负载均衡
名字真难起6789016 分钟前
MySQL编译安装
linux·运维·数据库·mysql·centos
王鑫的博客88617 分钟前
嵌入式数据库
linux·c语言·开发语言·数据库
Mostcow1 小时前
文章_Linux运维_在非docker环境中编译安装docker
linux·运维·docker
lexc_1 小时前
Linux下数据库相关知识点及SQLite3相关知识,及cakkback回调函数
linux·数据库·sqlite
y.ki2 小时前
DHT11 实现温湿度传感器
linux·运维·网络
Java指南修炼2 小时前
一个多端阅读、功能完善的原创小说 CMS 系统,支持 PC 和 WAP 多端阅读平台、自动化爬虫、定制化模板、作家管理(附源码)
运维·爬虫·自动化
壹只菜鸟2 小时前
rsync搭建全网备份
linux·运维·服务器