如何在 Linux 中创建新的 Ext4 文件系统?

linuxoperating systemfile systemunix更新于 2026/2/16 5:37:17

计算机硬盘通常使用特定的文件系统进行格式化,以便操作系统能够对其进行读写操作。对于基于 UNIX 的系统,我们有各种类型的文件系统。在本文中,我们将了解如何使用 Ext4 文件系统格式化硬盘上的新分区。

可用的文件系统类型

首先,我们来了解一下当前操作系统有哪些可用的文件系统。以下命令列出了所有这些文件系统。

$ ls -1 /sbin/mkfs*

运行上述代码得到以下结果 −

/sbin/mkfs
/sbin/mkfs.bfs
/sbin/mkfs.cramfs
/sbin/mkfs.ext2
/sbin/mkfs.ext3
/sbin/mkfs.ext4
/sbin/mkfs.ext4dev
/sbin/mkfs.fat
/sbin/mkfs.minix
/sbin/mkfs.msdos
/sbin/mkfs.ntfs
/sbin/mkfs.vfat

查看当前分区

接下来,我们来查看当前硬盘及其可供操作系统使用的分区。根据此输出,我们可以决定添加新硬盘或在现有桌面上创建新分区并将其格式化为 ext4。

$ sudo fdisk -l
[sudo] password for ubuntu:

运行上述代码得到以下结果 −

Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x06807e05

Device    Boot   Start      End       Sectors    Size    Id   Type
/dev/sda1  *      2048    33554431    33552384   16G    83   Linux
/dev/sda2       33556478  41940991    8384514     4G     5   Extended
/dev/sda5       33556480  41940991    8384512     4G     82  Linux swap / Solaris

添加新分区

使用相同的命令,但选择不同的参数,如下所示。我们可以看到操作系统支持的所有可用格式。

$ sudo fdisk /dev/sda
Command (m for help): l

运行上述代码得到以下结果 −

0    Empty               24       NEC DOS            81    Minix / old Lin    bf   Solaris
1    FAT12               27       Hidden NTFS Win    82    Linux swap / So    c1   DRDOS/sec (FAT-
2    XENIX root          39       Plan 9             83    Linux              c4   DRDOS/sec (FAT-
3    XENIX usr           3c       PartitionMagic     84    OS/2 hidden or     c6   DRDOS/sec (FAT-
4    FAT16 <32M          40       Venix 80286        85    Linux extended     c7   Syrinx
5    Extended            41       PPC PReP Boot      86    NTFS volume set    da   Non-FS data
6    FAT16               42       SFS                87    NTFS volume set    db   CP/M / CTOS / .
7    HPFS/NTFS/exFAT     4d       QNX4.x             88    Linux plaintext    de   Dell Utility
8    AIX                 4e       QNX4.x 2nd part    8e    Linux LVM          df   BootIt
9    AIX bootable        4f       QNX4.x 3rd part    93    Amoeba             e1   DOS access
a    OS/2 Boot Manag     50       OnTrack DM         94    Amoeba BBT         e3   DOS R/O
b    W95 FAT32           51       OnTrack DM6 Aux    9f    BSD/OS             e4   SpeedStor
c    W95 FAT32 (LBA)     52       CP/M               a0    IBM Thinkpad hi    ea   Rufus alignment
e    W95 FAT16 (LBA)     53       OnTrack DM6 Aux    a5    FreeBSD            eb   BeOS fs
f    W95 Ext'd (LBA)     54       OnTrackDM6         a6    OpenBSD            ee   GPT
10   OPUS                55       EZ-Drive           a7    NeXTSTEP           ef   EFI (FAT-12/16/
11   Hidden FAT12        56       Golden Bow         a8    Darwin UFS         f0   Linux/PA-RISC b
12   Compaq diagnost     5c       Priam Edisk       a9    NetBSD             f1   SpeedStor
14 Hidden FAT16 <3       61       SpeedStor        ab    Darwin boot        f4   SpeedStor
16 Hidden FAT16          63       GNU HURD or Sys   af    HFS / HFS+         f2   DOS secondary
17 Hidden HPFS/NTF       64       Novell Netware   b7    BSDI fs            fb   VMware VMFS
18 AST SmartSleep        65       Novell Netware   b8    BSDI swap          fc   VMware VMKCORE
1b Hidden W95 FAT3       70       DiskSecure Mult  bb    Boot Wizard hid    fd   Linux raid auto
1c Hidden W95 FAT3       75       PC/IX            bc    Acronis FAT32 L    fe   LANstep
1e Hidden W95 FAT1       80       Old Minix        be    Solaris boot       ff   BBT

接下来我们选择 n 选项来创建一个新的分区。

Command (m for help): n
Command action
   l logical (5 or over)
   p primary partition (1-4)
First sector (39849982-41940991, default 39849982):
Using default value 39849982
Last sector, +sectors or +stze(K,M,G} (39849982-41940991, default 4
1940991):
Using default value 41940991

现在我们发出以下命令将 sda5 分区设为 ext4 分区。

sudo mkfs.ext4 /dev/sda5

有用资源