从命令行管理文件——软连接,软硬连接的区别

软连接
1. 原理
软连接本质是一种符号连接,类似于 Windows 的快捷方式,存储对应文件的路劲
2. 格式
ln -s 源文件 软连接名称
例:
[root@server /] # cd ~
[root@server ~] # echo "china" > h1.txt
[root@server ~] # ln -s h1.txt h2.txt
[root@server ~] # ll h2.txt # 查看软连接的指向
lrwxrwxrwx. 1 root root 6 6 月 26  20 :31 h2.txt - > h1.txt
[root@server ~] # ll /dev/cdrom
lrwxrwxrwx. 1 root root 3 6 月26  20 :39 /dev/cdrom - > sr0
# 给网卡配置文件建立软连接
[root@server ~] # cd /etc/NetworkManager/system-connections/
[root@server system-connections] # ls
ens160.nmconnection
[root@server system-connections] # cd ~
[root@server ~] # ln -s /etc/NetworkManager/system
connections/ens160.nmconnection nic
[root@server ~] # cat nic
注意:
软连接中删除了源文件则连接不可用
# 接上例
[root@server system-connections] # cd ~
[root@server ~] # ls
公共 模板 视频 图片 文档 下载 音乐 桌面 anaconda-ks.cfg h1.txt h2.txt mk1 nic
t1.txt temp1 temp2
[root@server ~] # cat h2.txt
china
[root@server ~] # rm -f h1.txt
[root@server ~] # cat h2.txt
cat : h2.txt: 没有那个文件或目录
软连接数不能查看,只能通过 ll ls -l 命令查看指向关系
删除软连接,只要源文件存在则数据依然可以访问
[root@server ~] # echo "hello" > b1.txt
[root@server ~] # ln -s b1.txt b2.txt
[root@server ~] # cat b1.txt
hello
[root@server ~] # cat b2.txt
hello
[root@server ~] # rm -f b2.txt # 删除软连接
[root@server ~] # cat b1.txt
hello
修改软连接
格式: ln -snf 新文件名 软连接名
例:
[root@server ~] # echo "hello" > h1
[root@server ~] # echo "world" > w1
[root@server ~] # ln -s h1 temp
[root@server ~] # cat temp
hello
[root@server ~] # ll temp
lrwxrwxrwx. 1 root root 2 6 月 26  20 :46 temp - > h1
[root@server ~] # ln -snf w1 temp # 修改指向关系
[root@server ~] # ll temp
lrwxrwxrwx. 1 root root 2 6 月 26  20 :47 temp - > w1
软硬连接的区别
硬连接中源文件与连接文件公用一个 inode 号,是同一个文件
[root@server ~] # echo "china" > k1
[root@server ~] # ln k1 k2 # 新建硬连接
[root@server ~] # stat k1
文件: k1
大小: 6 块: 8 IO 块: 4096 普通文件
设备: fd00h/64768d Inode 9252682 # 注意 硬链接: 2
权限: (0644/-rw-r--r--) Uid ( 0 / root) Gid ( 0 / root)
环境: unconfined_u:object_r:admin_home_t:s0
最近访问: 2024-06-26  20 :50:36.980179787 + 0800
最近更改: 2024-06-26  20 :50:38.612178450 + 0800
最近改动: 2024-06-26  20 :50:47.468171190 + 0800
创建时间: 2024-06-26  20 :50:36.980179787 + 0800
[root@server ~] # stat k2
文件: k2
大小: 6 块: 8 IO 块: 4096 普通文件
设备: fd00h/64768d Inode 9252682 # 注意 硬链接: 2
权限: (0644/-rw-r--r--) Uid ( 0 / root) Gid ( 0 / root)
环境: unconfined_u:object_r:admin_home_t:s0
最近访问: 2024-06-26  20 :50:36.980179787 + 0800
最近更改: 2024-06-26  20 :50:38.612178450 + 0800
最近改动: 2024-06-26  20 :50:47.468171190 + 0800
创建时间: 2024-06-26  20 :50:36.980179787 + 0800
软连接中源文件与连接文件拥有不同的 inode 号,是 2 个不同的文件
[root@server ~] # ln -s k1 k3
[root@server ~] # stat k1
文件: k1
大小: 6 块: 8 IO 块: 4096 普通文件
设备: fd00h/64768d Inode 9252682 硬链接: 2
权限: (0644/-rw-r--r--) Uid ( 0 / root) Gid ( 0 / root)
环境: unconfined_u:object_r:admin_home_t:s0
最近访问: 2024-06-26  20 :50:36.980179787 + 0800
最近更改: 2024-06-26  20 :50:38.612178450 + 0800
最近改动: 2024-06-26  20 :50:47.468171190 + 0800
创建时间: 2024-06-26 20 :50:36.980179787 + 0800
[root@server ~] # stat k3
文件: k3 - > k1
大小: 2 块: 0 IO 块: 4096 符号链接
设备: fd00h/64768d Inode 9252684 硬链接: 1
权限: (0777/lrwxrwxrwx) Uid ( 0 / root) Gid ( 0 / root)
环境: unconfined_u:object_r:admin_home_t:s0
最近访问: 2024-06-26  20 :52:17.757097177 + 0800
最近更改: 2024-06-26  20 :52:11.953101931 + 0800
最近改动: 2024-06-26  20 :52:11.953101931 + 0800
创建时间: 2024-06-26  20 :52:11.953101931 + 0800
软连接的指向关系可以通过命令查看 (ll 或者 ls -l) ,硬连接不可以查看执行关系,只能查看连接硬连接数
ll 或者 stat
软连接数不会增加,硬连接数会增加
文件大小不一样,硬连接文件容量相同是同一个文件,软连接只是一个快捷方式,容量较小
软连接可以跨越文件系统(分区),任何用户都可以建立指向目录的软连接

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

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

相关文章

2024国内外音频转换器大盘点,盘点音乐剪辑的7个有效方法!

当遇到不支持的音乐文件时,您可能就会想要拥有一款优秀的音频转换器。当您想减小大量音乐文件以节省设备存储空间时,它也可以很好地帮上忙。如果您正在寻找这么一款音频转换器,那么,请不要错过这篇文章。一款顶尖的音频转换器不仅…

Oracle day10

create table category( 类目id number, 父类目id number, 描述 char(500) ) --insert into category(类目id,父类目id) values(1001,1); /*insert into category values(1,0,0为根类目); insert into category(类目id,父类目id) values(1002,2); …

USB2.0学习1--基本概念

目录 1.USB概念 2.USB协议发展 3.USB接口类型 3.1 TYPE类型 3.2 Mini类型 3.3 Micro类型 4. USB体系结构和关键概念 4.1 USB工作原理 4.2 USB物理拓扑结构 4.3 USB逻辑拓扑结构 4.4 USB软件架构 4.5 USB数据流模型 4.5.1 USB设备端点 4.5.2 USB管道 4.6 USB即插…

网工内推 | 国企信息工程师,信息系统项目管理师优先,最高14薪

01 上海浦东软件园股份有限公司 🔷招聘岗位:信息化管理工程师 🔷岗位职责: 1. 根据公司战略、数字化总体架构规划和IT 技术趋势,制定信息化系统的规划与设计,并制定实施计划。 2. 统筹公司信息化系统管理…

Redis-实战篇-缓存击穿问题及解决方案

文章目录 1、缓存击穿2、常见的解决方案有两种:2.1、互斥锁2.2、逻辑过期2.3、两种方案对比 3、利用互斥锁解决缓存击穿问题3.1、ShopServiceImpl.java3.2、使用 jmeter.bat 测试高并发 4、利用逻辑过期解决缓存击穿问题 1、缓存击穿 缓存击穿问题 也叫 热点key问题…

LeetCode 2741.特别的排列:状压DP

【LetMeFly】2741.特别的排列:状压DP 力扣题目链接:https://leetcode.cn/problems/special-permutations/ 给你一个下标从 0 开始的整数数组 nums ,它包含 n 个 互不相同 的正整数。如果 nums 的一个排列满足以下条件,我们称它是…

<电力行业> - 《第4课:什么是电力?什么是发输变配用5环节?》

1 什么是电力? 我们对于平日生活中离不开的电很熟悉,但是电力是什么? 其实,电力就是电能作为动力的能源。电力就是我们说的电,不过更多了系统化。 19世纪70年代,电力的发明和应用掀起了第二次工业化高潮。…

关于WebSocket

WebSocket 与传统的 HTTP 协议对比 在实时通信领域,传统的 HTTP 协议存在以下一些问题: 频繁的请求和响应:每次通信都需要建立和关闭连接,带来额外的开销。高延迟:每次通信都需要经过多个网络层的传输,延…

Stm32的DMA的学习

一,介绍 二,DMA框图 三,DMA通道 四,相关HAL库函数 五,配置DMA 六,Stm32CubeMX配置 【13.1】减少CPU传输负载 DMA直接存储器访问—Kevin带你读《STM32Cube高效开发教程基础篇》_哔哩哔哩_bilibili

【鸿蒙 HarmonyOS】尺寸设置:size/layoutWeight/constraintSize

一、背景 常见尺寸:width(宽度)、height(高度)、padding(内边距)、margin(外边距) 主要整理下size(设置高宽尺寸)、layoutWeight(对…

主干网络篇 | YOLOv5/v7 更换骨干网络之 PP-LCNet | 轻量级CPU卷积神经网络

主干网络篇 | YOLOv5/v7 更换骨干网络之 PP-LCNet | 轻量级CPU卷积神经网络:中文详解 1. 简介 YOLOv5 和 YOLOv7 是目前主流的目标检测算法之一,具有速度快、精度高的特点。但 YOLOv5 和 YOLOv7 的原始模型结构中使用的是 MobileNetV3 作为骨干网络&am…

Redis数据库(五):Redis数据库基本特性

这一节我们来介绍如何使用C语言的库来操作Redis数据库。 目录 一、hiredis的安装 1.1 下载源码 1.2 解压 1.3 进入hiredis路径下 1.4 利用makefile文件进行编译 二、接口介绍 三、C程序操作Redis代码 四、redis.conf配置文件详解 五、Redis的持久化 5.1 RDB &#x…

Compose学习记录(2)-组件状态

Compose中的状态 可组合函数可以按任意顺序频繁执行,对于组件中的状态需要通过特定方式保存起来。当状态发生变化时,它会自动触发组件UI的重组: remember{ mutableStateOf(T) } Composable fun Greeting(name: String, modifier: Modifier Modifier) {…

STM32CubeMX与RT-Thread Studio协助使用(实现点亮LED)

1创建自己的项目 1-1选择板子 1-2生成的项目 运行一下看是否创建成功 零警告零错误 2配置STM32Cude 2-1找打如图图标点击(CubeMX的图标) 2-2输入自己安装的路径选中exe文件 点击Browse 找到如图选中,在打开(STM32CubeMX的安装路…

202406261021_二分查找2

202406261021_二分查找2 ✏随笔34. 在排序数组中查找元素的第一个和最后一个元素代码总结 69. x的平方根代码总结 367. 有效的完全平方数代码总结 (Weather::上海 ⛅多云,13~23℃ 良 清风徐徐🌘) ✏随笔 34. 在排序数组中查找元素的第一个和最后一个元素…

echarts 5.5.0版本下的层叠柱形图,每个值都从0开始,会有覆盖情况

需求: 1、每个公司,需要两个柱子去展示(stack: 1是第一个柱子,stack:2,是第二个柱子); 2、必须每个数据都是从0开始,不在上一个值上累加; 3、鼠标滑上去的时候,最大值…

什么是API?如何进行API对接?

目录 一、API和API对接的定义 二、API接口的应用场景 三、为什么需要API对接 四、如何进行API对接 GET请求 POST请求 五、API对接的注意事项 在这个数字化时代,API像一把万能钥匙,让数据流动起来,创造出无限可能。本文旨在介绍API及其…

点云处理实战 PCL求解点云表面曲率

目录 一、什么是曲率 二、曲率计算过程 三、pcl 求解点云局部曲率 四、思考?为何曲率计算会使用协方差矩阵? 五、推荐阅读 一、什么是曲率 曲率是几何学中用来描述曲线或曲面形状变化的一个量。它反映了曲线或曲面的弯曲程度。在不同的上下文中,曲率的定义和计算方式有…

如何在Spring Boot中实现文件上传和下载

如何在Spring Boot中实现文件上传和下载 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将探讨如何在Spring Boot应用中实现文件的上传和下载功能&…

科普:什么是 BC-404 ?全方位解读最新通缩型 NFT 标准

区块链技术飞速发展的今天,创新从未停歇。继 ERC-404 标准问世后,一个名为 BC-404 的新标准应运而生,为 NFT 市场带来了全新的可能性。BC-404(Bonding Curve 404)—基于对 ERC-404 的改进,加密货币中第一个…