inode

Linux 磁盘与文件系统管理

馋奶兔 提交于 2020-02-27 21:58:57
介绍一本书叫《Linux 鸟哥私房菜》, 一本教人用linux很经典的一本书,这两天又看了里面的一章节,做一点笔记。有一些很细节的东西的, 在平时运用过很容易被忽略。 1)U盘使用的文件格式一般是FAT格式,这种格式的读写的方式,是读定完一个black后才知道下一个black的位置。所以当各个black很分散,要做磁盘碎片整理。 2)Ext2是索引式文件系统,基本不太需要进行碎片整理。 3)Ext2一个block的大小是一般4K 4)block的大小与数量在格式化完就不能够再改变了,除了重新格式化。 5)每个black内最多只能够旋转一个文件的数据。 6)如果文件大于black的大小,则一个文件会占用多个black数据。 7)若文件大小小于black,则该block剩余的空间就不能够再被使用了。 8) 日志文件系统 为了避免系统突然中断而导致文件数据不一致的情况发生,linux在 filesystem当中规划出一个区块,该区块专门在记录写入或修订档案时的步骤.如下: 1. 预备:当系统要写入一个档案时,会先在日志记录区块中纪录某个档案准备要写入的资讯; 2. 实际写入:开始写入档案的权限与资料;开始更新metadata的资料; 3. 结束:完成资料与metadata的更新后,在日志记录区块当中完成该档案的纪录 在这样的程序当中,万一资料的纪录过程当中发生了问题

初始Linux软硬链接

拜拜、爱过 提交于 2020-02-25 15:08:40
转载 https://blog.csdn.net/libaineu2004/article/details/85918682 用实践让你明白“软链接”和“硬链接”的区别 展开 一、原理 在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号inode 。 软连接,其实就是新建立一个文件,这个文件就是专门用来指向别的文件的(那就和windows 下的快捷方式的那个文件有很接近的意味)。软链接产生的是一个新的文件,但这个文件的作用就是专门指向某个文件的,删了这个软连接文件,那就等于不需要这个连接,和原来的存在的实体原文件没有任何关系,但删除原来的文件,则相应的软连接不可用(cat那个软链接文件,则提示“没有该文件或目录“) 硬连接是不会建立inode的,他只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨越文件系统的。相反是软连接会重新建立一个inode,当然inode的结构跟其他的不一样,他只是一个指明源文件的字符串信息。一旦删除源文件,那么软连接将变得毫无意义。而硬链接删除的时候,系统调用会检查inode link count的数值,如果他大于等于1,那么inode不会被回收。因此文件的内容不会被删除。 硬链接实际上是为文件建一个别名,链接文件和原文件实际上是同一个文件。可以通过ls -i来查看一下

[转载]Linux文件类型

随声附和 提交于 2020-02-12 12:13:58
[转载]Linux文件类型 来源: https://blog.csdn.net/lf_2016/article/details/53844768 一、linux 下面所有东西都是文件,既然是文件那么这些文件类型又是如何进行区分的呢??? 在 windows 下面是通过文件的扩展名来区分文件类型的,但是在 linux 中却不是这儿样的。在 linux 中就没有所谓的文件扩展名,一个 linux 文件能不能被执行时取决于它的属性中是否有 x,与文件名一点关系都没有。一般我们所看到的文件扩展名只是为了给我们用户自己看的。 提到文件的话就不得不先来简单了解一下 inode。 inode: 索引结点,用来存放文件的基本信息。 inode 是 unix/linux 操作系统中的一种数据结构,本质上是一个结构体,里面定义了一些变量,这些变量用来记录与文件相关的信息。在操作系统创建文件系统的时候就会创建大量的 inode。 inode 这个结构体包含以下信息: 1、inode 编号 2、 用来识别文件类型,以及用于 stat C 函数的模式信息 3、文件的链接数 4、属主的 UID 5、属主的组的 ID(GID) 6、文件的大小 7、文件所使用的磁盘块的实际数目。 8、最近一次修改的时间 9、最近一次访问的时间 10、最近一次更改的时间 可见,除了文件名以及文件内容以外,inode

linux笔记(1)

早过忘川 提交于 2020-02-11 15:02:59
1- Linux系统启动流程: 硬件加电质检-->BIOS检测-->加载 MBR硬盘分区-->加载 linux内核-->加载init启动级别--->加载 rc.d/init进程-->加载 rc.local-->进入 mini-login 2- Apache有几种工作模式 有2种工作模式,分别是 worker和 prefork模式: 1. Worker模式:以多个线程提供服务,所有的线程共享内存空间,一个down掉,整个进程奔溃,适合高并发的场景。 2. Prefork模式:多个进程提供服务,比较稳定,占用内存高,提供中小访问并发 3- EXT4的文件分区,当用touch新建文件时报错,错误信息是磁盘已满,但是使用 df -h查看分区信息时只使用了 50% Block块文件, inode存放我们基础的信息数据,权限、大小的信息。 4- 符号链接和硬链接的区别 1. 软链接可以跨分区链接,软链接支持目录同时也支持文件的链接。软链接源文件与目标文件 Inode不相同,从某种意义上来,会消耗省 inode空间。 2. 硬链接不能跨分区链接,硬链接只能对文件生效,对目录无效,也即是目录不能创建硬链接。硬链接源文件与目标文件共用一个inode值,从某种意义上来,节省 inode空间。 5- 手动设置硬盘为 GPT格式 parted select /dev/sdb mklabel gpt

linux文件类型说明

时光毁灭记忆、已成空白 提交于 2020-02-11 10:44:34
1. 文件类型 文件属性字段总共有10个字母组成;第一个字符代表 文件的类型 。 字母 “b” 的表示块设备文件,一般置于/dev目录下,设备文件是普通文件和程序访问硬件设备的入口,是很特殊的文件。没有文件大小,只有一个主设备号和一个辅设备号。一次传输数据为一整块的被称为块设备,如硬盘、光盘等。最小数据传输单位为一个数据块(通常一个数据块的大小为512字节) 字母为 “c” 表示该文件是一个字符设备文件(character),一般置于/dev目录下,一次传输一个字节的设备被称为字符设备,如键盘、字符终端等,传输数据的最小单位为一个字节。 字母为 “p” 表示该文件为命令管道文件。与shell编程有关的文件。 字母“s”表示该文件为sock文件。与shell编程有关的文件。 “-”表示普通文件; “d”表示目录,是dirtectory(目录)的缩写; 其中: 目录或者是特殊文件,这个特殊文件存放其他文件或目录的相关信息 “l”表示链接文件,是link(链接)的缩写,类似于windows下的快捷方式; “p”表示管理文件; “b”表示块设备文件,是block(块)的缩写; “c”表示字符设备文件,是char(字符)的缩写; “s”表示套接字文件,是socket(套接字)的缩写; 2. 文件权限,分三组(UGO),每组三个(RWX): r(Read,读取权限):对文件而言

操作系统8:文件系统

帅比萌擦擦* 提交于 2020-02-09 23:09:05
文件系统 基本概念 文件是具有符号名的数据项的集合 行文件:以行为单位 文件的属性: 文件的标识是内部使用的编号,在文件系统内部并不使用文件名 文件操作通过系统调用的方式进行 打开和关闭都涉及到了内存和磁盘的交互 顺序访问: 目录 目录也是在磁盘中的,它是一种特殊的文件 目录的结构 整个目录系统中不允许重名 不好分组 这里的路径名表示的是用户的分组 树型就可以分组了 对树型目录进行更改,就可以实现目录的共享 这都好理解 悬空指针也不一定要操作系统解决,现在的操作系统也就没管 实际使用的时候尽量会避免环的产生 第一个方式太激进了,会限制功能 文件系统的安装和使用 也可以把几块硬盘通过RAID技术构成一个分区,多用于服务器 安装时可以安装在特定的安装点下: 新的硬盘要先建立文件系统 每个分区中要有引导信息 根分区:存放操作系统内核和其他系统文件 将分区加载到操作系统上时,会在内存中保留一份加载表来说明该分区的情况 文件的共享和保护 文件系统结构 文件由数据块和文件控制块两部分组成 文件系统在磁盘上而不是内存中 逻辑文件系统处理元数据 目录结构一开始放在磁盘上,但是要打开文件时,会将相关的一部分或者全部加载到内存中以便于查找文件在磁盘上的位置 除了每个进程有自己的文件打开表以记录该进程打开了哪些文件之外,系统也有一个总表来记录哪些文件被打开了

Linux inode 之我见

时光总嘲笑我的痴心妄想 提交于 2020-02-09 11:11:14
Linux硬盘组织方式为:引导区、超级块(superblock),索引结点(inode),数据块(datablock),目录块(diredtory block).其中超级块中包含了关于该硬盘或分区上的文件系统的整体信息,如文件系统的大小等;超级块后面的数据结构是索引结点,它包含了针对某一个具体文件的几乎全部信息,如文件的存取权限、所有者、大小、建立时间以及对应的目录块和数据块等;数据块是真正存储文件内容的位置.但是索引结点中不包括文件的名字,文件名是放在目录块里的.目录块里包含有文件的名字以及此文件的索引结点编号 硬盘盘片为圆形,每个硬盘盘片都有一个可以读写的磁头(Head),将这个磁头固定,使硬盘盘片旋转一周,所走轨迹就是磁道(Track)。硬盘内所有盘片的相同磁道号的集合成为磁柱(Cylinder)。每一磁道被划分成许多区域,每个区域叫一个扇区(Sector)硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。 硬盘的0磁道的第一个扇区称为MBR,它的大小是512字节,而这个区域可以分为两个部分。第一部分为pre-boot区(预启动区),占446字节;第二部分是Partition table区(分区表),占66个字节,该区相当于一个小程序,作用是判断哪个分区被标记为活动分区,然后去读取那个分区的启动区,并运行该区中的代码

Linux文件系统(inode、block……)

让人想犯罪 __ 提交于 2020-02-09 11:10:50
内容源于《鸟哥的Linux私房菜》    认识 EXT2 文件系统    文件系统的特殊观察与操作 文件系统 superblock,inode,block superblock,inode,block数据简略说明: superblock:记录此 filesystem 的整体信息,包括inode/block的总量、使用量、剩余量, 以及文件系统的格式与相关信息等; inode:记录文件的权限与属性,一个文件占用一个inode,同时记录此文件的数据所在的 block 号码; block:实际记录文件的内容,若文件太大时,会占用多个 block . 每个 inode 与 block 都有编号,而每个文件都会占用一个 inode ,inode 内则有文件数据放置的 block 号码.所以如果能够找到文件的 inode 的话,那么自然就会知道这个文件所放置数据的 block 号码, 当然也就能够读出该文件的实际数据了. data block (数据区块) block 基本限制: 原则上,block 的大小与数量在格式化完就不能够再改变了(除非重新格式化) 每个 block 内最多只能够放置一个文件的数据 若文件大于 block 的大小,则一个文件会占用多个 block 数量 若文件小于 block ,则该 block 的剩余容量就不能够再被使用了(磁盘空间会浪费) 在 Ext2

Linux的磁盘与文件管理系统(1)

别说谁变了你拦得住时间么 提交于 2020-02-09 11:10:24
Linux的磁盘与文件管理系统(1): 一:扇区为最小的物理单位每个为512字节,将扇区组成一个圆那就是柱面,柱面为分区的最小单位,第一个扇区里面有硬盘的主引导记录,那就是MBR与分区表,其中MBR有446个字节,分区表有64个字节。各种接口的磁盘在LINUX中的文件名为/dev/sd[a-p][1-15]:为SCSI,SATA,USB,FLASH等接口的磁盘文件名,/dev/hd[a-d]:为IDE接口的磁盘文件名。磁盘分区是发奋分区的起始柱面与结束柱面,分区表最多能够有四表分区的记录,为住分区与拓展分区的记录,主分区与拓展分区最多有4个(磁盘限制),拓展分区最多有一个(操作系统的限制) 二:文件系统的特性: 格式化的意义:每种操作系统所设置的文件属性/权限不相同,为了存放这些文件需要的数据,需要将分区进行格式化,成为操作系统能够利用的文件系统格式。 Linux的正规文件需要的文件系统为ext2默认情况下windows操作系统不能够识别ext2文件系统。 Linux下文件系统将文件权限与文件属性这两部分的数据放在不同的块中,权限与属性放在INODE中,他的实际数据房子data block 中,还有一个超级块,叫做superblock会记录整个文件系统的整体星系,包括inode与block的总量,使用量,剩余量根据INODE将block中的内容读出来的数据访问方式叫做索引式文件系统

linux 文件系统(inode和block)

夙愿已清 提交于 2020-02-09 11:09:56
linux文件系统(inode block superblock) 先说一下格式化:每种操作系统所设置的文件属性/权限并不相同,为了存放这些文件所需的数据,因此就需要将分区格式化,以成为操作系统能够利用的文件系统格式。linux的文件格式为Ext2/Ext3,现在好像已经到了Ext4.windows 操作系统为vfat或者NTFS。 linux文件系统: 操作系统的文件数据除了文件实际内容外,还有非常多的属性,如文件权限(rwx)与文件属性(所有者、群组、时间参数等)。 文件系统通常将这两部分数据存放在不同的块。权限属性放到 inode 中,实际数据放到 data block 中。 还有一个超级块(super block)会记录文件系统的整体信息,包括 inode 与block 的数量、使用量等。 inode:记录文件属性,一个文件占用一个inode,同时记录此文件的数据所在的block号码; block:实际记录文件的内容,若文件太大时会占用多个 block ; super block:记录文件系统的整体信息,包括inode/block 的总量、使用量、剩余量,以及文件系统的格式与相关信息等。 每个inode与block都有编号,而每个文件系统都会占用一个inode,inode中有文件数据放置的block号码。我们可以找到文件的inode,然后找出文件所放置数据的block号码