1

I have a SanDisk MicroSD HC card (16GB) and I'm facing some problems using it. It was installed on a Nokia E71 cellphone (wich can handle SD cards up to 8GB - I believe this is a clue to the answer to my question) and now I want to use it in a USB adapter. The problem is that no OS recognizes the card properly. E71 tells me that the card is corrupted but it is unable format it. I tried Windows, Mac OSX and Linux and I simply cannot reformat the card. The farther I could get was with Linux. Using GParted I can see the partition table, which is shown as follows:

Partiton      File System       Size       Used   Unused   Flags
unallocated    unallocated      4.00MiB      --     --
/dev/sdb1      unallocated     14.83 MiB     --     --

Note: just before the word "unallocated" on /dev/sdb1 line there is a "warning" sign and when I click it I see the following message:

**** 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

I delete the /dev/sdb1 partition and create a new one (FAT32, for example) and whan I apply the changes I get the libparted mesage "Can't Have Overlapping Partitions".

The GParted details file (an HTM file containing the system messages concerning this operation tell me that partition /dsv/sdb1 was succefully deleted but shows an error creating the new partition displayng the "Can't have overlapping partitions".

fdisk -l output is as follows:

*** 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

I've already tried cfdisk /deb/sdb1 to erase the damaged partition and create a new one, but didn't work...

I'm almost giving up... the data stored on the SD card is not important at all. As a matter of fact, the SD card also is not that important.. it's just out of curiosity, because this could happen with a HD...

Any comments?

1
  • Hello, everybody I give up... I tried everything suggested here (and in other forums) and I believe the MicroSD card is dead... Thanks for all your help and patience
    – Giancarlo
    Commented Mar 19, 2014 at 15:13

4 Answers 4

0

You can simply create a new partition table.

First open gparted and ensure you have the SD card selected.

Then, go to Device > Create Partition Table

Source: http://www.dedoimedo.com/computers/gparted.html#mozTocId555890

Alternatively, you can use dd to zero out the SD card and then create a new partition table (as above)

The command to zero a hard drive is

dd if=/dev/zero of=/dev/sdX bs=1M (replacing X with the name)

Source: http://how-to.wikia.com/wiki/How_to_wipe_a_hard_drive_clean_in_Linux

To find the device name of the SD card (eg /dev/sdb) you can use the lsblk command, or check it on gparted.

Hope I helped.

2
  • Thanks for the answer, but Creating Partition Table under GParted gives me the same result... It simply doesn't create any partition table...
    – Giancarlo
    Commented Mar 17, 2014 at 2:39
  • Try the dd method then, and see how it goes
    – p1xel
    Commented Mar 18, 2014 at 6:03
0

The "Can't have overlapping partitions" message makes me think you're running a rather old version of GParted. Such errors were common at one time because of bugs in the libparted library upon which GParted relies. Newer versions should not have that problem.

That said, I see no evidence that your problem is one of partition definitions; instead, I think you've got a damaged filesystem. The GParted utility handles both partitioning and filesystem creation, but you can do these tasks separately. Specifically:

mkdosfs /dev/sdb1

That command (typed as root or using sudo) will create a fresh FAT filesystem on /dev/sdb1.

1
  • Hi, Rod... I'm not sure about GParted version... Actually I'm using GParted that came in Parted Magic... But even with an updated GParted I have the same response... I tried mkdosfs, but got the error message "mkdosfs: failed whilst writing FAT"... I'm using UBUNTU Server 12.04 to run mkdosfs... Let's try the other option.... I'll get back to you soon.... Thanks!
    – Giancarlo
    Commented Mar 19, 2014 at 2:29
0

Try this:

1) Destroy the existing partition table:

dd if=/dev/random of=/dev/sdb bs=512 count=1024

2) Clear the in memory kernel partition tables.

Eject the card and reinsert it.  Or reboot.

3) Then try using gparted again, hopefully should work this time.

2
  • Hello, Matt. Following your tips... gianca@gentile-srv:~$ sudo dd if=/dev/random of=/dev/sdb1 bs=512 count=1024 [sudo] password for gianca: dd: warning: partial read (128 bytes); suggest iflag=fullblock ^C0+414 registros de entrada 0+414 registros de saída 3631 bytes (3,6 kB) copiados, 31158,1 s, 0,0 kB/s I had to finish the command with a CTRL+C after several hours...
    – Giancarlo
    Commented Mar 19, 2014 at 11:10
  • oops, I had a type. should be of=/dev/sdb
    – hookenz
    Commented Mar 23, 2014 at 20:09
0

Based on your responses to the other answers, it would seem that your SDHC card is not working correctly, is write protected, or it is not compatible with the controller that you are using.

I suggest using it in the phone and in another SD card reader to see if it is working or not.

SD card readers have a size limit of 2GB or 4GB. SDHC readers (from around 2006 and later) can go up to 32GB. Problems can occur if the controller is not compatible with the SD card.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .