Linux之软连接和硬连接的用法和区别【详细!!!】

news2025/7/29 0:33:51

目录

  • 软连接
    • 创建一个软连接
    • 删除软连接
  • 硬链接
    • 创建硬链接
    • 删除硬链接
  • 硬链接和软连接之间的区别

软连接

创建一个软连接

  • ln -s [源文件或目录] [软连接名称]

  • 例子: 在/home目录下创建一个软连接linkToRoot 链接到/root目录
    请添加图片描述

删除软连接

  • rm -f /linkToRoot
  • 例子:删除上面创建的软连接

请添加图片描述

硬链接

创建硬链接

  • ln source target
  • 例子 创建一个b.txt文件的硬链接
    请添加图片描述

删除硬链接

  • rm -rf 硬链接名称
  • 例子:删除上面创建的硬链接
  • 请添加图片描述

硬链接和软连接之间的区别

请添加图片描述

  • 我们仔细观察一下发现,b_hd,b.txt拥有一样的i结点(显示结果的第一列,即50726456),甚至于连权限属性都一模一样。而b_soft拥有另外一个独立的i结点。我们在前面曾经说过,每一个i结点对应一个实际的文件。所以,我们可以发现,建立的硬链接实际上跟我们的源文件是一样的。而软链接则是重新建立了一个独立的文件。

  • 事实上,硬链接的本质就是一条文件名和i结点的关联记录而已。

  • 另外,我们观察一下这几个文件的大小,由于我们的源文件是写了一点东西的文件,所以大小是1。那为什么两个硬链接也是1?而软链接却是5呢?

  • 因为硬链接关联着我们的源文件,所以源文件的大小是多大,它们就是多大。至于软链接的大小为什么是5,这个就比较有趣了,大家观察一下软链接指向的源文件名(“b.txt”)的长度,是不是5?对了,我们的软链接会写上链接文件的文件名。一个字母一个字节,所以是5个字节,所以软链接的大小是5。

  • 当我们删除了源文件之后,发现硬链接还能正常显示原本的内容,而软链接则提示文件不存在,这是怎么回事?

  • 我们刚才说过,软链接是建立了另一个新的独立的文件,它指向源文件,因为源文件没了,所以它就不能正常指向了;而硬链接为什么依旧能显示原来的内容呢?回到我们一开始的解释,硬链接实际是一条文件名与i结点的记录。所以,在删除源文件的时候,系统则将链接数减1,当链接数为0的时候,inode就会被系统回收,文件的内容才会被删除。我们试一试。

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/16335.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

供应CAS:73342-16-2,N3-PEG-OH,Azide-PEG-Hydroxy,叠氮-聚乙二醇-羟基

一:产品描述 1、名称 英文:N3-PEG-OH,Azide-PEG-Hydroxy 中文:叠氮-聚乙二醇-羟基 2、CAS编号:73342-16-2 3、所属分类:Azide PEG Hydroxyl PEG 4、分子量:可定制,叠氮-PEG 34…

[附源码]java毕业设计某公司酬薪管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

无需重启应用,动态采集任意点位日志

作者: 屿山 现实系统往往有着较高的复杂度,我们借助 Trace、Log、Metric 三驾马车使我们的系统具备了一定的可观测性,但观测位置和信息往往是固定的,而我们所遇到的问题常常是意料之外的,这就导致我们能够定位问题的范…

BLE学习(1):蓝牙协议栈的介绍

蓝牙官方(The Bluetooth Special Interest Group)定义了低功耗蓝牙(Bluetooth low energy,即LE)和基础/增强速率蓝牙(Bluetooth basic rate/enhanced data rate ,即BR/EDR)两种技术的协议栈。这两种协议栈可以单独使用,也可以同时使用,如下图所示&#x…

泛型「generic」讲解

标题1. 泛型语法1.1 泛型的引出1.2 泛型介绍1.3 泛型语法1.4 泛型使用细节1.5 练习题2.自定义泛型2.1自定义泛型-类2.2自定义泛型-接口2.3自定义泛型-方法2.4练习题3.范型继承和通配符3.1JUnit单元测试框架3.2练习题1. 泛型语法 1.1 泛型的引出 传统方法不能对加入到集合中的…

Docker部署ELK

Docker部署ELK安装包下载1、安装docker2、安装docker compose3、使用docker加载离线镜像4、上传yml文件并初始化密码5、造数据,看采集结果安装包下载 链接:https://pan.baidu.com/s/1LOHyhTHm3-30v6wAfYLTAg 提取码:5uno 1、安装docker (1&#xff09…

Python新手的福音,涵盖20+种初学者必练项目!

前言 对学Python的新手同学来说,最最最想要的干货是什么?是大量可以练手的项目啊。俗话说,三天不练手生,三天不念口生。#技术派的书架# (文末送读者福利) 在某乎上有一个关于"Python的练手项目”的问…

【线程】线程同步

目录 一、信号量 1.函数 2.使用 二、读写锁 1.函数 2.使用 三、互斥锁 1.函数 2.使用 四、条件变量 1.函数 2.使用 前言 线程同步的实现方法:信号量、互斥锁、条件变量、读写锁。 下面就对着四种方法进行展开描述 一、信号量 与进程间通信的信号量类似&a…

JNPF3.4.5大版本正式上线啦!

千呼万唤始出来,时隔近四个月,引迈信息终于再度推出新版本与大家见面了,此次推出的3.4.5大版本,可谓是吊足了大家的胃口。 本次大更新为用户带来的是高效率、高可用性、低成本、快速部署、易于扩展的快速开发平台的使用体验。本次…

【ASM】字节码操作 工具类与常用类 TraceClassVisitor 介绍

文章目录 1.概述2. TraceClassVisitor2.1 class info2.2 字段信息2.3 constructors2.4 methods3.如何使用TraceClassVisitor3.1 生成新的类3.2 修改已有的类3.3 打印ASM信息4.总结感谢第一个订阅字节码的人,感谢老铁支持 adminhjy 1.概述 在上一篇文章:

拓展卡尔曼滤波(Kalman)附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

分享5个良心好用的PC软件,免费无广告

今天再次推荐5个良心好用的Windows神级软件,每一个都是完全免费,堪称神器,让你打开新世界的大门。 1.数据恢复工具——EaseUS Data EaseUS Data Recovery Wizard是一款简单易用的数据恢复工具,给用户提供了三种恢复模式&#xf…

docker部署ES及kibana整个流程

对于ES小白,第一次安装ES走了很多弯路,下面记录自己本地安装elasticsearch的整个过程,我觉得小白如果按照我的流程走,大部分应该可以安装并运行成功。下面是整个步骤: 一、部署ES 拉取镜像 docker pull docker.elast…

胞外囊泡代谢组学—前列腺癌代谢变化研究的新策略

小小身体蕴含大大能量!前列腺癌非侵入性的诊断和监测的新方式——胞外囊泡(外泌体)代谢组学!目前,胞外囊泡/外泌体作为非侵入性的癌生物标志物已成为新的研究热点。百趣代谢组学文献分享,芬兰赫尔辛基大学学…

避免项目资源管理陷阱,8Manage帮你支招!

项目资源管理主要是对项目所需的人力、材料、机械、技术、资源等资源进行计划、组织、指挥、协调和控制。众所周知,项目推进需要资源支撑,一旦资源不足,项目的进度和质量都会受到影响。而在项目管理活动中,做好资源管理并不容易&a…

SORT追踪

卡尔曼滤波 卡尔曼滤波用当前时刻运动变量去预测下一时刻的运动变量,检测器第一次的检测结果用来初始化卡尔曼滤波的运动变量,后续的结果作为更新。在信号处理中卡尔曼滤波是去除噪声的一个算法,作用是使用信号更加的准确。在SORT中的&#x…

MySQL常用语句汇总

一、背景 日常测试开发工作中会用到各类SQL语句,很多时候都是想用的时候才发现语句细节记不清楚了,临时网上搜索SQL语法,挺费时费力的,语法还不一定是对的。因此汇总整理了一下MySQL最常用的各类语句,以后就不用再到处…

Linux环境安装

学习Linux首先要准备一个Linux环境。环境的安装有两种途径:买一个云服务器,安装虚拟机。 推荐使用云服务器,较虚拟机方便很多。 云服务器具体来说是Centos 7.6 64位——我也不知道为啥用这个 步骤一: 购买云服务器的主要方式…

“向美好女人致敬”粉红丝带主题活动,谈水果养生之道

传递粉红正能量,践行粉红关爱,“向美好女人致敬”粉红丝带关爱月公益线下活动于11月13日顺利收尾,帮助广大女性更加深入地了解、认识乳腺癌预防和康复治疗,推进乳腺癌防治意识。此次活动邀请到了云南省肿瘤医院乳腺三科科主任、副…

Android通过jni调用本地c/c++接口方法总结

网上有网友问android的原生应用,上层java代码如何通过jni调用本地的c/c++接口或第三方动态库 ?之前搞过android应用开发和底层c/c++接口开发都是一个人搞定,觉得还是蛮简单的。其实没啥难度,如果觉得难只是因为你没有经历过,只要搞过一遍基本就记住了。这里总结下方法留作…