我正在尝试对硬盘进行分区以使其可用。我按照此关联对我的硬盘进行分区。我通过将分区数设置为 1 并在要求我输入起始和终止扇区号时选择接下来两个提示的默认选项来完成此操作。现在这使硬盘可用,但硬盘速度非常慢。我可以看到我的主分区(其中有五个分区,分别为 sda1、sda2...sda5)和辅助分区(其中只有一个分区 sdb1)之间的 I/O 时间差异很大。
- 为什么使用硬盘前需要分区?到底为什么要分区?
- 分区数量会影响 I/O 速度吗?据我所知,分区数量相当于在 Windows 中拥有不同的磁盘,例如,,
C:
这有助于用户很好地组织内容。如果我错了,请纠正我。D:
E:
- 最后但同样重要的一点是,如何使用二级分区来提高 I/O 速度?在起始和结束分区号处应该输入什么值?
答案1
你不需要对硬盘进行分区时提供多个分区。某些特定的分区工具可能会出于自己的目的而要求这样做,但大多数不会,我也不知道有哪个会这样做。链接中也没有提到分区数, 只有分区号也就是... 您要处理的分区的编号。MBR 中的分区有 4 个条目,这就是行中数字 1-4 的原因Partition number (1-4):
。
为什么使用硬盘前需要分区?到底为什么要分区?
因为磁盘只是一个带有随机磁化数据的表面。HDD 制造商首先进行低级格式化,将该表面划分为包含数据块的固定区域。当您将 HDD 买回家时,您将可以访问这些块,这基本上就像笔记本中的页面一样。现在要写入数据,您需要一个定义的结构来存储您所写的内容,否则您不知道您在哪些页面上写了物理课程或本月的数据表……
因此分区就像笔记本中的部分,每个分区都有自己的元数据来记录特定块是否为空白或用于哪些数据
分区的数量会影响 I/O 速度吗?
不。在古代,当你没有足够的内存在 RAM 中存储分区信息时,这种情况可能是存在的,但如今这几乎是无稽之谈。位置但是,分区会。但仅限于旋转磁盘,而不是固态存储设备(闪存)
如何使用二级分区提高 I/O 速度?在起始和结束分区号处应该输入什么值?
你通常什么也做不了。如果它慢得多,那么你的分区过程可能存在一些问题,例如错位。较旧的分区软件使用 CHS 系统(簇 - 磁头 - 扇区),因此它们将分区与每个磁道或磁头的开头对齐。现代驱动器使用左心室射血分数这会导致不同的对齐。如果你不知道正确的方法,手动计算扇区号也可能会导致错位
因此,您需要做的是使用 GUI 工具而不是命令行。如果您不知道该怎么做,分区是一个有风险的过程。即使我精通 CLI,我也总是使用 GUI 分区程序在分区时获得更好的可视化视图。如果您需要在多台机器上进行大规模自动分区,您可能希望这样做,而您的情况并非如此
只需打开第三方磁盘分区软件,如分区,MiniTool® 分区向导家庭版或者EaseUS® 分区大师,选择调整分区大小,它们会自动正确对齐
2006 年的那个链接也是非常旧的和过时的,请使用较新的。但您也不应该在安装之前进行分区,除非您想重新分区磁盘。对于过去几十年的任何操作系统,您已经可以选择在安装期间对磁盘进行分区。他们可以创建必要的分区,正确对齐它们,并根据需要添加更多分区
编辑:
sda
并且sdb
不同的驱动器,因此显然它们之间可能存在很大差异,因为接口、缓存、磁盘类型的属性不同……例如,如果第一个驱动器是 SSD,而第二个驱动器是 HDD,那么速度就会有很大差异(400-4000 MB/s vs 100-200 MB/s),每秒输入/输出次数(~100000 IOPS vs 50-100 IOPS)和延迟(10-100 μs vs 10-15 ms)
此外,secondary partition (which has only one partition sdb1) in it
这没有意义,因为一个分区不能包含另一个分区(除了扩展分区,它是逻辑分区的容器)
答案2
1)为什么使用硬盘前需要分区?为什么我们真的要这样做?
使用多个分区有多种原因:
磁盘空间保留:分区是固定大小的;如果您不小心将 /home 填满并且它是一个单独的分区,它不会影响“/”分区并且操作系统仍然会有自己的空间。
能够使用不同的文件系统:例如,您可以对 '/' 使用传统的 ext4,但对 '/var' 或 '/home' 使用一些花哨的东西。
通常,固件和/或引导加载程序仅能理解一组非常有限的文件系统 - 例如,UEFI 机器仅能理解 FAT32,但您肯定不想将整个磁盘都设为 FAT32,因此您有一个小型 FAT32 分区,其中只有与 EFI 相关的文件。BIOS 系统也是如此;许多引导加载程序仅能理解 ext2 之类的简单内容,无法从 zfs 或 btrfs 加载内核。
能够在单个磁盘上安装多个操作系统。
利用磁盘的物理特性,稍后将详细介绍。
如果你只想拥有一分区?好吧,从技术上来说,这不必需的磁盘工作时,通常这样做是为了保持一致性。当您已经有分区表和所有内容时,从一个分区转到多个分区(或从多个分区转回)很容易。但如果整个磁盘未分区且只是 mkfs,则稍后尝试对其进行分区可能会非常麻烦。
在 BIOS/MBR 系统上,分区表通常也会产生副作用,即存在一些未使用的空间之间表和第一个分区。从历史上看,GRUB 引导加载程序会自行安装到该空间中。这确实不太好,但是……这就是 GRUB 希望在 MBR 磁盘上能够做的事情。(幸运的是,它不再在 GPT 磁盘上执行相同的操作,而是采用常规分区。)
我通过将分区数设置为 1 来实现此目的
这不是分区总数;这是您正在创建的分区的序号。总数不需要预先指定。
我可以看到我的主分区(其中有五个分区,分别为 sda1、sda2 .. sda5)和辅助分区(只有一个分区 sdb1)之间的 I/O 时间存在显著差异。
你的意思是主要和次要磁盘?sda
并sdb
代表磁盘,而不是分区。(分区有自己的分区没有多大意义。)
大多数情况可能是由于磁盘本身的物理差异造成的。检查它们的型号等。例如,7200rpm 磁盘将比同龄的 5400rpm 磁盘更快,而现代 5400rpm 磁盘仍将比 15 年前的 5400rpm 磁盘更快,因为数据密度增加,而“健康”磁盘将比具有许多重新分配的坏扇区的磁盘更快,因为后者在读取数据时需要绕很多弯路。我希望 SATA/AHCI 连接的磁盘也能比 IDE 连接的磁盘运行得更快。
但...
2)分区的数量会影响 I/O 速度吗?
这数字分区本身不会影响分区。分区类型也不会影响分区(“主”与“次”只是为了绕过旧 MBR 分区格式的限制而采取的一种手段,它不会影响分区本身的工作)。
但正如你所注意到的,靠近磁盘“开始”的区域更快地工作比磁盘“末端”附近的区域更多,因为它们往往在物理上对应于实际旋转磁盘的外部和内部区域。
因此,当您在整个磁盘上有一个大分区时,操作系统会将文件或多或少均匀地分布在整个物理磁盘区域;其中一些文件将位于“快速”端,一些文件将位于“慢速”端。但是当您有多个小分区时,第一个分区(按起始扇区而不是按列表位置排序)将获得所有好处。
(免责声明:这可能完全是胡说八道)