介绍一本书叫《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的更新后,在日志记录区块当中完成该档案的纪录
    在这样的程序当中,万一资料的纪录过程当中发生了问题,那么我们的系统只要去检查日志记录区块,就 可以知道那个档案发生了问题,针对该问题来做一致性的检查即可,而不必针对整块filesystem去检查, 这样就可以达到快速修复filesystem的能力了!这就是日志式文件最基础的功能。

9)Ext3是Ext2的升级版  具有 可利用性,数据完整性, 速度及转换的特点。
10)目录
      1.当文件系统新建一个目录时,ext2会分配一个inode和至少一块block给这个目录。可以用 ls -i查看inode号码
      2.在一个目录下面如果文件过多,会导致一个block无法容纳,Linux会多给该目录block。
11) 文件
      1.当文件系统新建一个文件时,ext2会分配一个Inode和相对该文件大小 的block数据给该文件。
      2.inode仅12个直接指向,其他是间接指向 双间接指向,三间接指向
 12)挂载点(mount point)
     1.将文件系统与目录结合的操作 称为挂载
     2.挂载点一定是目录,该目录为进入该文件系统的入口
     3.文件系统最顶层的目录的inode一般为2号
     4.单一文件系统不应该被重复挂载在不同的挂载点(目录)中
     5.单一目录不应该重复挂载多个文件系统
     6.作为挂载点的目录理论上应该都是空目录,如果有文件会被清空
 13)常见支持的文件系统
     1.传统文件系统:ext2/minix/MS-DOS/FAT(用vfs模块)/iso9660(光盘)等
     2.日志文件系统:ext3/ReiserFS/Windows'NTFS/IBM'sJFS/SGI'sXFS
     3.网路档案系统:NFS/SMBFS
     4.想知道Lininx支持文件有哪些,查看方法:ls -l /lib/modules/$(uname -r) /kernel/fs
     5.系统目前已加载到内存中支持的文件系统则有:cat /proc/filesystems
 14)Linux VFS 
     1.VFS  就是虚拟文件系统 (Virtual Filesysterm Switch)
     2. Linux 通过VFS管理所有它认识的文件系统
     3. 如图
                
 

15)硬连接

      由文件系统,我们可以得知:
      1.每个文件都会占用一个inode,文件内容由inode的记录来指向;
      2.想要读出文件,必须要经过目录记录的文件来指向正确的inode号码来读取。
     所谓的硬连接就是多个文件名对同一个inode。
     如图:
             
      要注意两点:
      1.不能跨文件系统
      2.不能连接目录
 

16) 符号连接

      1. 符号连接, 也称软连接,英文是 symbolic link
      2.符号连接在创建一个独立文件,而这个文件会让数据的读取指向它连接的那个文件的文件名。当源文件被删除时,符号连接会打不开。
      3.符号连接文件和源文件指向不同的inode。1的文件名指向了2的inode.由2的inode指向文件内容。
      4.原理如图:
 
                     
 
 
 
 

Linux 磁盘与文件系统管理的更多相关文章

  1. Linux磁盘与文件系统管理笔记

    ### Linux磁盘与文件系统管理 linux 最传统的文件系统格式是EXT2,centos7 默认文件系统是xfs(日志式文件系统) 磁盘的组成: 盘片 机械手臂 主轴马达 (机械硬盘) 磁盘格式 ...

  2. Linux学习笔记—Linux磁盘与文件系统管理(转载)

    认识EXT2文件系统 文件的系统特性 Linux的正规文件系统为Ext2 文件数据除了文件实际内容外,还包括其他属性(文件权限.文件属性). 文件系统将这两部分数据分别存放在不同的块,权限和属性放在i ...

  3. Linux学习笔记之Linux磁盘及文件系统管理笔记

    Linux磁盘及文件系统管理 CPU,memory(RAM),I/O i/o: disks,ehtercard disks:持久存储数据 接口类型: IDE(ata): 并口,133MB/s;并行总线 ...

  4. Linux磁盘与文件系统管理概要

    Linux磁盘与文件系统管理 硬盘组成与分区 硬盘组成 圆形的盘片(主要记录数据) 机械手臂与磁头(可读取盘片上的数据) 主轴马达,转动盘片,让机械手臂的磁头在盘片上读取数据 扇区(Sector)为最 ...

  5. Linux磁盘及文件系统管理

    在LINUX中我们知道一个很重要的概念,那就是"一切皆文件",这里的一切表示所有在LINUX系统的对象,自然也包括了LINUX中的硬盘设备.在LINUX中所有设备都被抽象成一个文件 ...

  6. Linux入门-3 Linux磁盘及文件系统管理

    1. 磁盘基本概念 1.1 磁盘结构:盘片(单碟vs多碟).磁头(读写数据) 1.2 磁盘在Linux中的表示 1.3 分区概念 2 使用fdisk进行磁盘管理 3 Linux文件系统 mke2fs ...

  7. Linux磁盘及文件系统管理1

    RHCSA认证中的东西: Linux系统管理包括的内容有: 磁盘分区及文件系统管理 RAID LVM 网络属性管理 程序包管理 sed and awk 进程查看和管理 内核管理(编译和安装) 系统启动 ...

  8. 鸟哥Linux私房菜 基础学习篇读书笔记(10):Linux磁盘和文件系统管理(3)

    本文总结了Linux操作系统来管理我们的硬盘和文件系统需要使用命令.当我们在系统中增加一个硬盘驱动器.什么是我们需要去通过这个硬盘就可以真正使用步骤?下面步骤: (1)对磁盘进行分区,新建能够使用的分 ...

  9. 鸟哥的Linux私房菜 基础学习篇读书笔记(9):Linux磁盘与文件系统管理(2)

    上一篇文章主要从理论上分析了Linux的Ext2文件系统.这一篇主要解说怎样查看Linux的文件系统的容量以及解说Linux文件系统中的连接文件. 能够通过df和du命令来查看磁盘与文件夹的容量.df ...

  10. Linux磁盘及文件系统管理4

    文件系统的使用: 首先要“挂载”:mount命令和umount命令 根据文件系统之外的其它文件系统要想能够被访问,都必须通过“关联”到根文件系统上的某个目录来实现,此关联操作即为“挂载”:此目录即为“ ...

随机推荐

  1. 自定义ConfigurationSection,创建多个嵌套的ConfigurationElementCollection节点

    由于接口地址都是固定的,所以想到使用自定义节点,来将接口都配置到web.config中. 很快,v1.0版本出炉: public class RequestConfigSection : Config ...

  2. petapoco-SQLServer模型增加注释

    petapoco是个基于T4模板的轻量级ORM,好用效率高,具体介绍略了 获取注释基本原理是调用数据库::fn_listextendedproperty函数,获取扩展属性MS_Description ...

  3. DataSet与DataTable对象

    DataSet与DataTable对象 摘自:http://www.cnblogs.com/fttbfttb/articles/1509662.html DataSet对象 DataSet是ADO.N ...

  4. 做java工作整整1年了,看到了大牛的奋斗历程,我感觉自己又有目标了

    2014年6月,刚刚踏上社会那会儿,我记得我第一次面试啥都不知道,穿的也不修边幅去应聘一家4s销售,面试官看到我,我明细感觉到了对方厌恶的神色,这是我上社会的第一课,找工作不管是什么工作,衣着得体,是 ...

  5. 那些教程没有的php1-基础知识补漏

    php.net 字符串 heredoc结构 类似双引号,其中的变量会被解析.严格遵循下边的格式,结束标识符这行除了可能有一个分号(;)外,绝对不能包含其它字符. <?php $str = < ...

  6. ASP.NET本质论第一章网站应用程序学习笔记3-对象化的Http

    在.NET环境下,万物皆对象,在HttpRuntime收到请求之后,立即将通过HttpWorkerRequest传递的参数进行分析和分解,创建方便用于网站应用程序处理用的对象,其中主要涉及到两个对象类 ...

  7. 详解HTML5中rel属性的prefetch预加载功能使用

    在HTML5中,有个很有用但常被忽略的特性,就是预先加载(prefetch),它的原理是: 利用浏览器的空闲时间去先下载用户指定需要的内容,然后缓存起来,这样用户下次加载时,就直接从缓存中取出来,效率 ...

  8. 为什么Android应该根据屏幕分辨率来加载不同的图片文件

    1.图片在xxhdpi,手机是hdpi的 我们有一个手机是hdpi的.我们还有一个图片,我们把他放在xxhdpi下.当手机显示的时候,系统会去hdpi中找,发现没有图片,最终在xxhpi中找到.终于找 ...

  9. 浅谈PopupWindow弹出菜单

    实现将一个View显示在某一位置,而且是浮于当前窗口 首先要有一个要显示的view的布局,可以是任意View,包括ViewGroup <?xml version="1.0" ...

  10. Lucene总体架构

    Lucene总的来说是:• 一个高效的,可扩展的,全文检索库.• 全部用Java实现,无须配置.• 仅支持纯文本文件的索引(Indexing)和搜索(Search).• 不负责由其他格式的文件抽取纯文 ...