在本文中,我们将向你展示如何使用parted实用程序在Linux系统上格式化USB驱动器或SD卡。请务必注意,格式化是一个破坏性的过程,它将清除所有现有数据,如果SD卡的UDS驱动器上有数据,请确保将其备份。在使用SD卡或USB驱动器之前,需要对其进行格式化和分区,通常,大多数USB驱动器和SD卡都使用FAT文件系统进行了预格式化,因此无需立即进行格式化,但是,在某些情况下,你可能需要格式化驱动器。在Linux中,你可以使用GParted之类的图形工具或fdisk或parted之类的命令行工具来格式化驱动器并创建所需的分区。
安装parted
GNU Parted是用于创建和管理分区表的工具,如今,parted的软件包已预安装在大多数Linux发行版中,你可以通过键入以下内容检查它是否已安装在系统上:
$ parted --version
parted (GNU parted) 3.2
Copyright (C) 2014 Free Software Foundation, Inc.
...
如果你的系统上未安装parted,则可以使用发行版的软件包管理器进行安装。
在Ubuntu和Debian上安装:
$ sudo apt update
$ sudo apt install parted
在CentOS和Fedora上安装:
$ sudo yum install parted
识别USB或SD卡名称
将USB闪存驱动器或SD卡插入Linux机器,然后使用lsblk命令查找设备名称:
$ lsblk
该命令将打印所有可用块设备的列表:
在上面的示例中,SD设备的名称为/dev/sdb,但这在你的系统上可能有所不同。
也可以使用dmesg命令查找设备名称。
连接设备后,dmesg将显示设备名称:
...
[ +0.000232] sd 1:0:0:0: [sdb] 30218842 512-byte logical blocks: (15.5 GB/14.4 GiB)
...
安全擦除数据(可选)
在格式化驱动器之前,你可以通过用随机数据覆盖整个驱动器来安全擦除其中的所有数据。
仅在将要处理设备的情况下,才需要完全擦除数据,否则,你可以跳过此步骤。
运行以下命令之前,请格外小心,并清除驱动器数据,dd命令的of=...部分必须指向目标驱动器:
$ sudo dd if=/dev/zero of=/dev/sdb bs=4096 status=progress
根据驱动器的大小,此过程将需要一些时间才能完成。
擦除磁盘后,dd命令将显示“No space left on device”:
15455776768 bytes (15 GB, 14 GiB) copied, 780 s, 19.8 MB/s
dd: error writing '/dev/sdb': No space left on device
3777356+0 records in
3777355+0 records out
15472047104 bytes (15 GB, 14 GiB) copied, 802.296 s, 19.3 MB/s
创建分区和格式化
最常见的文件系统是Windows上的exFAT和NTFS,Linux上的EXT4和FAT32,可在所有操作系统上使用。
我们将向你展示如何将USB驱动器或SD卡格式化为FAT32或EXT4,如果要仅在Linux系统上使用驱动器,请使用EXT4,否则请使用FAT32对其进行格式化,对于大多数用例,一个分区就足够了。
1、用FAT32格式化
首先,通过运行以下命令创建分区表:
$ sudo parted /dev/sdb --script -- mklabel msdos
创建一个占用整个空间的Fat32分区:
$ sudo parted /dev/sdb --script -- mkpart primary fat32 1MiB 100%
将启动分区格式化为FAT32:
$ sudo mkfs.vfat -F32 /dev/sdb1
mkfs.fat 4.1 (2017-01-24)
完成后,使用下面的命令打印分区表并验证所有设置是否正确:
$ sudo parted /dev/sdb --script print
输出应如下所示:
就这样,你已格式化设备。
2、使用EXT4格式化
通过输入以下命令来创建GPT分区表:
$ sudo parted /dev/sdb --script -- mklabel gpt
运行以下命令以创建占用整个空间的EXT4分区:
$ sudo parted /dev/sdb --script -- mkpart primary ext4 0% 100%
将分区格式化为ext4:
$ sudo mkfs.ext4 -F /dev/sdb1
输出信息如下:
mke2fs 1.44.1 (24-Mar-2018)
/dev/sdb1 contains a vfat file system
Creating filesystem with 3777024 4k blocks and 944704 inodes
Filesystem UUID: 72231e0b-ddef-44c9-a35b-20e2fb655b1c
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
通过打印分区表进行验证:
$ sudo parted /dev/sdb --script print
输出应如下所示:
结论
在Linux操作系统上格式化USB驱动器或SD卡是一个非常简单的过程,你需要做的就是插入驱动器,创建分区表,并使用FAT32或你喜欢的文件系统对其进行格式化。
相关主题