Linux服务器磁盘格式化分区

若您购买的云服务器是 Linux 系统,您需要在购买新磁盘后,为该磁盘进行分区操作。

Linux服务器磁盘格式化分区步骤

您可以采用两种分区方式,一种为 MBR 方式,另一种为 GPT 方式。关于两种方式的差异以及磁盘分区时的注意事项,您可以查看磁盘分区概述。

使用 MBR 分区

本操作步骤是在 CentOS / 7.6 x86_64 (64bit) 系统中为一块新的 5 GB 数据盘(设备名为/dev/vdb)创建一个单分区。

1. 远程登录 阿里云服务器

请您先登录 阿里云服务器 。具体的登录方式请查看登录。

2.查看当前磁盘信息

执行fdisk -l命令查看当前磁盘信息。

[root@instance-xxx ~]# fdisk -l
磁盘 /dev/vda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b8163
设备       Boot      Start       End      Blocks    Id   System
/dev/vda1   *        2048    83886046    41941999+  83  Linux
磁盘 /dev/vdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

提示:

  • 查看前请确认数据盘已经挂载。若未挂载,请将磁盘挂载至后查看。

3. 对 云磁盘进行分区

使用 fdisk 方式对数据盘进行分区,请一次执行以下命令:

  • 执行 fdisk /dev/vdb 进行数据盘分区;
  • 输入p后按回车:打印分区列表以查看数据盘分区情况;本中该磁盘还未进行分区;
  • 输入n后按回车:创建一个新分区;
  • 输入p后按回车:选择分区类型为主分区;

    提示:该操作步骤是为磁盘创建一个单独的分区,即只需要主分区。若您需要为磁盘创建多个分区,请选择'e'。

  • 输入分区编号后按回车:本示例中,仅创建一个分区,输入1;
  • 输入第一个可用的扇区编号后按回车:采用默认值2048;
  • 输入最后一个扇区编号后按回车:若创建一个分区,按回车键即可采用默认值;若您需要创建多个分区,请根据实际情况输入扇区编号;
  • 输入p后按回车:打印分区列表查看当前数据盘分区情况;
  • 输入w后按回车:开始分区操作;
[root@instance-xxx ~]# fdisk /dev/vdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x88504a48 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):p
磁盘 /dev/vdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xbc3ca63f
设备 Boot      Start         End      Blocks   Id  System

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
   
Select (default p): p

分区号 (1-4,默认 1):1

起始 扇区 (2048-10485759,默认为 2048):2048

Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):

将使用默认值 10485759
分区 1 已设置为 Linux 类型,大小设为 5 GiB

命令(输入 m 获取帮助):p
磁盘 /dev/vdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xbc3ca63f

 设备 Boot      Start    End          Blocks   Id  System
/dev/vdb1       2048    10485759     5241856   83  Linux

命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。

提示:

  • fdisk 分区命令参数如下:b :编辑 bsd disklabel;c :切换 dos 兼容性标志;d :删除一个分区;g :创建一个新的空 GPT 分区表;G :创建一个 IRIX(SGI)分区表;l :列出已知的分区类型; m 打印帮助菜单;n :添加一个新分区;o :创建一个新空 DOS 分区表;p :打印分区表信息;q :退出而不保存更改;s :创建一个新的空的 Sun 磁盘标签;t :更改分区的系统 ID;u :更改显示/输入单位;v :验证分区表;w :将分区表写入磁盘并退出;x :额外功能

4. 查看新分区

执行命令 fdisk -l ,可以查看新的分区vdb1建立完成。

[root@instance-xxx ~]# fdisk -l

磁盘 /dev/vda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b8163
 设备 Boot        Start         End      Blocks     Id  System
/dev/vda1   *     2048      83886046    41941999+  83  Linux

磁盘 /dev/vdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xbc3ca63f
设备 Boot      Start         End      Blocks   Id  System
/dev/vdb1       2048    10485759     5241856   83  Linux

5. 创建一个文件系统

执行 mkfs.ext4 /dev/vdb1 命令在新分区上创建一个文件系统。创建时间长短根据 阿里云磁盘 磁盘容量大小而变化。

[root@instance-xxx ~]# mkfs.ext4 /dev/vdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310464 blocks
65523 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
8192 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: 完成 

提示:

  • 您也可以根据自己的需要,创建其他文件系统。

6. 备份新分区文件

执行命令 echo /dev/vdb1 /mnt ext4 defaults 0 0 >> /etc/fstab 写入新分区信息。

[root@instance-xxx ~]# echo /dev/vdb1 /mnt ext4 defaults 0 0 >> /etc/fstab

提示:

  • 如果需要把 阿里云磁盘 磁盘挂载到其他目录,可以修改以上命令中的 /mnt 至其他挂载节点。

7. 查看新分区信息

执行 cat /etc/fstab 命令查看,出现如下信息表示写入新分区成功。

[root@instance-xxx ~]# cat /etc/fstab
# /etc/fstab
# Created by anaconda on Thu Mar 21 07:01:01 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=84953f78-xxxx-4dbd-ac60-aaabc2e4cb9c /          ext4    defaults        1 1
/dev/vdb1 /mnt ext4 defaults 0 0

8. 挂载文件系统

执行 mount /dev/vdb1 /mnt 命令将该文件系统挂载至 /mnt 节点。

[root@instance-xxx ~]# mount /dev/vdb1 /mnt

9.查看当前磁盘空间

执行 df -h 命令查看挂载情况,如果出现分区信息,表示新分区挂载成功。

[root@instance-xxx ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/vda1        40G  1.7G   36G    5% /
devtmpfs        2.0G     0  2.0G    0% /dev
tmpfs           2.0G     0  2.0G    0% /dev/shm
tmpfs           2.0G   17M  2.0G    1% /run
tmpfs           2.0G     0  2.0G    0% /sys/fs/cgroup
tmpfs           396M     0  396M    0% /run/user/0
/dev/vdb1       4.8G   20M  4.6G    1% /mnt

使用 GPT 分区

本操作步骤是在 CentOS / 7.6 x86_64 (64bit) 系统中为一块新的 2300 GB 数据盘(设备名为/dev/vdc)创建一个单分区。

1. 远程登录 阿里云服务器

请您先登录 阿里云服务器 。具体的登录方式请查看登录。

2.查看当前磁盘信息

执行fdisk -l命令查看当前磁盘信息,可以看到当前 /dev/vdc 磁盘处于为分区状态。

[root@instance-xxxx ~]# fdisk -l

磁盘 /dev/vda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000b8163

设备 Boot      Start   End         Blocks     Id  System
/dev/vda1  *  2048    83886046    41941999+  83  Linux

磁盘 /dev/vdc:2469.6 GB, 2469606195200 字节,4823449600 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

提示:

  • 查看前请确认数据盘已经挂载。若未挂载,请将磁盘挂载至后查看。

3.对 阿里云磁盘进行分区

  • 使用 parted 对数据盘进行分区,执行命令 parted /dev/vdc后回车。根据提示,依次操作如下:
  • 输入 mklabel gpt后回车,转为 GPT 分区格式;
  • 输入 mkpart primary 1 100%后回车,划分一个主分区,并设置其开始和结束位置;
  • 输入align-check optimal 1 后回车,检查分区是否对齐,若返回1,则对齐;
  • 输入 print后回车 ,查看当前磁盘的分区表
  • 输入 quit后回车,退出。
[root@instance-xxxx ~]# parted /dev/vdc
GNU Parted 3.1
使用 /dev/vdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) mklabel gpt                                                      
(parted) mkpart primary 1 100%                                            
(parted) align-check optimal 1                                            
1 aligned
(parted) print                                                            
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 2470GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     标志
 1      1049kB  2470GB  2470GB               primary

(parted) quit                                                             
信息: You may need to update /etc/fstab.

4.系统重读分区表

运行命令 partprobe ,使系统重读分区表。

[root@instance-xxxx ~]# partprobe

5.创建文件系统

运行命令 mkfs -t <文件系统格式> /dev/vdc1 创建文件系统,本示例以 ext4 为例。

[root@instance-xxxx ~]# mkfs -t ext4 /dev/vdc1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
150732800 inodes, 602931200 blocks
30146560 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2751463424
18400 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
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

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

6.创建挂载点并挂载文件系统

执行 mkdir <挂载点> 创建挂载点,本挂载至 /set 挂载点;执行 mount /dev/vdc1 /set,将分区 /dev/vdc 挂载到 /set;执行 df -h ,查看目前磁盘空间和使用情况。

[root@instance-xxxx ~]# mkdir /set
[root@instance-xxxx ~]# mount /dev/vdc1 /set
[root@instance-xxxx ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/vda1        40G  1.7G   36G    5% /
devtmpfs        2.0G     0  2.0G    0% /dev
tmpfs           2.0G     0  2.0G    0% /dev/shm
tmpfs           2.0G   17M  2.0G    1% /run
tmpfs           2.0G     0  2.0G    0% /sys/fs/cgroup
/dev/vdb1       4.8G   20M  4.6G    1% /mnt
tmpfs           396M     0  396M    0% /run/user/0
/dev/vdc1        2.3T   85M  2.1T    1% /set