linux文件链接

【Linux】文件的软硬链接 软链接:也称为符号链接,类似于 Windows 快捷方式,可以跨文件系统。 硬链接:指向相同 inode 的文件副本,不能跨文件系统。 阅读详情

链接:一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。

Linux中包括两种链接:硬链接(HardLink)和软链接(Soft Link),软链接又称为符号链接(Symbolic link)。

我们首先来了解一下几个名词:

索引节点(inode)

要了解链接,我们首先得了解一个概念,叫索引节点(inode)。在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号,我们可以将inode简单理解成一个指针,它永远指向本文件的具体存储位置。文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存在,从而实现文件的快速访问。系统是通过索引节点(而不是文件名)来定位每一个文件。

硬链接(Hard Link)

硬链接说白了是一个指针,指向文件索引节点,系统并不为它重新分配inode。可以用:ln命令来建立硬链接。

引用

ln [options] existingfile newfile

ln [options] existingfile-list directory

 

用法:

第一种为”existingfile”创建硬链接,文件名为”newfile”。

第二种在”directory”目录中,为”existingfile-list”中包含的所有文件创建一个同名的硬链接。

常用可选[options]:-f 无论”newfile”存在与否,都创建链接。-n 如果”newfile”已存在,就不创建链接。

软链接(Soft Link)

软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。和win下的快捷方式差不多。

可以用:ln -s 命令来建立软链接。

引用

ln -s existingfile newfile

ln -s existingfile-list directory

 

下面我们用一个实例来说明硬链接和软链接。

现在目录下有两个文件,一个名为file1,一个名为file2。

引用

$ ls –il

1052671 -rw-r--r-- 1 Leanx Leanx 0 2010-03-29 13:46 file1

1052670 -rw-r--r-- 1 Leanx Leanx 0 2007-03-29 13:46 file2

 

首先先做一个file1的硬链接。

引用

$ ln file1 file1hard

$ls –il

1052671 -rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:46 file1

1052670 -rw-r--r-- 1 Leanx Leanx 0 2010-03-29 13:46 file12

1052671 -rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:46 file1hard

 

这里我们注意在创建链接前,file1显示的链接数目为1,创建链接后

1.file1和file1hard的链接数目都变为2。

2.file1和file1的inode号是一样的,都是1052671。

3.file1和file1hard显示的文件大小也是一样,都是0B。

可见进行了ln命令的操作结果:file1和file1hard是同一个文件的两个名字,它们具有同样的索引节点号和文件属性,建立文件file1的硬链接,就是为file1的文件索引节点在当前目录上建立一个新指针。你可以删除其中任何一个,如rm file1,每次只会删除一个指针,链接数同时减一,只有将所有指向文件内容的指针,也即链接数减为0时,内核才会把文件内容从磁盘上删除。

尽管硬链接节省空间,也是Linux系统整合文件系统的传统方式,但是存在一些不足之处:

1.不允许给目录创建硬链接。

2.不可以在不同文件系统的文件间建立链接。

接着我们做一个指向file2的软链接,软链接克服了硬链接的不足,没有任何文件系统的限制,任何用户可以创建指向目录的符号链接。因而现在更为广泛使用,它具有更大的灵活性,甚至可以跨越不同机器、不同网络对文件进行链接。

引用

$ ln -s file2 file2soft

$ ls –il

总用量 0

1052671-rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:34 file1

1052670-rw-r--r-- 1 Leanx Leanx 0 2010-03-29 13:35 file2

1053313lrwxrwxrwx 1 Leanx Leanx 5 2010-03-29 13:45 file2soft -> file2

1052671-rw-r--r-- 2 Leanx Leanx 0 2010-03-29 13:34 file1hard

 

从上面链接后的结果可以看出来软链接与硬链接,区别不仅仅是在概念上,在实现上也是完全不同的。

区别:

 1.硬链接原文件/链接文件公用一个inode号,说明他们是同一个文件,而软链接原文件/链接文件拥有不同的inode号,表明他们是两个不同的文件;

 2.在文件属性上软链接明确写出了是链接文件,而硬链接没有写出来,因为在本质上硬链接文件和原文件是完全平等关系;

 3.链接数目是不一样的,软链接的链接数目不会增加;

 4.文件大小是不一样的,硬链接文件显示的大小是跟原文件是一样的。而这里软链接显示的大小与原文件就不同了,file2大小是0B,而file2soft是5B。

    总之,建立软链接就是建立了一个新文件。当访问链接文件时,系统就会发现他是个链接文件,它读取链接文件找到真正要访问的文件。

    当然软链接也有硬链接没有的缺点,因为链接文件包含有原文件的路径信息,所以当原文件从一个目录下移到其他目录中,再访问链接文件,系统就找不到了,而硬链接就没有这个缺陷,你想怎么移就怎么移;还有它要系统分配额外的空间用于建立新的索引节点和保存原文件的路径。

转自:http://blog.chinaunix.net/uid-23544029-id-311348.html

等保测评-瀚高数据库 一般适用于等保测评 阅读详情

相关推荐

Xilinx IP库在Modelsim/Questasim中的高效仿真实践

本文详细介绍了在Modelsim/Questasim中高效仿真Xilinx FPGA设计的核心方法。针对仿真时常见的IP核缺失错误,重点解析了两种主流解决方案:使用Vivado的compile_simlib命令自动编译完整仿真库,以及利用export_simulation命令为特定工程生成仿真脚本。文章还提供了手动配置库的深入理解、实战排错步骤及高级避坑指南,帮助用户构建稳定、高效的独立仿真环境。

sony5的博客 1230

Linux中文件的软链接和硬链接

硬链接是直接将文件名与索引节点号(即inode号)链接,inode号可以对应一个或多个文件名(如上硬链接后有两个文件名:hard link 和 filename),并且这些文件名可以在同一或不同目录,相当于多个相同或不同的文件名对应一个inode号,指向硬盘中相同的data block。需要注意的是:在删除时,若直接用键盘【del】或者鼠标右键删除时,仅仅将其丢入回收站,文件依然存在,因此硬链接数不会变化,只有删除回收站中的文件后,对应的硬链接数才会减少。硬链接只能引用同一文件系统中的文件。

清风的博客 829

STM32H750_QSPI_Flash_Configuration_With_CubeMX

本文详细介绍了如何使用STM32CubeMX配置STM32H750的QSPI Flash接口,包括硬件连接、CubeMX参数设置、代码生成与初始化流程优化。通过实战示例展示了Flash ID读取、页编程与数据读取等常用操作,并提供了调试技巧与性能优化建议,帮助开发者高效实现高速外部存储扩展。

weixin_29176179的博客 274

Linux—ln(link files)命令使用方法(How to create links on Linux)

Linux创建链接方法

喻师傅的学习笔记 1410

防火墙旁挂组网

分析拓扑结构,涉及路由器、交换机、防火墙。步骤包括基础 IP 配置、OSPF、防火墙双机热备、安全策略等。第一步,路由器配置。R5、R6 连接 ISP 和核心交换机,配置接口 IP,然后 OSPF。然后防火墙,双机热备的 HRP、VRRP,还有安全策略。接着交换机,划分 VLAN,配置 TRUNK,加入 OSPF。

weixin_73298423的博客 904

【量化入门】Tushare库获取公募基金的历史净值

在本文中,我们将介绍如何使用Python的Tushare库获取公募基金的历史净值。

木头大左的博客 1144

Ubuntu 12.04 link file详解

在Unix世界里有两个’link’(链接)概念,一般称之为硬链接和软链接。 在学习link之前,先了解一下inode和block的概念。inode 译成中文就是索引节点。每个存储设备或存储设备的分区(存储设备是硬盘、软盘、U盘 ... ... )被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是Block,Block是用来存储数据用的。而inode呢,就是用...

weixin_34334744的博客 349

ComfyUI整合包、秋叶ComfyUI、Florence节点报错下载并加载Florence2模型No module named ‘timm.layers‘、ComfyUI报错解决

步骤操作1打开2地址栏输入cmd并回车3输入命令:4安装完成后重新打开 ComfyUI,执行工作流,即可解决报错。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1243

Linux软链接与硬链接的区别

Linux In 功能:为某一个文件在另外一个位置建立一个同步的链接。 当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其他的目录下用In命令链接(link)它就可以,不必重复的占用磁盘空间。 语法: ln [参数][源文件或目录][目标文件或目录] 其中参数的格式为 [-bdfinsvF] [-S bac...

okakio的博客 280

单片机:实现简单的时间片轮询调度(附完整源码)

单片机:实现简单的时间片轮询调度(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 384

Spark Sql 连接mysql

转载请务必注明原创地址为:http://dongkelun.com/2018/03/21/sparkMysql/ 1、基本概念和用法(摘自spark官方文档中文版) Spark SQL 还有一个能够使用 JDBC 从其他数据库读取数据的数据源。当使用 JDBC 访问其它数据库时,应该首选 JdbcRDD。这是因为结果是以数据框(DataFrame)返回的,且这样 Spark SQL操作轻松或便......

主要分享大数据相关的知识,如Spark、Hudi 1万+

目录文件

1、ls -l 看下文件属性  crw-rw----. 1 root video    10, 175 Apr 15 18:33 agpgart drwxr-xr-x. 2 root root         620 Apr 15 18:33 block 第一个字符代表这个文件是目录、文件或链接文件等等。 当为[ d ]则是目录 当为[ - ]则是文件; 若是[ l ]则表

yxpjx的专栏 599

基于STM32的设计智慧超市管理系统(带收银系统+物联网环境监测)_167

本系统主要由超市环境监测部分和商品管理部分组成。环境监测部分主控芯片采用STM32F103C8T6,主要包括温湿度传感器、烟雾传感器和空调制热开关、空调制冷开关,采集的数据通过ESP8266模块+MQTT协议上传至OneNet云平台,在OneNet云平台设计手机和电脑版本可视化页面,能够在页面上查看超市的环境信息,还能在页面上手动打开空调制热开关和空调制冷开关。商品管理部分主要由RC522-RFID读卡器、上位机组成,实现商品选购、结算、顾客的VIP会员卡注册管理等功能。

6070

Linux文件链接

详细介绍linux中软链接和硬链接的使用以及介绍。

s1429583654的博客 6717

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

【Linux】文件的链接

重点内容: 文件的链接Linux下文件的链接分为两种: 软连接 和 硬链接;在Linudx下使用 ls -l 命令即可看到文件的很多信息,其中第一列的第一个字符代表的就是文件的类型;而下面紧跟的数字代表文件的连接数;比如: -r-xr-xr-x 这个字符串第一个字符,代表文件的类型;linux下文件的类型通常有以下几类: d : 代表一个目录; - : 代表一个普通文件;

John的博客 1万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Linux系统中的链接文件

日志文件系统ext xfs里 1.节点区域 记录的都是文件属性,ls -l file ,文件的元数据inode tables 2.数据区域 放的时cat file看到的一切,数据块 cat 找的是数据区域 一个文件对应一个节点号,一个节点号对应一个数据区域 硬连接 :一个节点号对应多个数据区域,节点区域不够,只复制数据区域而不复制节点区域。 copy是复制节点区域和数据区域 ln 软连接:多...

even160941的博客 1万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

linux创建链接文件

链接文件的创建

qq_52140453的博客 3030

linux 查看链接文件,Linux下的链接文件详解

几个基本概念Linux下的链接文件可以分为硬链接(hard link)与软链接(soft link)。要理解它们,必须先要理解几个基本概念。inode文件除了纯数据本身之外,还必须包含有对这些纯数据的管理信息,如文件名、访问权限、文件的属主以及该文件的数据所对应的磁盘块等等,这些管理信息称之为元数据(mata data),保存在文件的inode节点之中。我们可以通过stat命令查看一个文件的ino...

weixin_29271053的博客 9267

linux中文件链接,关于Linux中文件,链接的一些思考

在Unix系统中,操作系统为磁盘上的文本与图像,鼠标键盘操作,网络交互等IO操作设计了一组通用API。使他们被处理的时候可统一用字节流的方式。所以说,除了进程之外,其他的一切均可看做文件。Linux系统中,不区分文件和目录。所谓的目录,只是记录了其他文件名的文件。所以,如果当前目录下有一个文件a,那么使用 mkdir a 创建a目录的时候会出错。Linux将设备当做文件来处理,比如,当插入U盘的时...

weixin_42350014的博客 214

Linux下的链接文件

Linux下的链接文件。

牧以南歌的博客 1208

linux下文件链接方法,浅析Linux下的链接文件

【摘 要】Linux在其文件系统中引入了链接文件用于方便用户使用和系统管理。本文对Linux下的链接文件的实质、分类、用途进行了分析和综述。【关键词】Linux;链接文件0 引言链接文件在Linux的文件系统中扮演重要角色,而其背后又涉及到索引节点(index node,又称inode)这一概念。索引节点是Linux虚拟文件系统(VFS)的基本概念之一。通过剖析链接文件的实质,理解链接文件的分类与...

weixin_39724362的博客 338

Linux链接文件

Linux链接文件一、Linux连接文件二、ln命令三、硬连接四、符号连接(软连接) 一、Linux连接文件 Linux有两种连接文件:符号连接(软连接)和硬链接,符号链接类似Windows下的快捷方式。硬链接通过文件系统的inode连接来产生新文件名,而不是产生新文件。 inode:记录文件属性,一个文件一个inode。inode相当于文件ID,查找文件的时候要先找到inode,然后才能读出文件的内容。 二、ln命令 ln命令用于创建连接文件: ln [选项] 源文件 目标文件 选项:-s 创建符号链

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 5469

Linux下链接文件的区别——软链接和硬链接

博客搬家了,最近同时更新,没准什么时候就完全搬走了-_- http://blog.just66.cn0X00 什么是链接文件Linux中的链接文件就相当于是Windows中的快捷方式,通过链接文件可以访问到链接指向的源文件。但是Linux下的链接文件和Windows中的快捷方式还是有一定的区别。Linux中有两种链接文件硬链接和软连接也称为符号链接 在介绍链接文件之前先要介绍一下Linux文件系统

耗子、 2573

linux链接文件

我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据,即文件数据块 (data block),数据块是记录文件真实内容的地方;而元数据则是文件的附加属性,如文件大小、创建时间、所有者等信息。在 Linux 中,元数据中的 inode 号(inode 是文件元数据的一部分但其并不包含文件名,inode 号即索引...

清风 2385

linux的链接文件命令,Linux链接文件 管理链接文件的命令

本文将为您描述Linux链接文件 管理链接文件的命令,具体操作过程:Linux链接文件——管理链接文件的命令摘要:本文主要学习了在Linux系统中创建链接文件的命令。ln命令ln命令用于给文件创建链接,是Link的缩写。基本语法1 [root@localhost ~]# ln [选项] 源文件 目标文件选项说明1 -s:建立软链接文件。如果不加-s,则建立硬链接文件。如果源文件是在当前路径下,可以...

weixin_42500156的博客 380

Linux笔记之链接文件,软链接和硬链接

文件或目录的inode 编号是内核分配给文件系统中的每一个对象的唯一标识。

小勇博客 710
上一篇: tomcat通过conf-Catalina-localhost目录发布项目详解
下一篇: Mysql乱码问题解决历程
依栏听风雨
博客等级 码龄15年 24粉丝 60原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值