Linux文件系统的硬连接和软连接
title: Linux文件系统的硬连接和软连接
date: 2018-02-06T20:26:25+08:00
tags: ["文件系统"]
categories: ["Linux"]
为了更好地说明文件链接是什么,先讲一下Linux的磁盘管理方式。
Linux的文件系统格式被称为ExtN(N=2,3,4),是一种基于inode(索引节点)的文件系统,是所有类Unix系统都有的一种数据结构也是文件系统的核心,每一个新创建的文件都会被分配一个inode,且每个文件都有一个唯一的inode编号。inode可以简单理解成一个指针,指向文件所在的物理位置,同时文件的属性也保存在inode中。
ExtN文件系统读取数据过程示意图

inode只是记录文件保存的位置,实际的文件保存在data block区域。
而编号为3的inode就是文件的一个链接。
当我们用ls -l命令查看文件信息的时候,其中的连接数就是inode的个数,我们可以通过ln建立硬链接为同一个文件建立多个连接,它可以使得同一个文件能够拥有不同的路径,还能方式被恶意删除,但有以下几点需要注意:
- 使用
ln建立硬链接是直接引用目标文件的inode,所有的属性,包括文件的权限信息也会被一同引用进来。 - 只是复制了inode,没有复制data block信息,因此额外的磁盘占用很小,但也使得硬链接只能在同一分区中建立。
建立软连接需要增加-s参数,软连接相当于Windows中的快捷方式,可以被建立在任何位置,和目标inode的文件属性不相同,也不会有连接数+1,同时不能起到备份的作用,删除原文件后软连接也会失效。
Linux文件系统的硬连接和软连接的更多相关文章
- linux中的硬连接和软连接
linux中的硬连接和软连接 linux中的硬连接和软连接 背景 连接 硬连接 软连接 example reference 背景 linux中的文件主要分3块, - 真正的数据 - 索引节点号(ino ...
- 初窥Linux 之 区分硬连接和软连接
一.Linux下的两种连接文件及创建方式 在Linux下面的连接文件有两种——软连接和硬连接,虽然都是连接文件,但两者却有很大的区别.一种是类似于Windows的快捷方式功能的文件(或目录),这种连接 ...
- linux文件的硬连接和软连接
建立软连接:ln -s 原路径 目标路径 原理示意图: 特点: 1. 相当于win中的快捷方式 2. 删除链接文件,源文件不受影响 3. 删除源文件,链接文件失效 4. ...
- linux系统文件属性-硬连接、软连接
1 硬链接概念 硬链接是指通过索引节点(Inode)来进行链接,在Linux(ext2,ext3)文件系统中,保存在磁盘分区中的文件不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号(In ...
- 硬连接与软连接,inode与links
硬连接和软连接,第一感觉就像是window的快捷方式,实则不然 要说硬连接和软连接,那就必须了解inode和block以及分区了 EXT文件系统在创建分区的时候,就划分了两块区域,inode tabl ...
- linux ------ 硬连接和软连接(软连接也叫符号连接)
在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号 (Inode Index).在Linux中,多个文件名指向同一索引节点是存在的.一般这种连接就是硬连接 ...
- Linux 硬连接和软连接的原理 (in使用)
引子 目前,UNIX的文件系统有很多种实现,例如UFS(基于BSD的UNIX文件系统).ext3.ext4.ZFS和Reiserfs等等. 不论哪一种文件系统,总是需要存储数据.硬盘的最小存储单位是扇 ...
- 【Linux】Shell学习笔记之四——文件和目录管理(硬连接和软连接)
在这节将要学习linux的连接档,在之前用"ls -l" 查看文件属性的命令时, 其中第二个属性是连接数.那么这个连接数是干什么的?这就要理解inode. 先说一下文件是怎么存储的 ...
- linux 硬连接与软连接
1.linux中文件占用一个inode,inode指向文件内容.2.文件名可以认为是一个指针,指向inode.硬连接相当于指针的整体拷贝,并不是对文件内容的拷贝.两个文件名(两个指针)都能修改文件,删 ...
随机推荐
- 程序员自己编写的类和JDK类是一种合作关系。
封装类: JAVA为每一个简单数据类型提供了一个封装类,使每个简单数据类型可以被Object来装载. 除了int和char,其余类型首字母大写即成封装类. 转换字符的方式: int I=10; Str ...
- Parquet格式解析
parquet是列式存储格式,官方文档 https://parquet.apache.org/documentation/latest/ 一个Parquet文件是由一个header以及一个或多个blo ...
- 【LInux】统计某文件夹下目录的个数
统计当前文件夹下文件的个数,包括子文件夹里的ls -lR|grep "^-"|wc -l 统计文件夹下目录的个数,包括子文件夹里的ls -lR|grep "^d" ...
- 移动网页广告引入mraid.js使用指南
在网上找mraid相关资料,相对比较少,大多都是API介绍,概念介绍等,没有一份详细的移动端网页广告使用教程,经过自己两天的摸索,完成了开发的移动端网页版的广告加入mraid功能. 背景: 我开发了移 ...
- 微信小程序中同步 异步的使用
https://www.jianshu.com/p/e92c7495da76 微信小程序中使用Promise进行异步流程处理 https://www.cnblogs.com/cckui/p/102 ...
- 局域网ARP攻击防护
通过借助一些安全软件来实现局域网ARP检测及防御功能. A.电脑管家 电脑管家--工具箱--下载ARP防火墙模块 不支持window2003 B.服务器安全狗 Windows版下载:http://fr ...
- win10 快速访问关闭
1. 右键 --- 选项 2. 选择:此电脑
- vue分页问题参考 感谢
https://www.cnblogs.com/zhoulifeng/p/9395295.html
- 协程greenlet、gevent
greenlet为了更好使用协程来完成多任务,python中greenlet模块对其封装,从而使得切换任务变得更加简单安装方式 pip3 install greenlet 示例代码: from gre ...
- java学习之路--集合基础之List和Set部分
List 一个接口,它继承于Collection的接口.它代表着有序的队列.里面的元素是有序的,可以重复,因为该集合的体系有索引. List的实现类 ArrayList:底层数据结构为数组数据结构,特 ...