第3节. MBR和GPT分区管理工具详解

img

fdisk和gdisk基本一样,

img

img

img

img

上图说明虽然分区删了,但是分区的类型还在(protection MBR里的55aa还在,可以通过dd将整个b硬盘的512B清空,这里B盘就啥信息也没有了)。

img

img

img

此时就是没有任何信息的硬盘了,初始接进来的硬盘就是这样显示的了。

这个时候就可以用一些工具对其重新管理(比如分区)。

img

img

img

保存退出,没有做任何设置

img

img

img

img

扩展分区是5,swap82,主分区是83

默认都是83,将来可能根据实际情况修改ID

只是一个标签,并不是功能性的强制标识。

img

img

img

img

img

img

就是说当前0个主分区,0个扩展分区,4个都是空闲的。

img

img

img

如上图,可以直接划分e扩展分区,从2开始,也不一定非要从1开始。

img

划分之后一个p就能看到当前划分的结果

img

上图是以扇区起始位置标记的,再一个就是ID是5,就是扩展分区的标识。

img

而且上图观察p和l,以前是p和e,其实就是说扩展分区就一个嘛,然后都是在其上划分逻辑分区了。

img

img

注意上体逻辑分区是从扩展分区的4096个扇区开始而不是2048个扇区开始的,所以你要知道每个逻辑分区的头部还有一个EBR字段里面都是本段分区的元数据来着。

img

img

逻辑分区也是ID85,

img

img

上上图的5也是自动的,固定的 扩展分区上的逻辑分区都是从5开始编号的。

img

img

上图就说明一个问题,逻辑分区的设备名是不稳定的。

你将来设备名你写到磁盘配置文件里面,你后来分区调了一下,很可能分区名就变了。

所以逻辑分区不适合写到配置文件里。

这就需要找一个不变的东西来应对。后面会讲到。

img

img

img

同时上图带来的问题就是,如下图:

img

img

这才2G的最大空间,所以超出了,注意2G是扇区相减后乘以512B可得出。 # 这句话也是错的,上图是1G的空间,算法是对的,结论是错的。

image-20230106150059856

下面修改一下分区ID

img

img

L是你记不住了就看下ID有哪些可以选择的。

img

关注上图的82 83 8e

fd是软raid

还有一些淘汰的技术

img

img

上图是修改分区id之前的sdb3的id为83

下图是修改为82

img

img

image-20220224095234515

此时还未存盘退出(w),此时是否真的分区成功了没?👇

3种看分区的方法

img

img

img

img

上面4个方法都是没看到b硬盘上有分区的。

然后w存盘退出后,再观察

img

img

img

img

硬盘里的分区表和内存里的分区表并不是时时同步的,也就是说fdisk 分区的时候,w保存退出后并不是时时同步的。很多时候硬盘上的分区表分好了,但是内存中的没有。

==========================

img

centos6,以柱面为分区单位的,一个柱面8M

img

image-20220224100742051

img

观察上面WARING,告诉你reboot后就同步了、partprobe或kpartx也行。

img

img

此时centos6的磁盘确实分区了,但是内存中同步不了。

img

不跟选项,但是要跟同步的设备哦

img

上图就是centos6的bug命令,不好使。记住了!!!partporbe在centos5和7上都可以,就是在centos6上不行。

img

可以kpartx,或者只直接partx

img

其实centos8是有-h的

img

img

img

报警error不用管,就看结果对不对-sda6出没出来就行了

img

img

img

上面partx -a是添加分区同步,删除分区同步用-d

img

img

但是内存里还在

img

img

img

img

img

====================================

img

img

img

centos7也同样出现了waring

img

img

img

------------------------------------------------

img

但实际效果应该是没有的,即使partprobe同步了。

img

img

img

虽然对分区再分区,且同步了,但是最终还是看不到的。

img

img

img

img

----------------------------------------------------

需求:将B硬盘分区分的和A一样

思路:复制A的分区表就行了。

操作:不就是A的那个64字节么,扣出来复制到B那边就行了。

img

img

img

img

所以克隆只能克隆主分区和扩展分区。但是没有办法克隆逻辑分区,因为512B里的64B是MBR,而逻辑分区是EBR是再扩展分区里的。

1、克隆的目标硬盘空间要大于等于原硬盘;

2、无法克隆逻辑分区,只能克隆主分区和扩展分区。

img

不过怎么看图上EBR也是可以克隆的啊。估计就是EBR比较多分散,MBR固定好操作。EBR还要计算。

再来,B硬盘和A硬盘一样大,此时克隆MBR就很OK了。

img

EBR的位置不在MBR那边,你克的是512的MBR里的64B,EBR在后面的扩展分区里面的EBR头

img

这个就是永久保存了,不存在再write,w写的动作了。

========================================

gdisk 主要用来分GPT格式的区

img

img

都是和fdisk一样的

img

img

82\8e这些都在

img

img

分区太多了,清一下,fdisk肯定可以清,就是太慢了

这么记笔记太慢了,体会不到学习的乐趣和快感!,,,i need fly,时隔1年,no u need 跬步

img

img

上图hexdump -C -n 512 /dev/sdb -v加个v就能看全部的0,上图默认是省略连续的0了。

不过为啥中间有28 c7 86 4a这几个值,而且我的centos 8 的情况也不符合这里所讲的,但是肯定centos8是使用正常的,那是因为我sb了,因为下图看错了,应该是sda而不是sda1。

img

image-20220224110647011

img

如果把数据放在硬盘的磁道的外圈,速度读取和写入就快,如果是内圈就慢。所以再看看内外圈。

如果是centos-6的话就很清楚,本身有柱面,数字越小就越在外圈。越往里数字越大。

img

所以分区划分编号越小数字越快。6和7就是偏内圆了。

img

如果你希望数据读取快点,就将数据放到前面的分区。能提高个百分之几就不错了。

img

img

img

sda6里面全是0,你把数据放进去也只能0101往外读,因为还它没有文件概念。

创建完文件系统才有文件的概念,目录、属性、分门别类这些东西才会有。

注意力,持续

不同的文件系统除了必备的功能-文件管理功能,有的可能还有一些额外的功能。比如,NTFS除了文件管理,还有加密、

img

这就是windows的NTFS加密,只要看到 "安全"选项 就是NTFS系统

右键-属性-高级-加密就行了。

这是对别人是打不开的,而本人是无需的还是正常操作,没有影响(打开时自动解密,保存的时候自动解密)。

ext\xf系统的没有这个额外的加密功能。

但是基本的管理文件功能必然都是有的。

对于linux 来说 xfs 、 ext 文件系统:

img

linux支持的文件系统👇

img

当然也可以

img

这是目前linux里支持的文件系统类型。

img

img

img

在centos6上都是ext的

img

ubuntu用的也是ext

img

img

centos 7用了个xfs,而ubuntu用的是ext4

ext1没有存在感,ext2存在重大bug,容易奔溃无法恢复,所以后来有了ext3

ext3的日志出现的优点:当系统写数据之前是先写日志的,日志一定是先于数据写,写好日志信息以后再把日志信息同步到磁盘里去,好处就是:

①万一日志写完了,还没来得及存盘,系统突然奔溃没关系有日志可以还原。②如果写日志的时候突然奔溃了,没关系,日志大不了不用了,数据又没破坏。

三刷的时候发现其实本质还是,目录和内容的关系,日志和内容都是数据,只不过日志是内容的简述,日志可以很短的时间内完成写同步的操作,内容量大的时候就比较耗时,所以加了日志容错变好些了。

img

读取文件,内存中修改,写到日志里,再写到磁盘里。

img

如果③和④中间断电,系统起来后,磁盘同步日志就好了。

如果③没完成,大不了日志丢了,数据还是完整的。大不了没更新嘛。

但是要注意,如果②没写完,写了30%假如断电了,那么日志里是有30%更新的,而系统后面起来后,磁盘同步日志,那么还是有70%数据没写进去的。

ext3的问题,性能问题在大磁盘中得到凸显,大磁盘T级别的比如,健康检查耗时达数小时之久。

为了解决这个 问题就推出了ext4,相对于ext3性能得到了巨大提升。以前小时级别的,现在分钟级别了就。

但是ext4支持的文件大小有局限性。家庭都是T级别了,生产中高达P级别。

于是xfs文件系统更大了,性能更高,但是linux上单一文件不会超出ext4的局限是,所以unbuntu上还是继续使用的ext4。

插入,在生产中拷贝大量数据时要限速,否则后果兜不住!找个空闲的时候,加上限速复制就差不多了。

img

上图的btrfs

img

xfs:SGI是老牌的UNIX的厂家。早期的大片泰坦尼克号就是用SGI工作站做的。

btrfs是oracle的号称很优秀的文件系统。centos7上有不过是测试阶段,centos8就不在支持了,该文件系统就没有流行起来。

jfs在AIX小机上用的文件系统。

swap 和 iso9660光盘

FAT12是软盘,

img这些是windows的文件系统。

exFAT是U盘的文件系统

U盘右键格式化的时候可以看到

img

refs是新的了看来

除了上面的单机的文件系统,还有网络文件系统

img

还有

img

还有就是分了区但是没有创建文件系统的情况,就是RAW。空文件系统、裸的文件系统。oracle,为了高性能,把数据库的data直接放到RAW上,就是0101010没有文件系统直接存盘,利用oracle自家软件直接利用010101去访问磁盘,由于中间没有文件系统这层,所以读取速度更快,缺点就是没有文件系统,如果oracle软件出问题,运维管理是个麻烦。

img

Copyright 🌹 © oneyearice@126.com 2022 all right reserved,powered by Gitbook文档更新时间: 2024-07-28 14:47:34

results matching ""

    No results matching ""