- 检查磁盘分区情况:
lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
nvme0n1 259:0 0 1.9T 0 disk
├─nvme0n1p1 259:1 0 100M 0 part /boot/efi
├─nvme0n1p2 259:2 0 16M 0 part
├─nvme0n1p3 259:3 0 199.2G 0 part /run/media/root/8E6483276483115F
├─nvme0n1p4 259:4 0 814M 0 part
├─nvme0n1p5 259:5 0 483.6G 0 part /run/media/root/1EE8A168E8A13EC1
├─nvme0n1p6 259:6 0 1G 0 part /boot
├─nvme0n1p7 259:7 0 200G 0 part /run/media/root/8A3708C07CA77CE2
└─nvme0n1p8 259:8 0 1023G 0 part
├─klas-root 253:0 0 1019G 0 lvm /
└─klas-swap 253:1 0 4G 0 lvm [SWAP]
这里解释一下名词
- NAME:设备名称
- MAJ:MIN:主设备号:次设备号
- RM:是否可移动;
- 0:不可移动(如内置硬盘)
- 1:可移动设备(如 U盘、光驱)
- SIZE:容量大小
- RO:是否只读
- TYPE:设备类型
- disk:整块物理磁盘
- part:磁盘上的物理分区
- lvm:LVM 逻辑卷
- crypt:加密设备
- rom:只读存储器
- MOUNTPOINTS:挂载点,该设备在 Linux 文件系统树中的访问路径
- 根据磁盘分区情况可以判断出有关windows的分区如下(不确定的可以看下一步,有更明确的提示,这里是为了取消对Windows磁盘的自动挂载)
- nvme0n1p2:Windows 专用的保留分区
- nvme0n1p3:Windows 磁盘分区
- nvme0n1p4:Windows 恢复分区
- nvme0n1p5:Windows 磁盘分区
- nvme0n1p7:Windows 磁盘分区
- 因为nvme0n1p3、nvme0n1p5、nvme0n1p7被自动挂载了,所以需要用
umount命令手动取消挂载。umount /run/media/root/8E6483276483115F
umount /run/media/root/1EE8A168E8A13EC1
umount /run/media/root/8A3708C07CA77CE2
- 进入parted工具执行磁盘分区处理:
parted /dev/nvme0n1。GNU Parted 3.6
使用 /dev/nvme0n1
欢迎使用 GNU Parted!输入 'help' 来查看命令列表。
- 输入
print命令,分析磁盘分区,这里的编号1~8就对应着lsblk中NAME的n几;也就是从这能看到2是Windows系统的MSR保留分区,3、4、5、6是Windows的NTFS文件系统格式。这里需要注意Linux的/boot分区(6)格式是XFS,根分区(8)的类型是LVM逻辑卷。(parted) print
型号:ZHITAI TiPlus7100 2TB (nvme)
磁盘 /dev/nvme0n1:2048GB
扇区大小 (逻辑/物理):512B/512B
分区表:gpt
磁盘标志:
编号 起始点 结束点 大小 文件系统 名称 标志
1 1049kB 106MB 105MB fat32 EFI System Partition 启动, esp, no_automount
2 106MB 123MB 16.8MB Microsoft reserved partition msftres, no_automount
3 123MB 214GB 214GB ntfs Basic data partition msftdata
4 214GB 215GB 854MB ntfs 隐藏, 诊断, no_automount
7 215GB 430GB 215GB ntfs Basic data partition msftdata
5 430GB 949GB 519GB ntfs Basic data partition msftdata
6 949GB 950GB 1074MB xfs
8 950GB 2048GB 1098GB lvm
- 根据上面的检查,需要删除的分区是2、3、4、5、7,依次执行
rm命令。(parted) rm 2
(parted) rm 3
(parted) rm 4
(parted) rm 5
(parted) rm 7
- 再次检查分区情况:
print。(parted) print
型号:ZHITAI TiPlus7100 2TB (nvme)
磁盘 /dev/nvme0n1:2048GB
扇区大小 (逻辑/物理):512B/512B
分区表:gpt
磁盘标志:
编号 起始点 结束点 大小 文件系统 名称 标志
1 1049kB 106MB 105MB fat32 EFI System Partition 启动, esp, no_automount
6 949GB 950GB 1074MB xfs
8 950GB 2048GB 1098GB lvm
- 退出parted:
quit。
- 使用fdisk工具处理:
fdisk /dev/nvme0n1。[root@Kylin ~]# fdisk /dev/nvme0n1
欢迎使用 fdisk (util-linux 2.39.1)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
该磁盘目前正在使用 - 不建议您重新分区。
推荐您卸载此磁盘上所有的文件系统,并关闭(swapoff)上面的交换分区。
命令(输入 m 获取帮助):
- 新建分区,输入:
n,然后一直按回车键就可以将刚才空闲出的连续空闲空间创建成一个新分区。命令(输入 m 获取帮助):n
分区号 (2-5,7,9-128, 默认 2):
第一个扇区 (206848-4000797326, 默认 206848):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (206848-1853315071, 默认 1853315071):
创建了一个新分区 2,类型为“Linux filesystem”,大小为 883.6 GiB。
- 完成分区创建以后,需要调整分区文件系统类型,输入:
t。命令(输入 m 获取帮助):t
- 选择刚刚创建的新分区:
2分区号 (1,2,6,8, 默认 8): 2
- 这里输入:
L,查看所有类型,找到“Linux LVM”的数字序号。如果光标前面显示“:”说明没有到低,按空格展示下一页;如果光标前面显示“(END)”说明到了结尾,按“q”可以退出查看,继续输入指令。我这里截取一小段内容。分区类型或别名(输入 L 列出所有类型):L
......
42 Linux home 933AC7E1-2EB4-4F13-B844-0E14E2AEF915
43 Linux RAID A19D880F-05FC-4D3B-A006-743F0F84911E
44 Linux LVM E6D6D379-F507-44C2-A23C-238F2A3DF928
45 Linux variable data 4D21B016-B534-45C2-A9FB-5C16E091FD2D
46 Linux temporary data 7EC6F557-3BC5-4ACA-B293-16EF5DF639D1
......
- 根据上面打印的内容可以得知,LVM的值是44,那就输入:
44。分区类型或别名(输入 L 列出所有类型):44
已将分区“Linux root (MIPS-32 LE)”的类型更改为“Linux LVM”。
- 预览一下即将修改的分区表:
p。命令(输入 m 获取帮助):p
Disk /dev/nvme0n1:1.86 TiB,2048408248320 字节,4000797360 个扇区
磁盘型号:ZHITAI TiPlus7100 2TB
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
磁盘标识符:92EEA5EB-F1E8-4633-B6AD-3A9EF7029653
设备 起点 末尾 扇区 大小 类型
/dev/nvme0n1p1 2048 206847 204800 100M EFI 系统
/dev/nvme0n1p2 206848 1853315071 1853108224 883.6G Linux LVM
/dev/nvme0n1p6 1853315072 1855412223 2097152 1G Linux 文件系统
/dev/nvme0n1p8 1855412224 4000796671 2145384448 1023G Linux LVM
- 确认无误后,写入分区表:
w。命令(输入 m 获取帮助):w
分区表已调整。
正在同步磁盘。
- 使内核重新读取磁盘分区表:
partprobe /dev/nvme0n1。
- 将新分区创建为物理卷:
pvcreate /dev/nvme0n1p2。[root@Kylin ~]# pvcreate /dev/nvme0n1p2
Physical volume "/dev/nvme0n1p2" successfully created.
- 检查系统内卷组名称:
vgs。[root@Kylin ~]# vgs
VG #PV #LV #SN Attr VSize VFree
klas 2 2 0 wz--n- 1.86t 0
- 将新物理卷加入现有的 klas 卷组(上面命令的VG):
vgextend klas /dev/nvme0n1p2。[root@Kylin ~]# vgextend klas /dev/nvme0n1p2
Volume group "klas" successfully extended
- 扩展根目录逻辑卷:
lvextend -l +100%FREE /dev/mapper/klas-root。[root@Kylin ~]# lvextend -l +100%FREE /dev/mapper/klas-root
Size of logical volume klas/root changed from <1019.00 GiB (260863 extents) to <1.86 TiB (487072 extents).
Logical volume klas/root successfully resized.
- XFS 文件系统在线识别新空间:
xfs_growfs /。[root@Kylin ~]# xfs_growfs /
meta-data=/dev/mapper/klas-root isize=512 agcount=4, agsize=66780928 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=1, rmapbt=1
= reflink=1 bigtime=1 inobtcount=1 nrext64=1
data = bsize=4096 blocks=267123712, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0, ftype=1
log =internal log bsize=4096 blocks=130431, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 267123712 to 498761728
- 最后查看一下根目录大小:
df -h /。[root@Kylin ~]# df -h /
文件系统 大小 已用 可用 已用% 挂载点
/dev/mapper/klas-root 1.9T 319G 1.6T 17% /