我有一张 SanDisk MicroSD HC 卡(16GB),使用时遇到了一些问题。它安装在诺基亚 E71 手机上(可以处理高达 8GB 的 SD 卡 - 我相信这是回答我的问题的线索),现在我想在 USB 适配器中使用它。问题是没有操作系统可以正确识别该卡。E71 告诉我卡已损坏,但无法格式化。我尝试了 Windows、Mac OSX 和 Linux,但就是无法重新格式化卡。我能做的只有使用 Linux。使用 GParted 我可以看到分区表,如下所示:
Partiton File System Size Used Unused Flags
unallocated unallocated 4.00MiB -- --
/dev/sdb1 unallocated 14.83 MiB -- --
注意:在 /dev/sdb1 行上的“未分配”一词之前有一个“警告”标志,当我单击它时,我看到以下消息:
**** Unable to detect file system! Possibles reasons are:
**** - The FS is damaged
**** - The FS is unknown to GParted
**** - There is no FS available (unformatted)
**** - The device entry /dev/sdb1 is missing
我删除了 /dev/sdb1 分区并创建一个新的分区(例如 FAT32),当我应用更改时,我收到 libparted 消息“不能有重叠分区”。
GParted 详细信息文件(包含有关此操作的系统消息的 HTM 文件)告诉我分区 /dsv/sdb1 已成功删除,但在创建新分区时显示错误,显示“不能有重叠分区”。
fdisk -l 输出如下:
*** Disk /dev/sdb: 15.9 GB, 15951339456 bytes, 31116288 sectors
*** Units = sectors of 1 * 512 = 512 bytes
*** Sector size (logical/physical): 512 / 512 bytes
*** I/O size (minimum/optimal) : 512/512 bytes
*** Disk label tye: dos
*** Disk identifier: 0x00000000
*** Device Boot Start End Blocks Id System
*** /dev/sdb1 8192 31116287 15554048 b W95 FAT32
我已经尝试使用 cfdisk /deb/sdb1 删除损坏的分区并创建一个新的分区,但没有成功......
我几乎要放弃了……SD 卡上存储的数据根本不重要。事实上,SD 卡也不是那么重要……只是出于好奇,因为这种情况可能发生在 HD 上……
任何意见?
答案1
您可以简单地创建一个新的分区表。
首先打开 gparted 并确保已选择 SD 卡。
然后,转到设备>创建分区表
来源:http://www.dedoimedo.com/computers/gparted.html#mozTocId555890
或者,你可以使用 dd 将 SD 卡清零和然后创建一个新的分区表(如上)
将硬盘清零的命令是
dd if=/dev/zero of=/dev/sdX bs=1M
(用名称替换 X)
来源:http://how-to.wikia.com/wiki/How_to_wipe_a_hard_drive_clean_in_Linux
要找到 SD 卡的设备名称(例如 /dev/sdb),您可以使用命令lsblk
,或在 gparted 上检查它。
希望我能帮上忙。
答案2
“不能有重叠分区”消息让我认为您正在运行一个相当老版本的 GParted。这种错误曾经很常见,因为 GParted 所依赖的 libparted 库存在错误。较新的版本应该不会出现这个问题。
话虽如此,我没有看到任何证据表明您的问题出在分区定义上;相反,我认为您的文件系统已损坏。GParted 实用程序可处理分区和文件系统创建,但您可以单独执行这些任务。具体来说:
mkdosfs /dev/sdb1
该命令(输入为root
或使用sudo
)将在 上创建一个新的 FAT 文件系统/dev/sdb1
。
答案3
尝试这个:
1)破坏现有的分区表:
dd if=/dev/random of=/dev/sdb bs=512 count=1024
2)清除内存中的内核分区表。
Eject the card and reinsert it. Or reboot.
3)然后再次尝试使用 gparted,希望这次能够成功。
答案4
根据您对其他答案的回复,似乎您的 SDHC 卡工作不正常、被写保护、或者与您使用的控制器不兼容。
我建议在手机和另一个 SD 卡读卡器上使用它,看看它是否正常工作。
SD 卡读卡器的大小限制为 2GB 或 4GB。SDHC 读卡器(大约从 2006 年起)最多可读到 32GB。如果控制器与 SD 卡不兼容,则可能会出现问题。