硬盘的物理图
文章图片
文章图片
分区类型
主分区 最多只能有4个。(硬盘结构决定扇区512字节446启动64分区表示16个表示一个分区)
『 如果您要分割硬盘时,并且已经预计规划使用掉 MBR (主要开机扇区)所提供的 4 个 partition ( 3P + E
(extended)4P)那么磁盘的全部容量需要使用光,否则剩下的容量也不能再被使用』
扩展分区 最多只能有1个。
主分区加扩展分区最多有4个。
不能写入数据,只能包括逻辑分区。
逻辑分区 因为主分区最多只能有四个,扩展最多一个,故逻辑分区的区号从5开始
文件系统
? 传统文件系统: ext2 / minix / MS-DOS / FAT (用 vfat 模块) / iso9660 (光盘)等等;
? 日志式文件系统:
ext3 / ReiserFS / Windows' NTFS / IBM's JFS / SGI's XFS
? 网络文件系统: NFS / SMBFS
格式化含义
定义 格式化(高级格式化)又称为逻辑格式化,它是指根据用户选定的文件系统(如FAT16/FAT32/NTFS/EXT2/EXT3
/EXT4等)
为什么要格式化 【ubuntu系统分区】如果我的盘本来就是空的那为什么还要格式化呢?
格式化为『我的操作系统认识的档案系统( Filesystem )』
因为每个操作系统认识的 filesystem 并不相同!
在磁盘的特定区域写入特定数据,在分区中划出一片用于存放文件分配表/目录表等用于文件管理的磁盘空间。
格式化过程
做了什么
a.将盘分区的文件系统转换为特定的。(也是因为修改了文件系统所有里面内容都清空了)
b.将盘内的空间分成一个一个的数据块(block)【数据操作的基础】
c.建立表:ID号(INode节点) 修改时间 权限(这个就是为以后往里面写数据打好基础)
有什么
文章图片
?SuperBlock:Superblock 是记录整个 filesystem 相关信息的地方, 没有Superblock ,就没有这个 filesystem 了。他记
录的信息主要有:
o block 与 inode 的总量;
o 未使用与已使用的 inode / block 数量;
o 一个 block 与一个 inode 的大小;
o filesystem 的挂载时间、最近一次写入数据的时间、最近一次检验磁盘 (fsck) 的时间等档案系统的相关信
息;
一个 valid bit 数值,若此档案系统已被挂载,则 valid bit 为 0 ,若未被挂载,则valid bit 为 1 。
?Group Description:纪录此 block 由由何处开始记录
?Block bitmap:此处记录那个 block 有没有被使用;
?Inode bitmap:此处记录那个 inode 有没有被使用;
?Inode table:为每个 inode 数据存放区;
? Data Blocks:为每个 block 数据存放区。
#由于这样分成一个一个数据块的时候对数据的读取写操作都是以块为单位,所以数据块分的大小直接影响了操作的快慢(因为硬盘
是拖后腿的.....)
所以合适的分块有以下作用:
? 档案读取的效能
? 档案大小可能造成的硬盘空间浪费
小知识:每个文件系统开始的位置的那个 block 就称为 superblock ,superblock 的作用是储存像是档案系统的大小、空的和填满的区
块,以及他各自的总数和其它诸如此类的信息等等, 这也就是说,当您要使用这一个磁盘分割槽( 或者说是档案系统 )来进行数据存取的
时候,第一个要经过的就是 superblock 这个区块了,所以啰, superblock 坏了,您的这个磁盘槽大概也就回天乏术了!
怎么读取数据
读取 /etc/crontab 的流程为:
1.操作系统根据根目录( / )的相关资料可取得 /etc 这个目录所在的 inode ,并前往读取 /etc 这个目录的所有相关属性;
2.根据 /etc 的 inode 的资料,可以取得 /etc 这个目录底下所有文件的关连数据是放置在哪一个Block 当中,并前往该 block 读取文件的关连性内容;
3. 由上个步骤的 Block 当中,可以知道 crontab 这个文件的 inode 所在地,并前往该 inode ;
4. 由上个步骤的 inode 当中,可以取得 crontab 这个文件的所有属性,并且可前往由 inode 所指向的 Block 区域,顺利的取得 crontab 的文件内容。
挂载
什么是挂载点
挂载点:就相当于windows里面的分配盘符一样
#挂载点一定是『目录』而不是文档。
#挂载之后就是给系统一个访问盘里面内容的入口,所以要访问盘里面的内容就一定要挂载!!!
装系统分区问题
必须分区:/(根分区)
swap(交换分区,内存2倍,不超过12GB)<4G2bei> 一样虚拟内存
推荐分区:/boot(启动分区,200MB)
总结: 系统分区过程
1. 对磁盘进行分割,以建立可用的 partition
2. 对该 partition 进行格式化(不是简单的清空),以建立系统可用的 filesystem
3. 分区设备文件名:给每个分区定义设备文件名
4. 将它挂载(分配盘符)起来
推荐阅读
- Linux|109 个实用 shell 脚本
- linux笔记|linux 常用命令汇总(面向面试)
- Linux|Linux--网络基础
- linux|apt update和apt upgrade命令 - 有什么区别()
- linux|2022年云原生趋势
- Go|Docker后端部署详解(Go+Nginx)
- 开源生态|GPL、MIT、Apache...开发者如何选择开源协议(一文讲清根本区别)
- GitHub|7 款可替代 top 命令的工具