文章目录
MBR和GPT
MBR
MBR(Master Boot Record)是主引导记录的缩写,在传统硬盘分区中,引导扇区是每个分区(Partition)的第一扇区,而主引导扇区是硬盘的第一块扇区。为了方便计算机访问硬盘,把硬盘上的空间划分成许许多多的区块(sectors),即扇区,然后给每个区块分配一个地址,称为逻辑块地址(LBA)。
在MBR磁盘的第一个扇区内保护着启动代码和硬盘分区表。启动代码的作用是指引计算机从活动分区引导启动操作系统(BIOS下启动操作系统的方式);分区表的作用是记录硬盘的分区信息。
在MBR中,分区大小是固定的,一共可容纳4个主要分区信息。在MBR分区表中逻辑块地址采用32位二进制数表示,因此一共可表示2^32个逻辑块地址。如果一个扇区大小为512字节,那么MBR硬盘最大分区容量仅为2TB。
GPT
GPT是GUID磁碟分割表(GUID Partition Table)的缩写,即全局唯一标识磁盘分区表,是一个实体硬盘的分区表的结构布局的标准。
在GTP磁盘的第一个数据块中同样有一个与MBR(主引导记录)类似的标记,叫做PMBR。PMBR的作用是,当使用不支持GPT的分区工具时,整个硬盘将显示为一个受保护的分区,以防止分区表及硬盘数据遭到破坏。UEFI并不从PMBR中获取GPT磁盘的分区信息,它有自己的分区表,即GPT分区表。
GPT的分区方案之所以比MBR更先进,是因为在GPT分区表头中可自定义分区数量的最大值,也就是说GPT分区表的大小不是固定的。在Windows中,微软设定GPT磁盘的最大分区数量为128个。另外,GPT分区方案中逻辑快地址(LBA)采用64位二进制数表示,可以表示2^64个逻辑块地址。除此之外,GPT分区方案在硬盘的末端还有一个备份分区表,保证了分区信息不容易丢失。
备份MBR主引导记录
[root@localhost ~]# dd if=/dev/sda of=/opt/mbr.backup bs=512 count=1
记录了1+0 的读入
记录了1+0 的写出
512字节(512 B)已复制,0.000368214 秒,1.4 MB/秒
[root@localhost ~]# file /opt/mbr.backup
/opt/mbr.backup: x86 boot sector; partition 1: ID=0x83, active, starthead 32, startsector 2048, 2097152 sectors; partition 2: ID=0x8e, starthead 170, startsector 2099200, 39843840 sectors, code offset 0x63
恢复MBR主引导记录
[root@localhost ~]# dd if=/opt/mbr.backup of=/dev/sda bs=512 count=1
记录了1+0 的读入
记录了1+0 的写出
512字节(512 B)已复制,0.000241842 秒,2.1 MB/秒
df:磁盘容量检查
df -i //查看inode使用情况
df -h //以G或者T或者M人性化方式显示
df -T //查看文件类型
[root@localhost ~]# df
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/mapper/rhel-root 17811456 973052 16838404 6% /
devtmpfs 922444 0 922444 0% /dev
tmpfs 933524 0 933524 0% /dev/shm
tmpfs 933524 8788 924736 1% /run
tmpfs 933524 0 933524 0% /sys/fs/cgroup
/dev/sda1 1038336 145864 892472 15% /boot
tmpfs 186708 0 186708 0% /run/user/0
[root@localhost ~]# df -T
文件系统 类型 1K-块 已用 可用 已用% 挂载点
/dev/mapper/rhel-root xfs 17811456 973052 16838404 6% /
devtmpfs devtmpfs 922444 0 922444 0% /dev
tmpfs tmpfs 933524 0 933524 0% /dev/shm
tmpfs tmpfs 933524 8788 924736 1% /run
tmpfs tmpfs 933524 0 933524 0% /sys/fs/cgroup
/dev/sda1 xfs 1038336 145864 892472 15% /boot
tmpfs tmpfs 186708 0 186708 0% /run/user/0
du:查看目录或者文件的容量,不加参数以k为单位
du -sh opt //人性化输出显示大小
-s:列出总和
-h:人性化显示容量信息
[root@localhost ~]# du -sh *
4.0K anaconda-ks.cfg
1.3M yum-3.4.3-163.el7.centos.noarch.rpm
28K yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
36K yum-plugin-fastestmirror-1.1.31-52.el7.noarch.rpm
28K yum-updateonboot-1.1.31-52.el7.noarch.rpm
124K yum-utils-1.1.31-52.el7.noarch.rpm
[root@localhost ~]# du -sh /tmp/
8.0K /tmp/
[root@localhost ~]# du -h /tmp/
0 /tmp/.Test-unix
0 /tmp/.XIM-unix
0 /tmp/.ICE-unix
0 /tmp/.font-unix
0 /tmp/.X11-unix
0 /tmp/systemd-private-c7cb3cd712f547d7a54f32225b57ef2b-chronyd.service-yfL3qi/tmp
lsblk:查看分区情况
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─rhel-root 253:0 0 17G 0 lvm /
└─rhel-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 20G 0 disk
sdc 8:32 0 20G 0 disk
sr0 11:0 1 3.8G 0 rom
磁盘分区
分区工具有fdisk和gdisk,当硬盘小于2T的时候我们应该用fdisk来分区,而当硬盘大于2T的时候则应用gdisk来进行分区
fdisk分区(1P1E1L)
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x6b8c7ced 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+500M
分区 1 已设置为 Linux 类型,大小设为 500 MiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─rhel-root 253:0 0 17G 0 lvm /
└─rhel-swap 253:1 0 2G 0 lvm

这篇博客介绍了Linux系统中MBR和GPT两种磁盘分区表的区别,包括MBR的限制和GPT的优势。同时,详细讲解了如何备份与恢复MBR主引导记录,以及磁盘容量的检查方法如df和du命令。还涵盖了磁盘分区工具fdisk的使用,磁盘格式化,临时和永久挂载磁盘的操作,以及交换分区swap的创建、启用和停用。

3072

被折叠的 条评论
为什么被折叠?



