Linux 新手:第一次用 ln,软链接和硬链接怎么分

举报
yd_293738966 发表于 2026/11/04 11:22:57 2026/11/04
【摘要】 软链接存路径,源文件没了它就断;硬链接多挂一块牌子,删一个另一个还在。本文讲清 ln -s 与 ln 的区别、ls -l 的辨认方法和两条硬规矩。

新手第一次听说链接,脑子里先有个画面:它就像给文件起了个别名,两个名字指向同一个东西,改一个,另一个也跟着变。但 Linux 里链接分两种,软链接和硬链接,用错了会出怪事,先把区别讲清楚。
先说软链接,命令是 ln -s 源文件 链接名。比如 ln -s /data/report.txt ~/report,这就在家目录放了一个叫 report 的软链接。它存的不是文件内容,而是一条路径,相当于一张写着地址的纸条。你打开软链接,系统顺着纸条找到源文件再打开。好处是灵活:能跨分区、能指向目录、删了重建也方便。坏处也在这张纸条上:源文件一旦被删掉或移走,纸条指向的地方就没东西了,软链接变成悬空的,打开就报错。
再说硬链接,命令是不带 -s 的 ln 源文件 链接名。比如 ln /data/report.txt ~/report2。这回不是纸条,而是给同一个文件内容又起了一个名字。Linux 里文件内容由 inode 管着,文件名只是挂在 inode 上的一块牌子,硬链接就是多挂一块牌子。删掉 report.txt,report2 照样能打开,因为内容还在,牌子只是少了一块。只有当所有牌子都删光,内容才真正被释放。
怎么一眼区分?用 ls -l 看。软链接那行开头是字母 l,后面会写清楚它指向谁,比如 report -> /data/report.txt。硬链接看起来和普通文件一模一样,开头是 -,但第二列那个数字就是牌子数:数字是 2,说明这个内容挂了两个名字。
还有两条硬规矩要记住。第一,硬链接不能跨分区,也不能给目录建,目录只能用软链接。第二,日常用软链接就够了,备份、快捷方式、换版本指来指去都是它的活;硬链接适合那种“两个入口必须同生共死、删一个另一个还得在”的场合。
一句话总结:软链接存路径,源文件没了它就断;硬链接多挂一块牌子,删一个另一个还在。分清这两点,ln 就不会再用错了。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。