AI 助教问 AI 助教
东方瑞通 · 红帽RHCE

命令行文件管理与硬/软链接

使用 mkdir、cp、mv、rm、ln 等命令管理文件与目录;ln 可创建硬链接与软链接两种链接。

考点精讲

  1. 硬链接(hard link)指向同一 inode,删除原文件后仍可访问,但不能跨文件系统、不能链接目录;软链接(symbolic link)是独立文件、保存目标路径,原文件删除后即失效。「ln file hard」建硬链接,「ln -s file soft」建软链接。

记忆技巧

硬链接是「同一 inode 多个名字」,软链接是「保存路径的快捷方式」。
「ln file hard」建硬链接、「ln -s file soft」建软链接,-s 就是 soft 的首字母。
记「硬不跨区、软可跨区」:硬链接不能跨文件系统、不能链接目录,软链接无此限制。

常见误区

  • 误区:混淆硬链接与软链接的限制。正解:硬链接不能跨文件系统、不能链接目录;软链接是独立文件,原文件删除后即失效。
  • 误区:以为 cp 会默认保留权限。正解:cp 默认受 umask 影响会改变权限,需加 -p 保留原属性。
  • 误区:用 rm 删软链接时误删了目标。正解:rm 软链接名 只删链接本身,不会删目标文件(注意不要写 / 结尾)。

真题思路

  • 【示例】 创建指向 /etc/hosts 的软链接 /tmp/hosts_soft,正确的命令是?
    A. ln /etc/hosts /tmp/hosts_soft B. ln -s /etc/hosts /tmp/hosts_soft C. cp -s /etc/hosts /tmp/hosts_soft D. ln -d /etc/hosts /tmp/hosts_soft
    答案:B
    解析:软链接用 ln -s 创建;不加 -s 的 ln 创建的是硬链接;cp -s 不是标准做法。软链接保存目标路径,删除原文件后即失效。

常见问题

Q:怎么区分一个文件是硬链接还是软链接

A:ls -l 中链接数 >1 且 inode 相同为硬链接;软链接以 l 开头并显示 -> 目标。

Q:硬链接和软链接删除原文件后有什么区别

A:硬链接仍可访问(inode 仍在),软链接则失效(指向的目标没了)。

Q:怎么查看文件的 inode 号

A:ls -i 文件名。

相关知识

教材出处:RH124 第2章 命令行文件管理与硬/软链接

AI 助教

让 AI 助教带你深入学习,把你卡住的地方直接问它

随时为您答疑解惑

开始答疑