I tried to attach a 1TB WD Passport external and got the message:

Warning: The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes.

I decided to run the following command:

sudo dd if=/dev/zero of=/dev/sdc bs=2048; sync

It's been running for 2 days straight and haven't completed

Did I use the wrong command to fix the block size? If so, how can I safely exit and start over?

I would like to use the external drive to transfer and store files from different systems

edit: Since I wasn't sure if interrupting would be bad, I let it finish but got error

dd: error writing '/dev/sdc': No space left on device

Note: several people marked this as exact duplicate and linked to article but that's not what I'm looking for. Not looking to create live usb.

  • 3
    dd bs= does not change the block size of the (physical or logical) drive. It just means that ddcopies data in blocks of (here 2048) Bytes. So, your command says: "Fill the whole disk /dev/sdc with zeroes, buffering 2048 Bytes each write" - this might run for days for 1 TB, as there are 536870912 writes.
    – ridgy
    May 14, 2017 at 10:40
  • Yikes I did it wrong. Thanks for your explanation. What's the best way to fix the issue? I would like to use the external to copy files for different systems.
    – Charles
    May 14, 2017 at 15:53
  • Marked as duplicate but why? I'm not creating live usb. Want to use it without error as external storage device. What else can I try?
    – Charles
    May 14, 2017 at 16:51
  • Hmm I've never liked the title of the other question. I voted to reopen, but you might want to edit your title to add what you are trying to do. This question may be a better target.
    – Zanna
    May 14, 2017 at 19:42
  • Voted to open ;)
    – Ravexina
    May 14, 2017 at 22:09

1 Answer 1


I had a similar issue with an 2GB USB Drive. This fixed my problem:

$ sudo dd if=/dev/zero of=/dev/sdc bs=2048 count=32 && sync                                                                                                                 

32+0 records in
32+0 records out
65536 bytes (66 kB, 64 KiB) copied, 0.0298155 s, 2.2 MB/s

The solution is from this issue: https://superuser.com/a/1153220/601084

  • Indeed. The issue is because you somehow got an iso9660 ( cdrom ) filesystem on the drive and that filesystem claims the disk uses 2k sectors ( because cdroms do ), but this is a hard disk so it uses 512 byte sectors. This will wipe out the iso9660 signature, returning the drive to an effective blank state. It is important to note that this will wipe out any data you had on the drive!
    – psusi
    Apr 4, 2018 at 14:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.