Linux 软连接和硬连接的区别

简介:

Linux中有软连接和硬连接,他们之间的区别,今天简单说一下:

软连接:类似于Windows中的快捷方式,访问软连接实际上访问的是实际的文件。
比方说我们创建一个软连接:

1
2
#-s参数说明是软连接
ln  -s  test  test .soft

145636295.png

硬连接:相当于对原文件的一个copy+同步更新

然后我们再创建一个硬连接:

1
ln  test  test .hard

我们向原始文件追加一点内容:

150109803.png

可以看到软连接文件内容发生了变化,很容易理解,因为是同一个文件,硬连接文件也同步更新了,那么他原理是什么呢?

在Linux中,系统识别每个文件都是靠节点号来识别,而不是靠文件名。那么我们来看一下以上文件的节点号分别是多少:

150345934.png

可以看到硬连接的节点号和原文件相同,所以更新的时候会一起更新,但是软连接的却不一样。

那么如果我们删除原始文件呢?

150545908.png

软连接已不能访问了,这个显而易见,但是硬连接依然可以访问,这也是一个不同点。

我们在对一个比较老的文件创建连接:

1
2
jane@Jane:~ /test $  ln  -s  /etc/issue  issue.soft
jane@Jane:~ /test $  ln   /etc/issue  issue.hard

151157674.png

可以看到硬连接创建的文件和原文件时间是一样的,而软连接则不一样。


另外一个值得注意的地方是:

软连接可以跨分区创建,但是硬连接不可以,只能在本分区创建。






















本文转自shayang8851CTO博客,原文链接: http://blog.51cto.com/janephp/1333956 ,如需转载请自行联系原作者
相关文章
|
Linux
linux syscall和int 80的区别
通过以上内容,希望您能更清晰地理解 `int 0x80` 和 `syscall` 的区别及其在不同系统架构中的应用。
1287 99
|
安全 Linux 应用服务中间件
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
|
Linux 索引
在Linux中,符号链接与硬链接有何区别?
在Linux中,符号链接与硬链接有何区别?
|
存储 Ubuntu 安全
Linux中Centos和Ubuntu的区别
CentOS主要面向服务器环境,而Ubuntu适用于服务器和桌面环境。   CentOS提供更精简的安装,而Ubuntu提供更广泛的开箱即用功能。   CentOS遵循RHEL的所有安全实践,而Ubuntu在安全方面采取更积极的方法。
|
Ubuntu 安全 Unix
Linux和Ubuntu有什么区别
综上所述,Linux和Ubuntu之间存在明显的区别。Linux是一种操作系统内核,而Ubuntu是基于Linux内核的发行版本,具有更好的易用性、社区支持和软件仓库。用户可以根据自己的需求选择不同的Linux发行版本,如果需要一个稳定、易于使用的桌面环境,Ubuntu是一个不错的选择。如果需要更加灵活和定制性强的系统,其他Linux发行版本可能更加适合。
|
安全 Unix Java
linux中kill -9和kill -15区别
在 Linux/Unix 系统中,`kill -9` 和 `kill -15` 是终止进程的常用命令,核心区别在于发送的信号类型不同,导致进程终止行为截然不同。`kill -15`(SIGTERM)允许进程进行清理操作后优雅退出,适用于正常关闭;而 `kill -9`(SIGKILL)则强制终止进程,不给予任何清理机会,仅在进程无响应时使用。本文从信号类型、行为、工作原理及使用建议等方面进行详细对比,帮助你更安全、有效地管理进程。
1811 0
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
1919 25
|
Linux Android开发 开发者
linux m、mm、mmm函数和make的区别
通过理解和合理使用这些命令,可以更高效地进行项目构建和管理,特别是在复杂的 Android 开发环境中。
1230 18
|
Linux 文件存储 Windows
linux软连接详解!!!
本文介绍了Linux文件类型、文件属性、文件存储机制以及软链接和硬链接的概念。主要内容包括:Linux文件类型及其识别方法、文件属性的组成及查看方式、inode和block的作用、软链接和硬链接的区别及应用场景。通过具体示例,帮助读者理解Linux文件系统的运作原理。
1145 2
linux软连接详解!!!