inode结构体及软链接和硬链接

首先先了解一下block(块的概念),块是文件存取的最小单位,通常8个扇区为一个块,而每个扇区的大小为512个字节也就是0.5K,所以一个块的大小也就是8*0.5K=4K。

系统通过inode来识别文件

可以用命令stat查看某文件的inode信息,如:stat client.c

可看到除了文件名以外的文件信息都在inode中

因此,inode是保存文件的信息的,称为索引节点

命令:

stat 文件名     //查看某个文件的inode信息

df -i         //查看硬盘分区的inode总数和已使用的数量

ls -i 文件名    //查看文件的inode号码

df -h         //block

一个文件包括两部分:一是它的元信息,二是文件数据

文件数据就放在扇区上,但操作系统每次以块为最小单元来读数据

文件元信息存储在叫做inode的区域中

硬链接:两个或多个文件的inode号相同,假设有两个文件A和B,A和B的inode号相同,则打开A和B中任何一个文件实质上打开了一个文件,对其中一个进行操作另一个文件也会改变。但删除其中一个不会影响另一个文件。

创建硬链接    ln 源文件 目标文件      (inode结构体中链接数会加1)

软链接:还是假设有A和B两个文件,且它们两个的inode号不同,A文件的内容为B的路径,即打开其中任何一个文件都会打开文件B,称A为B的软链接。

创建软链接    ln -s 源文件 目标文件

时间: 2024-12-16 12:56:01

inode结构体及软链接和硬链接的相关文章

FILE 结构体的定义,inode ,软链接和硬链接的理解

一.FILE结构体: C将每个文件简单地作为顺序字节流.每个文件用文件结束符结束,或者在特定字节数的地方结束,这个特定的字节数可以存储在系统维护的管理数据结构中.当打开文件时,就建立了和文件的关系. 在开始执行程序的时候,将自动打开3个文件和相关的流:标准输入流.标准输出流和标准错误.流提供了文件和程序的通信通道.例如,标准输入流使得程序可以从键盘读取数据,而标准输出流使得程序可以在屏幕上输出数据.打开一个文件将返回指向FILE结构(在stdio.h中定义)的指针,它包含用于处理文件的信息,也就

理解inode 以及 软链接和硬链接概念区分

inode简单理解 本文来源自网络文章,并针对文章内容加以批注和修改.希望能帮到你! 一. 磁盘设备 说到inode,首先必须要提及下<操作系统>中磁盘存储器的管理一节.磁盘设备是一种相当复杂的机电设备(比较详细的介绍可以参考blog硬盘内部硬件结构和工作原理详解 ). 磁盘设备可以包括一个或多个物理盘片,每个磁盘片分一个或两个存储面(如图(a)所示).每个磁盘面被组织成若干个同心环,这种环称为磁道track,各磁道之间留有必要的间隙.每条磁道又被逻辑上划分成若干个扇区sectors.在不同扇

inode探究及inode与软链接与硬链接关系

一.文件系统相关知识 superblock:记录此文件系统的整体属性,包括inode/block的总量,使用量,剩余量,以及文件系统的格式及相关信息 block:记录文件的内容,若文件太大,占用多个block inode:记录文件的属性,一个文件占用一个inode 文件系统一般分为多个块组(block group),每个块组有superblock,文件系统描述,块对应表,inode对应表,inodetable,dateblock组成 1. (1)block的大小在格式化后就不再改变了,除非重新格

iNode 软链接和硬链接总结 &nbsp;

文件都是储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector),也是硬盘的划分单位.每个扇区储存512字节(相当于0.5KB). 硬盘的瓶颈就是在于IO,如果一次只读一个扇区,io 就特别高.所以读取的时候都是一次性连续读取8个扇区,即一次性读取一个"块"(block).这种由多个扇区组成的"块",是文件存取的最小单位."块"(block)的大小,最常见的是4KB,其次是8K.以4K为例: 1block=4K=8扇区(可

inode 及软链接、硬链接

inode: 用来存储文件的元信息的索引节点.包括文件的创建者.创建日期.文件的大小等.Linux下一切皆文件,每个文件都有其对应的inode. inode内容: 文件的字节数 文i件拥有者的UserID 文件的GroupID 文件读.写.执行权限 文件的时间戳:ctime(inode上一次变动时间) mtime(文件内容上次变动的时间) atime(文件上次打开时间) 链接数,即有多少文件名指向这个inode 文件数据block的位置 inode大小: 每个inode节点的大小,一般是128字

Linux下的软链接与硬链接

首先聊聊Linux中使用哪个命令创建链接文件,然后咱们在聊聊软链接和硬链接的区别. 使用ln命令可以创建某个文件的链接文件 用法:ln [-s -v] src dest 创建一个硬连接文件:ln 原文件 硬连接文件 硬链接与源文件的inode号相同,使用stat命令可以查看文件的元数据信息. 创建一个软连接文件:ln -s 原文件 软连接文件 加-s表示创建软连接(符号链接) 注意:创建连接文件时,指定源文件时, "原文件的路径"可以是绝对路径也可以是相对路径,但是要注意,如果&quo

Linux软链接和硬链接文件

下面是Linux系统软件底层的存储结构,我们将从底层上来去解释Linux系统下的软硬连接文件 <一>: 解释(底层) 硬链接,其实从底层数据上来看, 硬链接其实就是增加了一个目录项.底层对应的inode table.数据区中的值是不变的, 也不会重新创建. 软链接, 其实从底层接上看, 软链接其实就是相当于重新创建了一个文件,, 无论是目录项,inode table,以及数据区都是重新重建的,而这个文件功能比较特殊, 它是用来指向另外一个文件的. <二>:命令的使用 硬链接命令:

Linux 软链接和硬链接的理解与学习

要想弄明白Linux的软链接和硬链接的概念,首先要明白linux是怎么管理文件的. 以下笔记部分内容来自互联网搜索,个人理解加以整合所得. 1. 文件系统 (作者:Vamei 出处:http://www.cnblogs.com/vamei/archive/2012/09/09/2676792.html) 文件被组织到文件系统(file system)中,通常会成为一个树状(tree)结构.Linux有一个根目录/, 也就是树状结构的最顶端.这个树的分叉的最末端都代表一个文件,而这个树的分叉处则是

linux中软链接和硬链接的区别与小结

ln命令 该命令在文件之间创建链接.这种操作实际上是给系统中已有的某个文件指定另外一个可用于访问它的名称.对于这个新的文件名,我们可以为之指定不同的访问权限,以控制对信息的共享和安全性的问题. 如果链接指向目录,用户就可以利用该链接直接进入被链接的目录而不用打一大堆的路径名.而且,即使我们删除这个链接,也不会破坏原来的目录. 语法:ln [选项] 目标 [链接名] ln [选项] 目标 目录 链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).