USB外接硬碟(磁碟機)抓不到,該怎麼處理?
目录:
- 安装
parted - 在Ubuntu和Debian上
parted安装 - 在CentOS和Fedora上
parted安装 - 识别USB或SD卡名称
- 安全擦除数据(可选)
- 创建分区和格式化
- 用FAT32格式化
- 使用EXT4格式化
- 结论
在使用SD卡或USB驱动器之前,需要对其进行格式化和分区。 通常,大多数USB驱动器和SD卡都使用FAT文件系统进行了预格式化,因此无需立即进行格式化。 但是,在某些情况下,您可能需要格式化驱动器。
在Linux中,可以使用图形工具(如GParted)或命令行工具(如
fdisk
或
parted
来格式化驱动器并创建所需的分区。
在本教程中,我们将向您展示如何使用
parted
实用程序在Linux上格式化USB驱动器或SD卡。
重要的是要注意,格式化是一个破坏性的过程,它将删除所有现有数据。 如果SD卡的UDS驱动器上有数据,请确保将其备份。
安装
parted
GNU Parted是用于创建和管理分区表的工具。 如今,分装的软件包已预安装在大多数Linux发行版中。 您可以通过键入以下内容检查它是否已安装在系统上:
parted --version
parted (GNU parted) 3.2 Copyright (C) 2014 Free Software Foundation, Inc….
如果您的系统上未安装
parted
则可以使用发行版的软件包管理器进行安装。
在Ubuntu和Debian上
parted
安装
sudo apt update
sudo apt install parted
在CentOS和Fedora上
parted
安装
识别USB或SD卡名称
将USB闪存驱动器或SD卡插入Linux机器,然后使用
lsblk
命令查找设备名称:
lsblk
该命令将打印所有可用块设备的列表:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT… sdb 8:16 1 14.4G 0 disk └─sdb1 8:17 1 1.8G 0 part /media/data…
在上面的示例中,SD设备的名称为
/dev/sdb
,但这在您的系统上可能有所不同。
您也可以使用
dmesg
命令查找设备名称:
lsblk
连接设备后,
dmesg
将显示设备名称:
… sd 1:0:0:0: 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
命令将显示“设备上没有剩余空间”:
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对其进行格式化。 对于大多数使用情况,一个分区就足够了。
用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
输出应如下所示:
Model: Kingston DataTraveler 3.0 (scsi) Disk /dev/sdb: 15.5GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 15.5GB 15.5GB primary fat32 lba
就这样! 您已格式化设备。
使用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
输出应如下所示:
Model: Kingston DataTraveler 3.0 (scsi) Disk /dev/sdb: 15.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 15.5GB 15.5GB ext4 primary
结论
在Linux上格式化USB驱动器或SD卡是一个非常简单的过程。 您需要做的就是插入驱动器,创建分区表,并使用FAT32或您喜欢的文件系统对其进行格式化。
终奌站






