centos7系统如何使用GPT分区

1. GPT分区概述

  • GPT(Global Unique Identifier Partition Table)是一种先进的硬盘分区表结构,它是EFI(Extensible Firmware Interface)标准的一部分,用于替代传统的MBR(Master Boot Record)分区方案。GPT提供了更加灵活和可靠的磁盘分区机制,支持更大的硬盘容量和更多的分区数量。

1.1. GPT分区的特点

  • 支持大容量硬盘:GPT可以支持高达18EB(Exabytes)的硬盘容量,远超过MBR的2TB限制。
    更多分区数量:GPT允许每个硬盘拥有多达128个分区,而MBR通常限制为4个主分区或3个主分区加1个扩展分区。
  • 分区表冗余:GPT在硬盘的末尾保留了一个分区表的备份,以防主分区表损坏。
  • 唯一的分区ID:GPT使用GUID(Globally Unique Identifier)作为分区的唯一标识符,提高了分区的安全性。
  • 兼容性:GPT设计了一个保护MBR,以便传统的MBR分区工具不会误操作GPT硬盘。

1.2. GPT分区的结构

  • GPT分区的结构包括以下几个部分:
  1. 保护MBR:位于硬盘的第一个扇区,用于兼容性考虑,存储传统的MBR信息,防止不支持GPT的工具误操作。
  2. EFI分区:包含EFI系统分区(ESP),用于存储操作系统的引导程序。
  3. GPT头部:包含分区表的位置和大小信息,以及校验和,用于检测错误。
  4. 分区表:列出所有分区的详细信息,包括分区的起始和结束地址、类型、名称等。
  5. 分区数据区:实际存储用户数据的区域。

1.3. GPT分区的创建和管理

  • 创建GPT分区通常在安装操作系统时进行,或者通过专业的磁盘管理工具手动创建。在Windows系统中,可以通过磁盘管理控制台或命令行工具来创建和管理GPT分区。在Linux系统中,则可以使用parted或fdisk等工具来处理GPT分区。

1.4. GPT分区的优势

  • GPT分区相对于MBR分区的优势在于其更高的容错能力、更好的扩展性和更强的安全性。这些特性使得GPT成为现代计算机系统中首选的分区方案,尤其是在服务器和大型存储设备中。

2. 分区

bash 复制代码
#查看磁盘的当前状态	
[root@HikvisionOS ~]# lsblk
NAME                 MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                    8:0    0  7.3T  0 disk 
sdb                    8:16   0  3.6T  0 disk 
├─sdb1                 8:17   0  256M  0 part /boot/efi
├─sdb2                 8:18   0  768M  0 part /boot
├─sdb3                 8:19   0 15.7G  0 part [SWAP]
├─sdb4                 8:20   0    1M  0 part 
└─sdb5                 8:21   0  3.6T  0 part 
  ├─hikvisionos-root 253:0    0  250G  0 lvm  /
  └─hikvisionos-opt  253:1    0  3.4T  0 lvm  /opt
sdc                    8:32   0  3.6T  0 disk 
sdd                    8:48   0  7.3T  0 disk 
sde                    8:64   0  7.3T  0 disk 
sdf                    8:80   0  7.3T  0 disk
#硬盘sdc分区
parted /dev/sdc 

GNU Parted 3.5
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) p          #显示当前分区                                                      
Error: /dev/sdc: unrecognised disk label
Model: ATA ST4000NM024B-2TF (scsi)                                        
Disk /dev/sdc: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: unknown
Disk Flags: 
(parted) mklabel gpt           #使用GPT作为该磁盘的分区表类型,这个命令会覆盖原有的分区表                                         
(parted) mkpart                 #分区                                          
Partition name?  []? sdc1       #输入分区名                                          
File system type?  [ext2]? ext4   #输入分区的文件系统                                        
Start? 0                          #起点                                        
End? 4001G                        #终点                                        
Warning: The resulting partition is not properly aligned for best performance: 34s % 2048s != 0s
Ignore/Cancel? Ignore                                                     
(parted) p                       #验证是否分区成功                                              
Model: ATA ST4000NM024B-2TF (scsi)
Disk /dev/sdc: 4001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
 1      17.4kB  4001GB  4001GB  ext4         sdc1

(parted) quit                                 #退出分区                            
Information: You may need to update /etc/fstab.


[root@localhost ~]# lsblk
NAME                 MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sda                    8:0    0  7.3T  0 disk 
sdb                    8:16   0  3.6T  0 disk 
├─sdb1                 8:17   0  256M  0 part /boot/efi
├─sdb2                 8:18   0  768M  0 part /boot
├─sdb3                 8:19   0 15.7G  0 part [SWAP]
├─sdb4                 8:20   0    1M  0 part 
└─sdb5                 8:21   0  3.6T  0 part 
  ├─hikvisionos-root 253:0    0  250G  0 lvm  /
  └─hikvisionos-opt  253:1    0  3.4T  0 lvm  /opt
sdc                    8:32   0  3.6T  0 disk 
└─sdc1                 8:33   0  3.6T  0 part    #这里可以看的出来已经分区成功,但是还没有挂载
sdd                    8:48   0  7.3T  0 disk 
sde                    8:64   0  7.3T  0 disk 
sdf                    8:80   0  7.3T  0 disk 

3. 格式化并指定文件系统

bash 复制代码
#格式化一个名为/dev/sdb1的分区,使其成为一个ext4文件系统的命令
[root@localhost ~]# mkfs.ext4 /dev/sdc1 
mke2fs 1.46.4 (18-Aug-2021)
/dev/sdc1 alignment is offset by 3072 bytes.
This may result in very poor performance, (re)-partitioning suggested.
Creating filesystem with 976754637 4k blocks and 244195328 inodes
Filesystem UUID: 0486a410-e2f0-4c7d-bff0-3d5c458f324f
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
	102400000, 214990848, 512000000, 550731776, 644972544

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (262144 blocks): 
done
Writing superblocks and filesystem accounting information:            
done
#验证文件系统是否为ext4
[root@localhost ~]# blkid /dev/sdc1
/dev/sdc1: UUID="0486a410-e2f0-4c7d-bff0-3d5c458f324f" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="sdc1" PARTUUID="a8566345-ea05-4909-bf00-28888567c552"

4. 挂载

bash 复制代码
#创建挂载目录
mkdir   /data
#挂载
vim   /etc/fstab
/dev/sdc1         /data        ext4       defaults          0         0 
磁盘              挂载点      文件系统     默认的挂载选项     不备份     不进行文件系统检查

#defaults:这是一系列默认的挂载选项,包括rw(读写权限)、sync(同步写入)、auto(自动挂载)、new(新建文件系统)、exec(允许执行文件)、suid(允许setuid和setgid位)、dev(允许设备文件)和nosuid(禁止setuid和setgid位)
#0 0:这两个数字分别代表dump和pass选项。dump选项用于决定是否定期备份分区,0表示不备份。pass选项用于指定文件系统检查顺序,0表示不进行文件系统检查。

#加载/etc/fstab文件中的配置,尝试挂载所有的文件系统
mount  -a
#验证挂载信息
df -hT | grep data
/dev/sdc1                    ext4      3.6T   28K  3.4T   1% /data
相关推荐
丘山子9 小时前
牙牙学语:使用 PyTorch 从零开始构建和训练 GPT-2
人工智能·gpt·nlp
RuizhiHe12 小时前
从零开始实现大语言模型(二):文本数据处理
人工智能·gpt·语言模型·chatgpt·gpt-3·language model
李昂的数字之旅13 小时前
大语言模型测评工具-ChatHub和ChatAll
人工智能·gpt·语言模型
RuizhiHe1 天前
从零开始实现大语言模型(三):Token Embedding与位置编码
人工智能·gpt·语言模型·gpt-3·embedding·language model
Maynor9962 天前
如何利用GPT-4o生成有趣的梗图
gpt·音视频
MavenTalk2 天前
GPT-4o还没完全开放,Moshi就提前开源了
gpt·chatgpt·语音助手·gpt-4o
GodGump2 天前
DB-GPT 文档切分报错
数据库·gpt
三花AI3 天前
对标 GPT-4o 的开源实时语音多模态模型:Moshi
人工智能·gpt·语言模型·语音识别
进击的阿三姐3 天前
GPT提示词模板
人工智能·gpt·chatgpt