

linux之软连接和硬连接的区别
source link: https://blog.51cto.com/u_12214037/5260200
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

linux之软连接和硬连接的区别
原创硬链接是通过索引节点进行的链接。在Linux中,多个文件指向同一个索引节点是允许的,像这样的链接就是硬链接。硬链接只能在同一文件系统中的文件之间进行链接,不能对目录进行创建。如果删除硬链接对应的源文件,则硬链接文件仍然存在,而且保存了原有的内容,这样可以起到防止因为误操作而错误删除文件的作用。由于硬链接是有着相同 inode 号仅文件名不同的文件,因此,删除一个硬链接文件并不影响其他有相同 inode 号的文件。
- 通过
ln rumenz.txt rumenz123.txt
创建 - 不能对目录进行创建硬链接,只可对文件创建。
- 以文件副本的形式存在,但不占用实际空间。
- 文件名有相同的 inode 及 data block。
- 只有在同一个文件系统中才能创建,不能交叉文件系统进行硬链接的创建。
- 删除其中一个硬链接文件并不影响其他有相同inode号的文件。
- 只能对已存在的文件进行创建。
用于镜像数据文件,防止误删
软链接(也叫符号链接)与硬链接不同,文件用户数据块中存放的内容是另一文件的路径名的指向。软链接就是一个普通文件,只是数据块内容有点特殊。软链接可对文件或目录创建。
软链接主要应用于以下两个方面:一是方便管理,例如可以把一个复杂路径下的文件链接到一个简单路径下方便用户访问;另一方面就是解决文件系统磁盘空间不足的情况。例如某个文件文件系统空间已经用完了,但是现在必须在该文件系统下创建一个新的目录并存储大量的文件,那么可以把另一个剩余空间较多的文件系统中的目录链接到该文件系统中,这样就可以很好的解决空间不足问题。删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接就变成了死链接。
ln -s rumenz.txt rumenz123.txt
- 是存放另一个文件的路径的形式存在。
- 可交叉文件系统创建 ,硬链接不可以。
- 可以对目录进行链接。
- 有自己的文件属性及权限等。
- 可对不存在的文件或目录创建软链接。
- 软链接可对文件或目录创建。
- 创建软链接时,链接计数 i_nlink 不会增加。
- 删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接被称为死链接(即 dangling link,若被指向路径文件被重新创建,死链接可恢复为正常的软链接)。
无论是硬链接或软链接都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。
- 便于文件管理,将复杂路径下的文件链接到简单路径下访问。
- 解决某个目录空间不足问题。
怎么查看一个文件的硬连接文件
> ls -il
total 8
1806727 -rw-r--r-- 2 root root 137 May 6 20:14 one.txt
1806727 -rw-r--r-- 2 root root 137 May 6 20:14 tow.txt
硬连接文件的
inode number
是一样的.可以看出由于one.txt
和tow.txt
互为硬链接, 所以他们的inode number
相同.
> find / -inum 1806727
查看整个文件系统中有哪些文件是
one.txt
的硬连接.
怎么查看一个文件的软连接
> find -type l -exec ls -l {} \;| grep 'rumenz.txt'
知道一个软连接文件,怎么找到该文件的真实路径
// realpath 软连接文件
> realpath /etc/rc.local
/etc/rc.d/rc.local
原文链接: https://rumenz.com/rumenbiji/linux-soft-hard-link.html
微信公众号:入门小站
- 回复【1001】获取 linux常用命令速查手册
- 回复【10010】获取 阿里云ECS运维Linux系统诊断
- 回复【10012】获取 Linux学习笔记【强悍总结值得一看】
- 回复【10013】获取 shell简明教程
Recommend
-
48
“换工作直接和老板谈”直聘平台到底靠不靠谱?
-
109
相比传统冷冰冰投递简历的求职方式,聊天直聘真的更有温度?
-
29
-
53
可能很多 Java 程序员对 TCP 的理解只有一个三次握手,四次挥手的认识,我觉得这样的原因主要在于 TCP 协议本身稍微有点抽象(相比较于应用层的 HTTP 协议);其次,非框架开发者不太需要接触到 TCP 的一些细节。
-
23
-
15
首先,我们要清楚符号链接的目的,在不改变原目录/文件的前提下,起一个方便的别名(在这起个别名,让我想到前阶段学C里typedef也是起别名的)。 1. 软连接就相当于windows的快捷方式 。 ...
-
7
ETF、ETF联接和 LOF 的区别 ETF、ETF联接和 LOF 都是指数基金的一种形式。 通常,指数基金的形式主要有5种:普通的场外基金、ETF、ETF联接基金、LOF、分级母基金。 普通的场外基金是比较常见的,占比也较高,是最传统的指数基金。可以...
-
6
彻底明白Linux硬链接和软链接-51CTO.COM 彻底明白Linux硬链接和软链接 2022-02-28 09:44:09 在Linux系统下,有两种链接文件,一种是硬链接(Hard Link),一种是软链接,也称为符号链接(Symbol...
-
5
硬链接和软链接有什么区别? 2022-02-27 | 阅读:14次
-
4
Linux 中的 ln 命令:创建软链接和硬链接 作者:刘光录 2022-10-21 08:18:54 硬链接和软链接都是使用 ln 命令创建的,本文将会介绍如何使用 ln 命令在 Linux 中创建多种类型的链接。 链接是对另一个文件...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK