目录

一、fdisk工具

管理磁盘分区

fdisk [磁盘名称]

fidisk命令中的参数以及作用

参数作用
m查看全部可用的参数
n添加新的分区
d删除某个分区的信息
l列出所有可用的分区类型
t改变某个分区类型
p查看分区信息
w保存并退出
q不保存直接退出

创建一个磁盘分区

1、虚拟机添加测试硬盘

首先编辑虚拟机设置,添加一块硬盘用于测试

image-20231205211435288

默认推荐,下一步

image-20231205211544999

创建新虚拟磁盘,下一步

image-20231205211625193

指定磁盘容量

image-20231205211826171

指定磁盘文件

image-20231205212143310

确认磁盘添加情况,无误后点击确定

image-20231205212230914

2、创建磁盘分区

使用lsblk命令列出块设备的基本信息,可以看到新添加的20G硬盘

image-20231205212844461

fdisk管理磁盘分区

fdisk /dev/sdb

image-20231205213020476

参数m可以列出fdisk中常见的参数以及一些简介

image-20231205213202404

输入n添加新的分区(P为主分区,e为扩展分区)

image-20231205213358314

选择p添加主分区。分区号和起始扇区可以不管默认即可,添加主分区大小的格式为+size{K,M,G}

image-20231205213543442

接着创建第二个分区。如果遇到值超出范围(Value out of range)的情况就是磁盘大小不够你指定的大小。继续点击回车(ENTER)系统就会自动把剩下来的磁盘空间给到你创建的分区上。

image-20231205214036265

最后输入p(查看分区信息)查看指定分区的情况

image-20231205214453878

w(保存并退出)

image-20231205214719140

现在lsblk可以看到sdb下已经有两个分区了

image-20231205214825878

3、文件系统管理磁盘分区

mkfs.ext4 /dev/sdb1
mkfs.ext4 /dev/sdb2

image-20231205215356834

image-20231205215423770

4、挂载

创建挂载点

mkdir /data1
mkdir /data2

image-20231205220148619

挂载mount [文件系统] [挂载目录]

mount /dev/sdb1 /data1
mount /dev/sdb2 /data2

现在能清晰地看到sdb1,sdb2已经分别挂载到根目录下的data1和data2上

image-20231205220556650

二、parted命令

注意:parted的操作都是实时生效的,没有容错谨慎使用

使用场景

(1)若磁盘小于2TB,可用fdisk /dev/sdb 进行分区,即MBR分区格式;

(2)若磁盘大于2TB,可用parted /dev/sdb进行分区,因为MBR分区磁盘是不能大于2.2TB,所以超过2TB一般使用GPT分区格式

一般情况下,我们都是选择使用fdisk工具来进行分区,但是目前在实际生产环境中使用的磁盘空间越来越大,呈TiB级别增长;而常用的fdisk这个工具对分区是有大小限制的,它只能划分小于2T的磁盘,划分大于2T磁盘分区的时候fdisk就无法满足要求了;这个时候有2个方法,其一是通过卷管理扩容卷来增大磁盘空间,其二就是通过parted工具来实现对GPT磁盘进行分区操作。

操作命令

cp [FROM-DEVICE] FROM-MINOR TO-MINOR           #将文件系统复制到另一个分区 
help [COMMAND]                                 #打印通用求助信息,或关于 COMMAND 的信息 
mklabel 标签类型                               #创建新的磁盘标签 (分区表) 
mkfs MINOR 文件系统类型                        #在 MINOR 创建类型为“文件系统类型”的文件系统 
mkpart 分区类型 [文件系统类型] 起始点 终止点   #创建一个分区 
mkpartfs 分区类型 文件系统类型 起始点 终止点   #创建一个带有文件系统的分区 
move MINOR 起始点 终止点                       #移动编号为 MINOR 的分区 
name MINOR 名称                                #将编号为 MINOR 的分区命名为“名称” 
print [MINOR]                                  #打印分区表,或者分区 
quit                                           #退出程序 
rescue 起始点 终止点                           #挽救临近“起始点”、“终止点”的遗失的分区 
resize MINOR 起始点 终止点                     #改变位于编号为 MINOR 的分区中文件系统的大小 
rm MINOR                                       #删除编号为 MINOR 的分区 
select 设备                                    #选择要编辑的设备 
set MINOR 标志 状态                            #改变编号为 MINOR 的分区的标志

'help'查看命令列表

image-20231205223814889

查看分区情况

image-20231205223950984

划分出主分区"parted1"

方式一

[root@localhost ~]# parted /dev/sdb  #进入parted命令交互后,将/dev/sdb进行分区
GNU Parted 3.1
使用 /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel  #创建新的磁盘标签(分区表)
新的磁盘标签类型? gpt  #设置磁盘标签类型为gpt
警告: The existing disk label on /dev/sdb will be destroyed and all data on this disk will
be lost. Do you want to continue?  #/dev/sdb上的现有磁盘标签将被销毁,并且此磁盘上的所有数据都将丢失。您想继续吗?
是/Yes/否/No? yes  #确认格式化
(parted) mkpart  #创建分区表
分区名称?  []? parted1  #分区名称自定义为parted1
文件系统类型?  [ext2]? ext4  #文件系统设置为ext4
起始点? 0%  #起始点,设置从0开始
结束点? 5G  #结束点,设置为磁盘大小为5G
(parted) print  #打印分区详细信息
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name     标志
 1      1049kB  5000MB  4999MB  ext4         parted1
#Number为1,后续需要删除指定的id号就为1
(parted)

image-20231205225622244

方式二

[root@localhost ~]# parted /dev/sdb mkpart parted1 1 5G  #在/dev/sdb上创建一个名称为parted1 的分区,GPT分区表中的1分区编号,大小为5G
信息: You may need to update /etc/fstab.

[root@localhost ~]# parted /dev/sdb print	#打印/dev/sdb分区的详细信息
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name     标志
 1      1049kB  5000MB  4999MB  ext4         parted1

image-20231205230709962

删除分区

rm Number号

image-20231205225722616

格式化操作

[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
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0   20G  0 disk
└─sdb1            8:17   0  4.7G  0 part
sr0              11:0    1  4.4G  0 rom
[root@localhost ~]# mkfs.ext4 /dev/sdb1  #将/dev/sdb格式化为ext4文件系统
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
305216 inodes, 1220352 blocks
61017 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1249902592
38 block groups
32768 blocks per group, 32768 fragments per group
8032 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736

Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

[root@localhost ~]# mkdir /data1	#创建挂载点
[root@localhost ~]# mount /dev/sdb1 /data1	#挂载到data1目录
[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G   12M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/mapper/centos-root   17G  1.6G   16G    9% /
/dev/sda1               1014M  151M  864M   15% /boot
tmpfs                    378M     0  378M    0% /run/user/0
/dev/sdb1                4.5G   19M  4.2G    1% /data1

image-20231205231443351

设置开机自动挂载

方法一:编辑/etc/fstab文件

[root@localhost ~]# vim /etc/fstab
添加以下内容:
/dev/sdb1               /data1             ext4    defaults        0 0 #将挂载信息添加到/etc/fstab文件中,实现永久挂载

image-20231205231919119

方法二:编辑/etc/rc.local文件

编辑此文件需要保证/etc/rc.d/rc.local有执行权限

[root@localhost ~]# chmod +x /etc/rc.d/rc.local
[root@localhost ~]# vim /etc/rc.local
添加以下内容:
mount /dev/sdb1 /data1
[root@localhost ~]# reboot

image-20231205232511536

虚拟机重启后查看挂载情况:

image-20231205232609780