A while back I had a external HDD ‘die’ on me. I could no longer mount the drive or create a new ext4 filesystem. Fsck complained about bad superblocks and e2fsck couldn’t specify a backup superblock so I gave up. Don’t remember the exact error.
Today I thought let me try again. Trying to create an ext4 filesystem gave me the same error:
▶ sudo mkfs.ext4 /dev/sdb
mke2fs 1.47.2 (1-Jan-2025)
Creating filesystem with 122096646 4k blocks and 30531584 inodes
Filesystem UUID: e7071a34-f2a9-41d8-bad6-5d92a684ce99
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000
Allocating group tables: done
Writing inode tables: done
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: mkfs.ext4: Input/output error while writing out and closing file system
So I thought let me try some different filesystem:
▶ sudo mkfs.exfat /dev/sdb
exfatprogs version : 1.2.9
Creating exFAT filesystem(/dev/sdb, cluster size=131072)
Writing volume boot record: done
Writing backup volume boot record: done
Fat table creation: done
Allocation bitmap creation: done
Upcase table creation: done
Writing root directory entry: done
Synchronizing...
exFAT format fail!
No luck!
▶ sudo mkfs.msdos /dev/sdb
mkfs.fat 4.2 (2021-01-31)
mkfs.msdos: unable to synchronize /dev/sdb:Input/output error
But using vfat or btrfs works just fine:
▶ sudo mkfs.vfat /dev/sdb
mkfs.fat 4.2 (2021-01-31)
▶ sudo mkfs.btrfs -f /dev/sdb
btrfs-progs v6.15
See https://btrfs.readthedocs.io for more information.
Performing full device TRIM /dev/sdb (465.76GiB) ...
NOTE: several default settings have changed in version 5.15, please make sure
this does not affect your deployments:
- DUP for metadata (-m dup)
- enabled no-holes (-O no-holes)
- enabled free-space-tree (-R free-space-tree)
Label: (null)
UUID: 2c743bc3-4e4f-49de-8885-d45d5830f755
Node size: 16384
Sector size: 4096 (CPU page size: 4096)
Filesystem size: 465.76GiB
Block group profiles:
Data: single 8.00MiB
Metadata: DUP 1.00GiB
System: DUP 8.00MiB
SSD detected: no
Zoned device: no
Features: extref, skinny-metadata, no-holes, free-space-tree
Checksum: crc32c
Number of devices: 1
Devices:
ID SIZE PATH
1 465.76GiB /dev/sdb
My questions is why? They all use superblocks right?