磁盘分区详解
全新硬盘装系统之前,必须对其进⾏分区,硬盘分区初始化的格式主要有两种:传统的MBR(MasterBootRecord,即主引导记录)和新的
GPT(GUIDPartitionTable)。后者功能更强⼤,解决了MBR的许多限制。
MBR
MBR早在1983年IBMPCDOS2.0中就已经提出。之所以叫“主引导记录”,是因为它位于驱动器开始部分的主引导扇区,是硬盘的第⼀扇
区。它由三个部分组成:Bootloader、硬盘分区表DPT和结束标志字。
第⼀部分为Bootloader,位于主引导扇区的前446个字节,偏移地址为0000H--0088H,是⼀⼩段代码,⽤于加载硬盘上其他分区上更
⼤的加载器(如操作系统的启动加载器)。如果你安装了Windows,Windows启动加载器的初始信息就放在这个区域⾥。如果MBR的信
息被覆盖导致Windows不能启动,你就需要使⽤启动优盘中DiskGenius软件提供的重建MBR功能来使其恢复正常。如果你安装了
Linux,则这⾥通常存储的是GRUB启动加载器的初始信息。该区域主要提供以下三个功能:
提供启动引导菜单:使⽤者可以在该菜单中选择启动不同的开机项。在系统未加载前按下主板快速启动的快捷键就可以看到该菜单;
指向开机所需的核⼼⽂件来启动操作系统;
还可将开机引导权交给其它loader。每个分区也拥有⾃⼰的启动扇区(Bootctor),开机引导程序除了可以装在这⾥外,还可装在各
分区的启动扇区。
第⼆部分为Diskpartitiontable区(DPT分区表),占64个字节,偏移地址为01BEH--01FDH,记录整个磁盘分区的状态,每16个字
节标记⼀个分区,因此最多可记录4个分区。分区的单位是柱⾯,每个16字节的记录区记录了该分区从开始到结束的柱⾯号。所谓的分区操
作即是对分区表进⾏设置,当⽂件系统要写⼊磁盘时,⾸先会参考分区表。在MBR分区表中,逻辑块地址采⽤32位⼆进制数表⽰,因此⼀
共可表⽰2的32次⽅个逻辑块地址,所以,MBR硬盘最⼤分区容量仅为2.2TB=2^32512bytes;
第三部分是结束标志字,占2个字节,偏移地址为01FEH--01FFH。固定为55AA,是检验主引导记录是否有效的标志。该标志错误将导致
系统不能启动。
上⾯所说的分区为主分区(primarypartition)。⼀个磁盘或者RAID卷上只能有4个可启动的主分区。如果MBR分区⽅案需要使⽤4个以
上的分区,那就需将⾄少⼀个主分区作为扩展分区(extendpartition),然后在该扩展分区上⾯建⽴若⼲个逻辑分区(logicpartition)。扩展
分区可以被看作是容纳逻辑分区的容器。硬盘上最多只能有1个扩展分区(操作系统的限制)且其本⾝不能格式化,必须划分逻辑分区后才能使
⽤,但扩展分区中的逻辑分区没有数量限制。扩展分区也被看作是⼀个主分区,因此,在存在扩展分区的情况下最多只能再建3个主分区(3个
主分区加1个可包含多个逻辑分区的扩展分区)。
扩展分区中逻辑驱动器的引导记录是链式的。每⼀个逻辑分区都有⼀个和MBR结构类似的扩展引导记录(EBR),其分区表的第⼀项指向该逻
辑分区本⾝的引导扇区,第⼆项指向下⼀个逻辑驱动器的EBR,分区表第三、第四项没有⽤到。
BIOS
BIOS(BasicInputOutputSystem)即基本输⼊输出系统,它是个⼈电脑启动时加载的第⼀个软件。其实,它是⼀个存储在计算机内主板
BOIS芯⽚上的程序,它保存着计算机最重要的基本输⼊输出的程序、加电⾃检程序(PowerOnSelfTest,简称POST⾃检)和系统启动程序
等。
⼀般在计算机启动时按F2或者Delete即可进⼊BIOS程序进⾏设置(⼀些特殊机型按F1、Esc、F12等进⾏设置)。其主要功能是为计算机
提供最底层的、最直接的硬件设置和控制。
UEFI
UEFI的全称是UnifiedExtensibleFirmwareInterface,意即统⼀可扩展固件接⼝,它是基于EFI1.10标准为基础发展⽽来,值得注意的是
在UEFI正式确⽴之前,Intel就开始积极推进传统BIOS的升级⽅案,并最终确⽴了过渡⽅案EFI标准,直到2007年Intel将EFI标准的改
进与完善⼯作交给UnifiedEFIForm进⾏全权负责,EFI标准则正式更名为UEFI。UEFI其实和BIOS是同⼀类程序,是随着硬件发展⽽出现
的BIOS升级版,被看做是有近20多年历史的传统的(Legacy)BIOS的继任者。UEFI⼀般就是指UEFIBIOS环境,⽽和UEFI⽐较时的所
说的BOIS则是指传统的BIOS环境。
相⽐BIOS,UEFI的⼀些优点在于:
1.⾼效开发。BIOS开发⼀般采⽤汇编语⾔,代码多是硬件相关的代码。⽽在UEFI中,绝⼤部分代码采⽤C语⾔编写,UEFI应⽤程序和驱动
甚⾄可以使⽤C++编写。UEFI通过固件操作系统接⼝(BS和RT服务)为OS和OS加载器屏蔽了底层硬件细节,使得UEFI上层应⽤可
以⽅便重⽤。
2.可扩展性。UEFI的模块化设计在逻辑上分为硬件控制与OS(操作系统)软件管理两部分,硬件控制为所有UEFI版本所共有,⽽OS软件管
理其实是⼀个可编程的开放接⼝。借助这个接⼝,主板⼚商可以实现各种丰富的功能。⽐如我们熟悉的各种备份及诊断功能可通过UEFI加以
实现,主板或固件⼚商可以将它们作为⾃⾝产品的⼀⼤卖点。UEFI也提供了强⼤的联⽹功能,其他⽤户可以对你的主机进⾏可靠的远程故障
诊断,⽽这⼀切并不需要进⼊操作系统。
3.缩短启动和休眠恢复时间。UEFI可运⾏于32位或64位模式,突破了传统16位代码的寻址能⼒,达到处理器的最⼤寻址,此举克服了
BIOS代码运⾏缓慢的弊端。
4.启动的安全性。当系统的安全启动功能被打开后,UEFI在执⾏应⽤程序和驱动前会先检测程序和驱动的证书,仅当证书被信任时才会执⾏这
个应⽤程序或驱动。UEFI应⽤程序和驱动采⽤PE/COFF格式,其签名放在签名块中。
5.更⼤的磁盘容量和分区数量。传统MBR分区最⼤只能⽀持2.2TB的硬盘和4个主分区,⽽UEFI规范之⼀的GPT分区格式,则可以⽀持
过百TB⼤⼩的硬盘和100个主分区。
6.兼容性。与BIOS不同的是,UEFI体系的驱动并不是由直接运⾏在CPU上的代码组成的,⽽是⽤EFIByteCode(EFI字节代码)编写⽽
成的。EFIByteCode是⼀组类似于Java类⽂件的虚拟机器指令,必须在UEFI驱动运⾏环境下被解释运⾏,由此保证了充分的向下兼容
性。
7.⿏标操作。UEFI内置图形驱动功能,可以提供⼀个⾼分辨率的彩⾊图形环境,⽤户进⼊后能⽤⿏标点击调整配置,⼀切就像操作Windows
系统下的应⽤软件⼀样简单。
相⽐传统的BIOS,UEFI还提供了⽂件系统的⽀持,它能够直接读取FAT、FAT32分区中的⽂件,例如华硕、华擎等主板在UEFI环境下更新
BIOS就可以直接读取U盘中的BIOS及其他⽂件,另外新的UEFI主板基本都提供了截屏功能,这些截屏图⽚都可以存储在U盘当中。
UEFI还有⼀个重要特性就是在UEFI下运⾏应⽤程序,这类程序⽂件通常以efi结尾。利⽤UEFI可以直接识别FAT分区中的⽂件,⼜可直接
在其中运⾏应⽤程序。我们就可以将Windows安装程序做成efi类型应⽤程序,然后把它放到任意FAT分区中直接运⾏即可。
当然由于UEFI主要由⾼级语⾔编写(C语⾔),相⽐于传统BIOS的汇编语⾔,UEFIBIOS在安全防护性⽅⾯相⽐传统BIOS要弱,⽐较容易
遭到病毒的攻击,安全性有待进⼀步提升。不过在图形化界⾯、应⽤程序扩展⾯前,UEFIBIOS还是⾮常成功的。
现在,多数主板为了兼容MBR分区表,⼀般会提供LegacyBIOS和UEFIBIOS启动模式选项,如果要使⽤UEFI模式安装操作系统,就必须
开启UEFI模式。UEFI模式可切换回BIOS模式,⽽仅有BIOS模式时⽆法切换为UEFI模式。
⽬前64bitWindowsVista、7、8、8.1、10都已经⽀持GPT分区表,⽽Windows8、8.1、10都已经原⽣⽀持UEFI,安装这些系统的时
候:只要硬盘设置为GPT分区表主板设置为UEFI启动后,就可以直接开始安装操作系统了。⾃Win8发布以来,新出⼚的预装
Win8/Win8.1的电脑都默认在UEFI式下启动操作系统。
⽽对于WindowsVista、7系统,就需要⼿动添加UEFI⽀持,我们可以找⼀份Windows8或者10安装镜像,从安装⽂件中提取
⽂件,重命名为,拷贝到Win7安装⽂件的EFIBoot下,如果没有BOOT⽂件夹就新建⼀个。
GPT
GPT的全称是GloballyUniqueIdentifierPartitionTable,意即GUID分区表。UEFIBOIS将逐渐取代LegacyBOI助理医师报名条件 S,⽽GPT也将逐渐
取代MBR。UEFI和GPT是相辅相成的,⼆者缺⼀不可,要想使⽤GPT分区表则必须是UEFIBIOS环境。
与⽀持最⼤2T磁盘和RAID卷且⾄多有4个主分区的MBR分区表相⽐,GPT分区表能⽀持最⼤18EB(Exabytes)磁盘和RAID卷。并
且磁盘和RAID卷的分区数没有上限,只受到操作系统限制(由于分区表本⾝需要占⽤⼀定空间,最初规划硬盘分区时,留给分区表的空间决定
了最多可以有多少个分区)。⽐如,在Windows系统上,由于系统的限制GPT最多只能⽀持128个磁盘分区,基本可以满⾜所有⽤户的存储
需求。在每⼀个分区上,这个标识符是⼀个随机⽣成的字符串,可以保证为地球上的每⼀个GPT分区都分配完全唯⼀的标识符。
279290_
在安全性⽅⾯,GPT分区表也进⾏了全⽅位改进。在早期的MBR磁盘上,分区和启动信息是保存在⼀起的。如果这部分数据被覆盖或破坏,事
情就⿇烦了。相对的,GPT在整个磁盘上保存多个这部分信息的副本,因此它更为健壮,并可以恢复被破坏的这部分信息。GPT还为这些信息保
存了循环冗余校验码(CRC)以保证其完整性和正确性——如果数据被破坏,GPT会发觉这些破坏,并从磁盘上的其他地⽅进⾏恢复。
MBRMBRorGPTorGPT
GPT相对于诞⽣于MS-DOS时代的MBR⽽⾔,有许多优点。在做出选择前,需要考虑如下内容:
如果使⽤GRUBlegacy作为bootloader,必须使⽤MBR。
如果使⽤传统的BIOS,并且双启动中包含Windows(⽆论是32位版还是64位版),必须使⽤MBR。
如果使⽤UEFI⽽不是BIOS,并且双启动中包含Windows64位版,必须使⽤GPT。
⾮常⽼的机器需要使⽤MBR,因为BIOS可能不⽀持GPT.
如果不属于上述任何⼀种情况,可以随意选择使⽤GPT还是MBR。由于GPT更先进,建议选择GPT。
建议在使⽤UEFI的情况下选择GPT,因为有些UEFIfirmware不⽀持从MBR启动。
为了使GRUB从⼀台有GPT分区的基于BIOS的系统上启动,需要创建⼀个BIOS启动分区,这个分区和/boot没关系,仅仅是GRUB
使⽤,不要建⽴⽂件系统和挂载。
以下为主流操作系统对GPT的⽀持情况列表。
更详细的⽀持列表可参考维基百科。
对于新平台⽤户(Intel6系以后/AMD900系列以后和A系列)来说,都强烈推荐使⽤GPT分区表格式。⽬前包括WinVista、Win7、
Win8、Win8.1、Wi祆教 n10已经都⽀持读取和使⽤GPT分区表。⽽对于使⽤Win8、Win8.1、Win10的⽤户,换⽤GPT后开机启动速度也可以
进⼀步得到显著提升。
选择引导⽅式和分区格式
由于现在刚出的新电脑基本都是UEFI+GPT的,如果要更换系统就必须按照GPT分区格式+UEFI引导的⽅式去安装。但如果想使⽤以前的
MBR⽅式去安装(⽐如安装Ghost系统)那就只能将转换硬盘的分区格式转换为MBR、修改系统引导⽅式为Legacy、重新分区再安装。
如果在分区格式为MBR的硬盘上安装较新的Windows系统时忘了把之前MBR分区格式改为GPT,然后在选择Windows安装位置时不能继
续,如下图所⽰。
这个时候就需要将硬盘分区格式修改为GPT,修改系统引导⽅式为UEFI、重新分区再安装。
查看操作系统的引导⽅式
Windows系统
⽅法⼀
如果你知晓GPT与UEFI启动之间的关系,那么你可能知道,Windows想要从GPT硬盘引导,就必须以UEFI⽅式启动(反之则不成⽴)。
在磁盘管理(桌⾯右键计算机快捷⽅式——>管理——>磁盘管理)中选择⼀块磁盘,在其上⾯右键,点击“属性”菜单项,然后选择“卷”标签
页,即可看⼀下分区类型,如果是GPT,那么电脑肯定就是UEFI启动了。
20150508_141539_
⽅法⼆
该⽅法适⽤于Win8及更⾼版本的Windows系统。按Win+R打开运⾏,输⼊msinfo32,回车查看系统信息。在BIOS模式中如果显⽰“传
统”,表⽰系统启动⽅式为LegacyBIOS;如果为UEFI,则显⽰UEFI。
-e7147a-46-0
Linux系统
⽅法⼀
可以通过查看是否存在/sys/firmware/efi⽬录就可以判断出是否为UEFI引导⽅式。
⽅法⼆
也可以通过安装efibootmgr程序,然后执⾏sudoefibootmgr命令即可查看Linux系统是否⽀持UEFI引导⽅式。
终极查看⽅法
下⾯介绍⼀种适⽤于任何操作系统的查看即修改⽅法。
在系统开始加载前按下热键(⼀般为Del、F2等)进⼊BIOS。⼀般该功能⼀般位于Boot相关的菜单下,不同主板的电脑操作⽅式⼤同⼩异。
如下图所⽰,可以查看当前的引导⽅法,也可以修改引导⽅式。
20160512_172140_
注意:UEFI引导⽅式需要主板芯⽚组⽀持,如果你在BIOS设定中没有找到相应内容,那么很可能就是你的主板并不⽀
持UEFI引导⽅式。近些年的新主板⼀般都⽀持UEFI。
不同电脑的快捷启动键有所不同。
Windows系统设置硬盘分区
分区的容量和数量根据硬盘数量、容量、类型和使⽤习惯⽽定。分区容量⼩了、数量多了会导致各分区之间转移⽂件很⿇烦,分区容量⼤了、数量
少了会增加⽂件丢失的风险(⽐如经常直接断电⽽⾮正常关机或其他原因导致的硬盘故障),单个分区损坏则该分区中所有⽂件丢失。
如果你的硬盘够⼤、够多,⽐如容量为1TB,甚⾄有多个1TB硬盘,那么可以将Windows系统所在分区设置为100GB,剩下的空间可以按
软件安装、媒体存储、⽂档办公、⽂件备份等⽤途来分出合适容量、数量的分区。如果使⽤128GB或256GB的SSD+HDD组合的模式,
那么可以将整个SSD分为⼀个分区,将Windows和应⽤软件都安装在整个SSD的分区上以便加快开机和应⽤软件的启动速度。
如果Windows系统使⽤MBR分区格式,⼀般都是只划分⼀个主分区给系统,剩余的部分全部划⼊扩展分区。
通过安装Windows时的diskpart⼯具
1.安装系统时在系统版本选择界⾯按下
Shift+F10
快捷键调出命令提⽰符,如下图所⽰:
20160512_172343_
2.输⼊
diskpart
命令后按回车键,进⼊DISKPART⼯具,如下图所⽰。
3.输⼊
listdisk
命令后按回车键,查看电脑当前可⽤硬盘,编号为0、1、2。。。,如果你只有⼀块硬盘,则只有0号磁盘;有两块硬盘,则
还会显⽰1号磁盘,以此类推,如下图所⽰。
4.输⼊
lectdiskx
(
x
为上述硬盘编号),选择你要进⾏分区操作的硬盘,如果只有⼀块硬盘,输⼊
lectdisk0
后按回车键即可,如下图所
⽰。
20160512_172423_
5.执⾏
clean
命令清除该硬盘上的所有分区(记得备份数据,新硬盘⽆需此步骤),此时会清除所有硬盘数据,如下图所⽰。
6.如果是按照GPT分区格式安装操作系统,则执⾏
convertgpt
命令将该硬盘转换成GPT分区格式,如下图所⽰。
20160512_172707_
当然,如果是按MBR分区格式安装系统,也可以创建MBR分区格式,使⽤convertmbr命令即可。
7.创建EFI分区,执⾏
createpartitionefisize=200
(分区⼤⼩为200MB),如下图所⽰。
EFI系统分区,即EFIsystempartition,简写为ESP。ESP是⼀个FAT16或FAT32格式的物理分区,但是其分区
标识是EF(⼗六进制)⽽⾮常规的0E或0C,因此,该分区在Windows操作系统下⼀般是不可见的。⽀持EFI模式的
电脑需要从ESP启动系统,EFI固件可从ESP加载EFI启动程序或者应⽤。
仅当使⽤UEFI模式以及GPT分区表的时候需要EFI系统分区(⼜称ESP),对于GPT分区表,EFI分区是必需的,
它⽤来存放操作系统的引导器(loader),⽽MSR不是必需的,仅当使⽤Windows系统时才需要MSR保留分区。
8.创建MSR分区,执⾏
createpartitionmsrsize=200
(微软系统保留分区),如下图所⽰。
MSR分区(MicrosoftRervedPartition,缩写MSR)即Microsoft保留分区,是每个在GUID分区表上的
Windows操作系统(Win7及以上)都要求的分区。系统组件可以将MSR分区的部分分配到新的分区以供它们使⽤。
MSR分区的⼤⼩会因GPT磁盘的⼤⼩不同⽽发⽣变化。对于⼩于16GB的磁盘,MSR分区为32MB。对于⼤于16
GB的磁盘,MSR分区为128MB。MSR分区在“磁盘管理”中不可见,⽤户也⽆法在MSR分区上存储或删除数
据。
对于在GPT磁盘上的Windows操作系统,MSR分区是必须保留的,不可删除(⽆法启动可能是由于⽤
part1,part2…等表⽰的分区因为MSR分区的删除⽽改变导致的)。⽽对于GPT磁盘中的其他操作系统,如
Linux、Mac等则不受影响。
可以使⽤命令:createpartitionmsr[size=
⽤Win8系统安装版分区时,系统⾃动划分出“分区1、2、3”,它们是Win8的特有分区。其中300MB为恢复
区,100MB为系统分区,128MB为MSR分区。
9.创建主分区,执⾏
createpartitionprimarysize=xxx
(单位为MB,具体⼤⼩根据你的要求⽽定)(创建结束后,可执⾏active命令设置活动分
区,然后可顺便执⾏formatquick进⾏快速格式化。在MBR格式下,若要创建扩展分区,则执⾏:
createpartitionextendedsize=n
,如果你
不需要建⽴其他主分区,可把剩余空间全部划分为扩展分区。在扩展分区中创建逻辑分区,则执⾏:
createpartitionlogicalsize=n
。可建⽴多个
逻辑分区,总容量要⼩于等于扩展分区,但最好等于扩展分区⼤⼩,以免浪费空间。也可以在每个逻辑分区创建完毕后顺便执⾏format
quick,进⾏快速格式化。分区结束后,如果忘记格式化,可执⾏lectpartitionx,然后为该分区执⾏formatquick快速格式化)。
10.再次输⼊
listdisk
命令后按回车键可查看已建⽴的分区列表。如下图所⽰。
注意:这⾥系统安装过程采⽤虚拟机模拟,模拟硬盘为60GB,因此主分区⼤⼩设定30GB仅作为操作演⽰。
可在进⼊DISKPART⼯具后输⼊help查看有关diskpart命令的详细信息。
10.如果还有剩余空间,可继续重复执⾏上述命令来创建新的分区(注意修改具体数值)。但建议⽤户创建完系统分区后就退出命令提⽰符(输⼊
exit后回车)继续安装系统,毕竟这种⽅式不容易估算剩下的硬盘空间⼤⼩,进⼊安装位置选择界⾯后可以进⼀步划分剩余空间,如下图所
⽰。也可以在安装后,进⼊系统磁盘管理中进⾏分配。
20160512_173005_
这种的⽅法不需要任何第三⽅⼯具,属于最基本⽅法。好处就在于操作简便直观,缺点在于命令不好记,如何画山水画 整个硬盘需要全部格式,数据⽆法保留。
所以,在操作之前,务必对于硬盘上的重要数据提前备份到其他存储设备上。
使⽤Win7/Win8.1/Win10安装程序⾃带的分区⼯具
1.使⽤原版系统安装盘(⾮Ghost版)引导电脑。
2.以未分区硬盘为例,选中未分配空间(多硬盘⽤户需要按照总⼤⼩和可⽤空间区分好⽬标硬盘),点击“新建”,如下图所⽰。
20161101_141513_
3.给出分区⼤⼩,单位MB,⽐如要想分30GB的区,就写上“30000”,如下图所⽰。
20161101_141821_
4.分区会格式化硬盘,将会清除所有⽂件。所以赐予的近义词 重装系统之前做好⽂件备份。记住,Windows桌⾯上的⽂件是位于C盘的。
20161101_142452_
使⽤GPT分区系统会要求创建MSR和EFI分区,默认为128MB和100MB,⽤于保留空间和存放引导程序等。
5.同理按照上述⽅法划分其他区域,如果使⽤的是MBR分区⽅式,那么在此处最多只能分出4个主分区,但如果⽤GPT分区,数量就不限。
如下图所⽰。
20161101_142437_
6.分区后可以在此格式化,也可以直接点“下⼀步”,系统会⾃动格式化选中的系统分区;其他未格式化的分区可以在系统安装结束后⼿动格式
化。这⾥的格式化创建的是NTFS⽂件系统。
20161101_143201_
在此处格式化会给出提⽰,在确认硬盘中并⽆⽂件,或者⽂件已备份的情况下点击“确定”开始格式化。
实际上只有遵循UEFI规范的主板才能按照efi/boot/路径启动Windows安装程序,⼤多数主板都是遵循这⼀规范的。如果不遵
循这⼀规范,那么你需要⼿动选择从该⽂件启动,或者需要在UEFIShell中以命令的⽅式启动。
使⽤DiskGenius分区软件
这款⼯具很多资深⽤户并不陌⽣,常见于某些国产改版PE系统中,当然这些系统中还有其他强⼤的硬盘操作⼯具。关于该软件的全部功能⽤法可
以参考其官⽹帮助信息。
创建GPT分区
1.打开DiskGenius⼯具后就可以很明显看到当前硬盘分区情况,如下图所⽰。
20161101_151041_
2.如果现有分区不满意,可以删掉后重新分,如下图所⽰。
3.删掉所有已有分区后,重新建⽴分区会⾸先提⽰是否新建ESP和MSR分区,其中ESP分区是必须要建⽴的(默认100MB即可),否则
Windows安装程序⽆法在选择安装位置后开始安装(UEFI+GPT⽤户直接使⽤安装盘分区会⾃动创建所需分区,不会出现影响安装的问
题),红背菜 如下图所⽰。
20161101_151814_
4.建⽴完上述辅助分区后,就可以正式建⽴主分区,⽅法同之前介绍的⼤同⼩异,⽆⾮就是给出分区⼤⼩,如下图所⽰。
20161101_155717_
如果是为SSD新建分区,要勾选“对齐到下列扇区数的整数倍”,并在“扇区数”下拉菜单中选择“4096”(如上图),以便满⾜所谓的
“4K对齐”条件,这有利于充分发挥SSD的性能优势(原版系统盘安装程序分区时会⾃动设置“4K对齐”,⽆需⼿动设置)。可以通过
DiskGenius的“⼯具”菜单中的“分区4K扇区对齐监测”菜单项查看SSD是否已经4K对齐(最后⼀列显⽰为“Y”表⽰已对齐)。
5.按照上述⽅法新建分区,完成后要“保存更改”,此时程序会询问你是否顺便格式化这些分区,点击“是”即可开始格式化,完成后这些分区
就可以使⽤了,如下图所⽰。
20161101_160447_
创建MBR分区
这种分区表和GPT⽐起来在分区⽅式上有⼀定差异,下⾯具体说明⼀下:
1.可直接新建主分区和扩展分区,不会提⽰MSR等辅助分区建⽴。
20161101_163048_
2.主分区⽤于安装系统和引导系统;扩展分区及下属的逻辑分区⽤于存储数据,GPT不具备上述结构。
20161101_174631_
3.主分区最多能建⽴4个,扩展分区只有⼀个,下属逻辑分区数量不限,主分区和扩展分区总和不超过4个,逻辑分区总量必须⼩于等于扩展
分区容量。
20161101_163140_
DiskGenius软件⽬前⽀持NTFS、FAT32、FAT16、exFAT、EXT2、EXT3、EXT4等⽂件系统的格式化。
安装Windows和Linux双系统时,后安装的引导加载程序可能会覆盖之前系统的引导加载程序,这就会导致之前安装的系统的⽆法被加载。
CentOS7(最近的Ubuntu)使⽤GRUB2作为引导加载程序。该引导加载程序是计算机启动后⾸先运⾏的程序,负责操作系统的加载及传输
控制。GRUB2可以兼容所有操作系统,同时还可以在不⽀持的操作系统中使⽤链式载⼊将控制权转给其他操作系统。如果先安装Windows再
安装使⽤GRUB2引导的Linux,将会使⽤GRUB2引导双系统。⽽如果先安装Linux再安装Windows,除了Win10可以识别出Linux系
统的引导程序外,其他版本的Windows系统都会覆盖已安装Linux系统的引导程序,这种情况下可以在Windows下使⽤EasyBCD软件在
修改引导加载程序。
LinuxLinux系统设置硬盘分区系统设置硬盘分区
⼀开始,你必须在存储设备上创建分区来容纳⽂件系统。分区可以是整个硬盘,也可以是部分硬盘,以容纳虚拟⽬录的⼀部分。在Linux系统
中,硬盘分区常见的名称格式如下:
/dev/hd[a-h]n:hd表⽰IDE接⼝的硬盘;
/dev/sd[a-p]n:sd表⽰SATA接⼝和SCSI接⼝的硬盘;
/dev/ed[a-d]n:ed表⽰ESDI接⼝的硬盘;
/dev/xd[ab]n:xd表⽰XT接⼝的硬盘。
中括号中的字母表⽰驱动器的检测顺序,第⼀个驱动器是a,第⼆个驱动器是b,以此类推。n表⽰分区号,在MBR分区的硬盘中,1-4是主分
区(或者扩展分区),逻辑分区号只能从分区号5开始,习惯上创建主分区sda1到sda3(最多也只能创建三个主分区),然后建⽴⼀个扩展
分区sda4(创建三个主分区之后默认只能创建扩展分区),后续创建的分区sda5,sda6等只能为逻辑分区,默认会被包含在sda4扩展分区
中。
在安装CentOS7时,选择“InstallCentOS7”,然后按下“Tab”,在屏幕下⽅的“quiet”后⾯输⼊⼀个空格加“”来使⽤GPT
分区。否则,默认选择的MBR分区。
创建MBR分区
fdisk⼯具⽤来在存储设备上的创建MBR分区。它是个交互式程序,允许输⼊命令来逐步完成硬盘分区操作。该命令的⽤法如下:
fdisk[options]
fdisk[options]-l
fdisk-s
可⽤的选项如下:
-b
-c[=
-h:打印该帮助⽂本;
-u[=
-v:打印程序的版本;
-C
-H
-S
可以使⽤-l选项⽽不指定设备名来查看当前所有磁盘分区及映射的逻辑卷。也可以指定设备名称来查看指定磁盘的分区列表。
[root@localhost~]#ll/dev/sd*
brw-rw----.1rootdisk8,0May807:05/dev/sda
brw-rw----.1rootdisk8,1May807:05/dev/sda1
brw-rw----.1rootdisk8,2May807:05/dev/sda2
[root@localhost~]#fdisk-l
Disk/dev/sda:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x000d5723
DeviceBootStartEndBlocksIdSystem
/dev/sda1*2200083Linux
/dev/sda28eLinuxLVM
Disk/dev/mapper/cl-root:10.7GB,1bytes,20971520ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disk/dev/mapper/cl-swap:2147MB,2147483648bytes,4194304ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disk/dev/mapper/cl-home:6442MB,6442450944bytes,12582912ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
[root@localhost~]#fdisk-l/dev/sda
Disk/dev/sda:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x000d5723
DeviceBootStartEndBlocksIdSystem
/dev/sda1*2200083Linux
/dev/sda28eLinuxLVM
[root@localhost~]#fdisk-l/dev/sda1
Disk/dev/sda1:524MB,524288000bytes,1024000ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
[root@localhost~]#fdisk-l/dev/sda2
Disk/dev/sda2:19.3GB,bytes,37754880ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
[root@localhost~]
#可以在VMware中虚拟机关机之后“编辑虚拟机设置”,点击“硬盘”,然后选择“扩展”可以将原有硬盘扩容,还可以选择“添加”来添加新
的硬盘。下⾯我们演⽰了将虚拟机原有硬盘扩容了20GB左右,同时⼜添加了⼀块容量为20GB左右的新硬盘。
[root@localhostvincent]#ll/dev/sd*
brw-rw----.1rootdisk8,0May807:35/dev/sda
brw-rw----.1rootdisk8,1May807:35/dev/sda1
brw-rw----.1rootdisk8,1May807:35/dev/sda1
brw-rw----.1rootdisk8,2May807:35/dev/sda2
brw-rw----.1rootdisk8,16May807:44/dev/sdb
[root@localhostvincent]#fdisk-l
Disk/dev/sdb:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disk/dev/sda:42.9GB,42949672960bytes,83886080ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x000d5723
DeviceBootStartEndBlocksIdSystem
/dev/sda1*2200083Linux
/dev/sda28eLinuxLVM
Disk/dev/mapper/cl-root:10.7GB,1bytes,20971520ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disk/dev/mapper/cl-swap:2147MB,2147483648bytes,4194304ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disk/dev/mapper/cl-home:6442MB,6442450944bytes,12582912ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
[root@localhostvincent]#fdisk-l/dev/sdb
Disk/dev/sdb:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
[root@localhostvincent]#fdisk-l/dev/sda
Disk/dev/sda:42.9GB,42949672960bytes,83886080ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x000d5723
DeviceBootStartEndBlocksIdSystem
/dev/sda1*2200083Linux
/dev/sda28eLinuxLVM
[root@localhostvincent]#fdisk-l/dev/sda1
Disk/dev/sda1:524MB,524288000bytes,1024000ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
[root@localhostvincent]#fdisk-l/dev/sda2
Disk/dev/sda2:19.3GB,bytes,37754880ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
[root@localhostvincent]#
从上⾯的执⾏结果可以看出,在扩容原有硬盘和新增硬盘之后,原有的/dev/sda容量增加了,同时新增了⼀个/dev/sdb的未分区的新磁盘。
使⽤fdisk命令后直接指定要分区的存储设备的设备名(需要使⽤超级⽤户)就可以进⼊fdisk⼯具的交互式操作模式了。下⾯展⽰了该命令在
CentOS发⾏版中的使⽤情景。如果这是你第⼀次给该存储设备分区,fdisk会提⽰你设备上没有可识别的分区表。
[root@localhost~]#fdisk/dev/sdb
Welcometofdisk(util-linux2.23.2).
Changeswillremaininmemoryonly,untilyoudecidetowritethem.
Becarefulbeforeusingthewritecommand.
Devicedoesnotcontainarecognizedpartitiontable
BuildinganewDOSdisklabelwithdiskidentifier0x5ecbc139.
Command(mforhelp):
根据提⽰,输⼊m命令可以查看可⽤的交互式命令
Command(mforhelp):m
Commandaction
atoggleabootableflag
beditbsddisklabel
ctogglethedoscompatibilityflag
ddeleteapartition
gcreateanewemptyGPTpartitiontable
GcreateanIRIX(SGI)partitiontable
llistknownpartitiontypes
mprintthismenu
naddanewpartition
ocreateanewemptyDOSpartitiontable
pprintthepartitiontable
qquitwithoutsavingchanges
screateanewemptySundisklabel
tchangeapartition'ssystemid
uchangedisplay/entryunits
vverifythepartitiontable
wwritetabletodiskandexit
xextrafunctionality(expertsonly)
Command(mforhelp):
各命令解释如下:
a切换是否可启动的标识`on`或`off`(toggleabootableflag)
b编辑bsd磁盘标签(disklabel)
c切换dos兼容性标识(togglethedoscompatibilityflag)
d删除分区
l列出可⽤的系统ID
m显⽰该命令菜单
n添加⼀个新分区
o创建⼀个新的DOS分区表
p显⽰当前分区表
q退出,不保存更改
s为SunUnix系统创建⼀个新的空磁盘标签(createanewemptySundisklabel)
t修改分区的系统ID
u改变使⽤的存储单位
v验证分区表
w将分区表写⼊磁盘
x⾼级功能(expertsonly)
实际上在⽇常⼯作中⽤到的只有⼏个基本命令。可以⽤p命令将⼀个存储设备的详细信息显⽰出来。
Command(mforhelp):p
Disk/dev/sdb:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x5ecbc139
DeviceBootStartEndBlocksIdSystem
Command(mforhelp):
输出显⽰这个存储设备有约21.5GB的空间。存储设备明细的列表列出这个设备所有分区。这个例⼦中的输出中没有显⽰任何分区,所以设备还
未分区。下⼀步,可以使⽤n命令在该存储设备上根据提⽰创建新的分区。使⽤n命令需要先指定创建的分区类型(p表⽰主分区,e表⽰扩展
分区),然后指定分区号,最后分别指定分区的起始柱⾯和结束柱⾯(也可以根据提⽰指定增加的柱⾯数或增加的容量⼤⼩来代替)。
Command(mforhelp):n
Partitiontype:
pprimary(0primary,0extended,4free)
eextended
Select(defaultp):
Usingdefaultresponp
Partitionnumber(1-4,default1):
Firstctor(2,default2048):
Usingdefaultvalue2048
Lastctor,+ctorsor+size{K,M,G}(2,default41943039):+2G
Partition1oftypeLinuxandofsize2GiBist
Command(mforhelp):n
Partitiontype:
pprimary(1primary,0extended,3free)
eextended
Select(defaultp):
Usingdefaultresponp
Partitionnumber(2-4,default2):
Firstctor(4196352-41943039,default4196352):
Usingdefaultvalue4196352
Lastctor,+ctorsor+size{K,M,G}(4196352-41943039,default41943039):+2G
Partition2oftypeLinuxandofsize2GiBist
Command(mforhelp):n
Partitiontype:
pprimary(2primary,0extended,2free)
eextended
Select(defaultp):
Usingdefaultresponp
Partitionnumber(3,4,default3):
Firstctor(839,default8390656):
Usingdefaultvalue8390656
Lastctor,+ctorsor+size{K,M,G}(839,default41943039):+2G
Partition3oftypeLinuxandofsize2GiBist
Command(mforhelp):
Command(mforhelp):n
Partitiontype:
pprimary(3primary,0extended,1free)
eextended
Select(defaulte):
Usingdefaultrespone
Selectedpartition4
Firstctor(12584960-41943039,default12584960):
Usingdefaultvalue12584960
Lastctor,+ctorsor+size{K,M,G}(12584960-41943039,default41943039):+2G
Partition4oftypeExtendedandofsize2GiBist
Command(mforhelp):n
Allprimarypartitionsareinu
Addinglogicalpartition5
Firstctor(12587,default12587008):
Usingdefaultvalue12587008
Lastctor,+ctorsor+size{K,M,G}(12587,default16779263):+2G
Valueoutofrange.
Lastctor,+ctorsor+size{K,M,G}(12587,default16779263):+1G
Partition5oftypeLinuxandofsize1GiBist
Command(mforhelp):n
Allprimarypartitionsareinu
Addinglogicalpartition6
Firstctor(14686208-16779263,default14686208):
Usingdefaultvalue14686208
Lastctor,+ctorsor+size{K,M,G}(14686208-16779263,default16779263):+500M
Partition6oftypeLinuxandofsize500MiBist
Command(mforhelp):
在上⾯的⽰例中,我们依次根据默认参数先创建了三个主分区,第四个分区默认只能选择扩展分区,后续只能在扩展分区中创建逻辑分区。主分区
可以被⽂件系统直接格式化,⽽扩展分区则只能容纳其他逻辑分区。使⽤p命令可以查看该磁盘上已创建分区的列表(这些分区仅保存到内存
中,还未实际执⾏)。
Command(mforhelp):p
Disk/dev/sdb:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x21258da3
DeviceBootStartEndBlocksIdSystem
/dev/sdb129715283Linux
/dev/sdb241963528393Linux
/dev/sdb3839209715283Linux
/dev/sdb45Extended
/dev/sdb583Linux
/dev/sdb63Linux
Command(mforhelp):
从输出中现在可以看到,该存储设备上所有分区列表。其中,Id列定义了Linux怎么对待该分区。fdisk允许创建多种分区类型。使⽤l命令
列出可⽤的不同类型及其⼗六进制码。
Command(mforhelp):l
0Empty24NECDOS81Minix/oldLinbfSolaris
1FAT1227HiddenNTFSWin82Linuxswap/Soc1DRDOS/c(FAT-
2XENIXroot39Plan983Linuxc4DRDOS/c(FAT-
3XENIXusr3cPartitionMagic84OS/2hiddenC:c6DRDOS/c(FAT-
4FAT16<32M40Venix8028685Linuxextendedc7Syrinx
5Extended41PPCPRePBoot86NTFSvolumetdaNon-FSdata
6FAT1642SFS87NTFSvolumetdbCP/M/CTOS/.
7HPFS/NTFS/exFAT4dQNX4.x88LinuxplaintextdeDellUtility
8AIX4eQNX4.x2ndpart8eLinuxLVMdfBootIt
9AIXbootable4fQNX4.x3rdpart93Amoebae1DOSaccess
aOS/2BootManag50OnTrackDM94AmoebaBBTe3DOSR/O
bW95FAT3251OnTrackDM6Aux9fBSD/OSe4SpeedStor
cW95FAT32(LBA)52CP/Ma0IBMThinkpadhiebBeOSfs
eW95FAT16(LBA)53OnTrackDM6Auxa5FreeBSDeeGPT
fW95Ext'd(LBA)54OnTrackDM6a6OpenBSDefEFI(FAT-12/16/
10OPUS55EZ-Drivea7NeXTSTEPf0Linux/PA-RISCb
11HiddenFAT1256GoldenBowa8DarwinUFSf1SpeedStor
12Compaqdiagnost5cPriamEdiska9NetBSDf4SpeedStor
14HiddenFAT16<361SpeedStorabDarwinbootf2DOScondary
16HiddenFAT1663GNUHURDorSysafHFS/HFS+fbVMwareVMFS
17HiddenHPFS/NTF64NovellNetwareb7BSDIfsfcVMwareVMKCORE
18ASTSmartSleep65NovellNetwareb8BSDIswapfdLinuxraidauto
1bHiddenW95FAT370DiskSecureMultbbBootWizardhidfeLANstep
1cHiddenW95FAT375PC/IXbeSolarisbootffBBT
1eHiddenW95FAT180OldMinix
Command(mforhelp):
默认类型是Linux⽂件系统类型,对应的⼗六进制码为83。如果你想为其他⽂件系统创建⼀个分区(⽐如Solaris类型的分区),只要通过t
交互命令指定⼀个分区类型的⼗六进制代码即可。
Command(mforhelp):t
Partitionnumber(1-6,default6):5
Hexcode(typeLtolistallcodes):bf
Changedtypeofpartition'Linux'to'Solaris'
Command(mforhelp):p
Disk/dev/sdb:21.5GB,21474836480bytes,41943040ctors
Units写人的词语 =ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x21258da3
DeviceBootStartEndBlocksIdSystem
/dev/sdb129715283Linux
/dev/sdb241963528393Linux
/dev/sdb3839209715283Linux
/dev/sdb45Extended
/dev/sdb5bfSolaris
/dev/sdb63Linux
Command(mforhelp):
创建了想要的分区之后就可以⽤w命令将更改保存到存储设备上。
Command(mforhelp):w
Thepartitiontablehasbeenaltered!
Callingioctl()tore-readpartitiontable.
Syncingdisks.
[root@localhost~]#ll/dev/sd*
brw-rw----.1rootdisk8,0May807:35/dev/sda
brw-rw----.1rootdisk8,1May807:35/dev/sda1
brw-rw----.1rootdisk8,2May807:35/dev/sda2
brw-rw----.1rootdisk8,16May822:49/dev/sdb
brw-rw----.1rootdisk8,17May822:49/dev/sdb1
brw-rw----.1rootdisk8,18May822:49/dev/sdb2
brw-rw----.1rootdisk8,19May822:49/dev/sdb3
brw-rw----.1rootdisk8,20May822:49/dev/sdb4
brw-rw----.1rootdisk8,21May822:49/dev/sdb5
brw-rw----.1rootdisk8,22May822:49/dev/sdb6
[root@localhost~]
#存储设备的分区信息被写⼊分区表中,Linux系统通过ioctl()调⽤来获知新分区的出现。设置好分区之后,可以使⽤Linux⽂件系统对其进⾏
格式化。有些发⾏版和较旧的发⾏版在⽣成新分区之后并不会⾃动提醒Linux系统。如果是这样的话,你要么使⽤partprob或hdparm命令
(参考相应的⼿册页),要么重启系统,让系统读取更新过的分区表。
当然,我们可以通过d命令来删除已创建的分区。
[root@localhost~]#fdisk/dev/sdb
Welcometofdisk(util-linux2.23.2).
Changeswillremaininmemoryonly,untilyoudecidetowritethem.
Becarefulbeforeusingthewritecommand.
Command(mforhelp):p
Disk/dev/sdb:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osize(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x21258da3
DeviceBootStartEndBlocksIdSystem
/dev/sdb129715283Linux
/dev/sdb241963528393Linux
/dev/sdb3839209715283Linux
/dev/sdb45Extended
/dev/sdb5bfSolaris
/dev/sdb63Linux
Command(mforhelp):d
Partitionnumber(1-6,default6):5
Partition5isdeleted
Command(mforhelp):p
Disk/dev/sdb:21.5GB,21474836480bytes,41943040ctors
Units=ctorsof1*512=512bytes
Sectorsize(logical/physical):512bytes/512bytes
I/Osiz什么是监理 e(minimum/optimal):512bytes/512bytes
Disklabeltype:dos
Diskidentifier:0x21258da3
DeviceBootStartEndBlocksIdSystem
/dev/sdb129715283Linux
/dev/sdb241963528393Linux
/dev/sdb3839209715283Linux
/dev/sdb45Extended
/dev/sdb53Linux
Command(mforhelp):
从删除结果来看,Solaris类型的/dev/sdb5分区被删除了,后⾯的/dev/sdb6就变成了新的/dev/sdb5。
创建GPT分区
如果要创建GPT分区,可以使⽤parted命令实现。parted命令可⽤来操作磁盘分区,它⽀持多种分区格式,包括MS_DOS和GPT。该命令
语法如下。
parted[options][device[]...]]
[options]:该命令⽀持的命令⾏选项如下,
-l,--list:列出所有设备上的分区信息;
-m,--machine:显⽰机器可解析的输出;
-i,--interactive:在必要时,提⽰⽤户;
-s,--script:从不提⽰⽤户;
-a,--alignalignment-type:为新创建的分区设置对齐,可⽤的对齐类型有:none(使⽤磁盘类型允许的最⼩对齐⽅式)、cylinder(将分区对齐到柱⾯)、minimal(使⽤根据磁
-h,--help:显⽰帮助信息;
-v,--version:显⽰版本。
[device]:所操作的块设备。如果没有指定,parted命令将使⽤它找到的第⼀个块设备,也可以在进⼊交互模式后执⾏
lect设备路径
命令
来选择操作指定的磁盘;
[command[options]:指定要执⾏的命令。如果没有指定命令,parted将给出命令提⽰。
使⽤parted-l不指定设备名称,我们可以查看当前可操作的磁盘分区信息。
[root@localhost~]#parted-l
Model:VMware,VMwareVirtualS(scsi)
Disk/dev/sda:42.9GB
Sectorsize(logical/physical):512B/512B
PartitionTable:msdos
DiskFlags:
NumberStartEndSizeTypeFilesystemFlags
11049kB525MB524MBprimaryext4boot
2525MB19.9GB19.3GBprimarylvm
Model:VMware,VMwareVirtualS(scsi)
Disk/dev/sdb:21.5GB
Sectorsize(logical/physical):512B/512B
PartitionTable:msdos
DiskFlags:
NumberStartEndSizeTypeFilesystemFlags
Model:Linuxdevice-mapper(linear)(dm)
Disk/dev/mapper/cl-home:6442MB
Sectorsize(logical/physical):512B/512B
PartitionTable:loop
DiskFlags:
NumberStartEndSizeFilesystemFlags
10.00B6442MB6442MBext4
Model:Linuxdevice-mapper(linear)(dm)
Disk/dev/mapper/cl-swap:2147MB
Sectorsize(logical/physical):512B/512B
PartitionTable:loop
DiskFlags:
NumberStartEndSizeFilesystemFlags
10.00B2147MB2147MBlinux-swap(v1)
Model:Linuxdevice-mapper(linear)(dm)
Disk/dev/mapper/cl-root:10.7GB
Sectorsize(logical/physical):512B/512B
PartitionTable:loop
DiskFlags:
NumberStartEndSizeFilesystemFlags
10.00B10.7GB10.7GBext4
直接使⽤parted命令会进⼊交互模式,然后输⼊help命令将显⽰基本的帮助信息,也可以输⼊helpCOMMAND查看某个交互式命令
COMMAND的帮助信息,
[root@localhost~]#parted
GNUParted3.1
Using/dev/sda
WelcometoGNUParted!Type'help'toviewalistofcommands.
(parted)help
align-checkTYPENcheckpartitionNforTYPE(min|opt)alignment
help[COMMAND]printgeneralhelp,orhelponCOMMAND
mklabel,mktableLABEL-TYPEcreateanewdisklabel(partitiontable)
mkpartPART-TYPE[FS-TYPE]STARTENDmakeapartition
nameNUMBERNAMEnamepartitionNUMBERasNAME
print[devices|free|list,all|NUMBER]displaythepartitiontable,availabledevices,free
space,allfoundpartitions,oraparticu敦促是什么意思 larpartition
quitexitprogram
rescueSTARTENDrescuealostpartitionnearSTARTandEND
rmNUMBERdeletepartitionNUMBER
lectDEVICEchoothedevicetoedit
disk_tFLAGSTATEchangetheFLAGonlecteddevice
disk_toggle[FLAG]togglethestateofFLAGonlecteddevice
tNUMBERFLAGSTATEchangetheFLAGonpartitionNUMBER
toggle[NUMBER[FLAG]]togglethestateofFLAGonpartitionNUMBER
unitUNITtthedefaultunittoUNIT
versiondisplaytheversionnumberandcopyrightinformation
ofGNUParted
(parted)version
GNUParted3.1
Copyright(C)1998-2006FreeSoftwareFoundation,Inc.
Thisprogramisfreesoftware,coveredbytheGNUGeneralPublicLicen.
Thisprogramisdistributedinthehopethatitwillbeuful,
butWITHOUTANYWARRANTY;withouteventheimpliedwarrantyof
GNUGeneralPublicLicenformoredetails.
(parted)
对于这些交互式命令解释如下,
align-checkTYPEN:检查分区N的对齐类型TYPE(min|opt);
help[COMMAND]:打印⼀般帮助,或指定命令COMMAND的帮助:检查分区的对齐;
mklabel,mktableLABEL-TYPE:创建新的磁盘标签(分区表);
mkpartPART-TYPE[FS-TYPE]STARTEND:创建⼀个分区;
nameNUMBERNAME:将分区号为NUMBER的分区命名为NAME;
p,print[devices|free|list,all|NUMBER]:显⽰分区表、可⽤设备、剩余空间、所有发现的分区、或特定的分区;
quit:退出交互模式;
rescueSTARTEND:挽救START和END附近丢失的分区;
rmNUMBER:删除分区号为NUMBER的分区;
lectDEVICE:选择要编辑的设备;
disk_tFLAGSTATE:设置所选设备的FLAG状态为STATE;
disk_toggle[FLAG]:切换所选设备的FLAG状态;
tNUMBERFLAGSTATE:设置分区号为NUMBER的分区的FLAG状态为STATE;
toggle[NUMBER[FLAG]]:将分区号为NUMBER的分区的FLAG状态切换为FLAG;
u,unitUNIT:设置默认的单位为UNIT,为s,B,kB,MB(默认),GB,TB,compact,cyl,chs,%,kiB,MiB,GiB,TiB之⼀;
version:显⽰版本号和版权信息。
如果要对新增的磁盘创建GPT分区,则先要使⽤mklabel命令创建GPT磁盘标签(分区表)。
(parted)lect/dev/sdb#⾸先选择或切换要操作的磁盘设备
Using/dev/sdb
(parted)helpmklabel
mklabel,mktableLABEL-TYPEcreateanewdisklabel(partitiontable)
LABEL-TYPEisoneof:aix,amiga,bsd,dvh,gpt,mac,msdos,pc98,sun,loop
(parted)mklabelgpt
Warning:Theexistingdisklabelon/dev/sdbwillbedestroyedandalldataonthisdiskwillbe
anttocontinue?
Yes/No?Yes
(parted)print
Model:VMware,VMwareVirtualS(scsi)
Disk/dev/sdb:21.5GB
Sectorsize(logical/physical):512B/512B
PartitionTable:gpt
DiskFlags:
NumberStartEndSizeFilesystemNameFlags
(parted)
mklabel命令的帮助信息表⽰:LABEL-TYPE为aix,amiga,bsd,dvh,gpt,mac,msdos,pc98,sun,loop之⼀。新磁盘标签(分区表)是
没有分区的,该命令从技术上不会毁掉你分区上的数据,但数据基本上却不能使⽤,可以使⽤rescue命令来恢复任意分区或者操作之前做好备
份。从上⾯print命令的打印结果来看,我们已经创建了gpt分区表。
当然,也可以使⽤mklabel命令创建msdoc磁盘标签(分区表),这样后续创建的分区就是MSR分区了。所以
parted命令也可以⽤来创建MSR分区。
接下来就可以通过mkpart命令创建分区了。
(parted)helpmkpart
mkpartPART-TYPE[FS-TYPE]STARTENDmakeapartition
PART-TYPEisoneof:primary,logical,extended
FS-TYPEisoneof:btrfs,nilfs2,ext4,ext3,ext2,fat32,fat16,hfsx,hfs+,hfs,jfs,
swsusp,linux-swap(v1),linux-swap(v0),ntfs,reirfs,hp-ufs,sun-ufs,xfs,apfs2,
apfs1,asfs,amufs5,amufs4,amufs3,amufs2,amufs1,amufs0,amufs,affs7,affs6,affs5,
affs4,affs3,affs2,affs1,affs0,linux-swap,linux-swap(new),linux-swap(old)
STARTandENDaredisklocations,suchas4GBor10%.Negativevaluescountfromthe
mple,-1sspecifiexactlythelastctor.
'mkpart'-TYPE
maybespecifiedtotanappropriatepartitionID.
(parted)mkpart
Partitionname?[]?first_part
Filesystemtype?[ext2]?ext4
Start?1
End?2048M
(parted)print
Model:VMware,VMwareVirtualS(scsi)
Disk/dev/sdb:21.5GB
Sectorsize(logical/physical):512B/512B
PartitionTable:gpt
DiskFlags:
NumberStartEndSizeFilesystemNameFlags
11049kB2048MB2047MBfirst_part
(parted)
需要指定分区类型为PART-TYPE,为primary,logical,extended之⼀,extended和logical仅⽤在msdos和mips磁盘标签。如果是创
建GPT磁盘标签,那么就没有这三者的概念了,该项就变成了为分区指定任意名称(Name),指定⽂件系统为FS-TYPE(从mkpart之后
print的结果来看,即使指定该项也不会创建⽂件系统,可指定其值来为分区设置⼀个合适的⽂件系统签名。在创建不同的实际⽂件系统时或创建
物理卷时,该签名会被擦除),指定起始和结束位置为START和END,START、END均为磁盘起始位置的偏移量,可以为其指定数字时带上
单位,如果仅指定数字⽽没有单位,则其默认单位可以由unit命令来指定。负值表⽰从磁盘结束位置向前计算位置,⽐如
-1s
倒数第⼀个扇区。
上⾯的操作也可以⼀⾏就可以完成,
(parted)mkpartcond_part2048MB4096MB
(parted)print
Model:VMware,VMwareVirtualS(scsi)
Disk/dev/sdb:21.5GB
Sectorsize(logical/physical):512B/512B
PartitionTable:gpt
DiskFlags:
NumberStartEndSizeFilesystemNameFlags
11049kB2048MB2047MBfirst_part
22048MB4096MB2048MBcond_part
(parted)
当然,也可以通过仅⼀⾏的命令⾏模式来完成上⾯的操作,
parted/dev/sdamklabelgptmkpartthird_partext34096MB5120MB
请注意parted命令是输⼊命令回车后即可⽣效,不像fdisk⼀样要最后确认执⾏才⽣效。使⽤parted命令创建分区之后,有的发⾏版可能不
会⾃动识别新建的分区,需要重新读取/etc/fstab⽂件识别新的分区或重启。
/etc/mtab⽂件由操作系统维护,处于安全考虑不要⼿动修改该⽂件,/etc/fstab定义了应该挂载什么,在系统启动时
会被读取,
我们也可以rm命令删除创建的分区,这⾥就不详述了。
本文发布于:2023-03-24 05:21:42,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/2d77a7749296d6644a8adadd23d9eb52.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:分区格式.doc
本文 PDF 下载地址:分区格式.pdf
留言与评论(共有 0 条评论) |