Linux ln 命令
ln
命令是用于创建硬链接和符号链接的 Linux 命令。硬链接和符号链接都是指向一个文件的引用,但是它们的实现机制不同。使用 ln
命令可以创建硬链接和符号链接,也可以更新和删除链接。
硬链接
硬链接是指向已存在的节点(即 inode)的另一个文件名。它们实际上与原文件指向相同的数据块。当源文件删除后,硬链接仍然可以访问它们所指向的数据块。
创建一个硬链接:
ln source_file hard_link_name
表示将 source_file
文件作为硬链接命名为 hard_link_name
。
例如,将文件 /home/user1/file1
创建一个硬链接到 /home/user2/linkfile
:
ln /home/user1/file1 /home/user2/linkfile
符号链接
符号链接,也称为软链接(软连接)或“快捷方式”,实际上是一个指向另一个文件或目录的特殊文件。它保存了指向原始文件或目录的路径,并与其所指向的文件或目录的节点具有不同的节点。当原始文件或目录删除后,符号链接就变成了“死链接”。
创建一个符号链接:
ln -s source_file symbolic_link_name
表示将 source_file
文件作为符号链接,命名为 symbolic_link_name
。
例如,将文件 /home/user1/file1
创建为符号链接 /home/user2/linkfile
:
ln -s /home/user1/file1 /home/user2/linkfile
其他常用参数
-i
:在创建链接之前,先提示用户是否覆盖已经存在的链接。-f
:强制创建,为已存在的链接进行更新。-v
:在进行创建链接时显示详细的提示信息。
例如,在更新一个符号链接时使用 -f
参数:
ln -sf /home/user1/file_new /home/user2/linkfile
这将强制将名为 linkfile
的符号链接更新为 file_new
。
总结
在本文中,我们学习了 ln
命令的常用用法及相关参数的含义。使用硬链接和符号链接可以更好的管理文件和目录。但是删除原始文件和目录时需要特别小心,否则可能会导致数据的不可恢复性丢失。