低级格式化只读微型 SD 卡

低级格式化只读微型 SD 卡

我有一张 64GB 的微型 SD 卡,它是从 Android 手机中取出的,没有卸载(升级到 Android 7.1 后找不到卸载,他们试图让它变得简单和直观 - 它是一个弹出图标,在菜单中有 6 级深度,因此无法通过搜索“卸载”找到)

现在,SD 卡可以挂载和卸载,也可以从中复制数据,但是无法再写入、删除文件、格式​​化或写入新的分区表;删除文件似乎可以,但是卸载并再次挂载后,一切都恢复到从 Linux 向微型 SD 卡复制文件时第一次出错的状态;因此,在不卸载的情况下将卡从 Android 手机中取出后,在几个挂载/卸载循环中,写入卡的操作有效;

尝试在 Android 手机中格式化它时出错;在相机中,它说存储卡已锁定;在Ubuntu 18.04

lsblk
mmcblk1      179:24   0 59.5G  0 disk 
└─mmcblk1p1  179:25   0 59.5G  0 part 

创建分区表

sudo gparted
Input/output error during write on /dev/mmcblk1


sudo hdparm -I /dev/mmcblk1p1
/dev/mmcblk1p1:
 HDIO_DRIVE_CMD(identify) failed: Invalid argument


sudo hdparm -I /dev/mmcblk1
/dev/mmcblk1:
 HDIO_DRIVE_CMD(identify) failed: Invalid argument


sudo hdparm -v /dev/mmcblk1
/dev/mmcblk1:
 HDIO_DRIVE_CMD(identify) failed: Invalid argument
 readonly      =  0 (off)
 readahead     = 256 (on)
 geometry      = 1949664/4/16, sectors = 124778496, start = 0


sudo hdparm -L 0 /dev/mmcblk1p1
/dev/mmcblk1p1:
 setting drive doorlock to 0 (off)
 HDIO_DRIVE_CMD(doorlock) failed: Invalid argument


sudo gnome-disks
Error while repairing filesystem
on dev/mmcblk1p1
Process reported exit code 1: fsck.fat 4.1(2017-01-24) (udisks-error-quark, 0)


sudo fsck /dev/mmcblk1p1
fsck from util-linux 2.31.1
fsck.fat 4.1 (2017-01-24)
0x41: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt.
1) Remove dirty bit
2) No action
? 1
Perform changes ? (y/n) y

fsck 没有出错,但再次运行它,一切又恢复如初。

sudo mkfs.vfat -n 64 /dev/mmcblk1p1 
mkfs.fat 4.1 (2017-01-24)

格式没有错误,但是再次安装时,一切都恢复如初。

testdisk
Disk /dev/mmcblk1 - 63 GB / 59 GiB - CHS 1949664 4 16
Current partition structure:
     Partition                  Start        End    Size in sectors
 1 * FAT32 LBA               32   0  1 1949663   3 16  124776448 [64d]
Warning: Bad starting sector (CHS and LBA don't match)


sudo dd if=/dev/zero of=/dev/mmcblk1 bs=512 seek=1

4GB 之后通过 control-c 停止它,仍然没有变化,文件仍然存在,无法写入 micro sdcard

基本上,格式化、使用 gparted 写入新分区表、使用 fsck 清除脏位,甚至使用 dd 写入,似乎都没有效果。微型 SD 卡没有物理损坏,挂载/卸载都很好,这就是为什么我认为格式化它,如果没有,那么使用 gparted 写入新分区表应该可以完全清除它并使其再次像新的一样。我错过了什么?为什么我不能格式化它?还有什么我可以尝试的吗?好像它里面有一些设置无法通过这些工具访问;它是一张 Transcend 微型 SD 卡

编辑:尝试在 Windows XP 上格式化微型 SD 卡,它说该卡是只读的;连接到 USB 微型 SD 卡适配器,显示卡为 32GB,然后连接到多卡读卡器(微型 SD 卡插入 SD 卡适配器插入读卡器,USB 读卡器输出),显示 60GB 且是只读的;问题不在于适配器,因为我将卡插入装有 ubuntu 18.04 的笔记本电脑中,该笔记本电脑有一个微型 SD 卡插槽,所以没有适配器,在安卓手机中也是如此,同样,没有适配器;

尝试过 mkusb-dus,但它拒绝擦除或重置卡

尝试使用 dd 覆盖整个卡,但再次安装后,所有内容仍然存在;文件可以复制但不能删除;无法创建分区表来重置 SD 卡

我读到有一个只读的磁盘范围属性,我会尝试看看是否可以重置它

答案1

  • 在开始修理之前,请备份(复制)卡上的所有重要文件。

  • 您可以根据这个链接分析问题,

    问题分析

    我希望您能够通过删除第一个 mibibyte 中的一些数据(这会使写入工具无法工作)使卡再次可写入。否则,您至少会了解问题所在以及卡为何是只读的(例如,它“卡住了”)。


相关内容