1

The drive that my /home folder lives on is showing signs of failing, and I'm trying to migrate to a new drive.  I purchased a 4TB SSD, formatted it with ext4, mounted it as an external drive with a USB/SATA connector, and rsync’ed my /home folder over.

So far, so good. But when I swapped it in place of the failing drive and rebooted, my OS reported:

unable to mount local folders
structure needs cleaning

That sounds like a corrupt file system, but fsck reported no errors. Maybe the new hardware is faulty, but I ran badblocks on it, and it also came back with no errors. I formatted it again and tried again, and came up with the same error. Weirdly, if I log in as root and manually mount the new /home drive, it mounts okay, and seems to accept read/writes. However, dmesg did show some errors for /dev/sdb (that's the /home drive on this system). I've copied them below, although I'm fluent enough myself to parse them.

Any ideas? For context I'm running Gentoo Linux.

[    0.914006] sd 6:0:0:0: [sdb] 7814037168 512-byte logical blocks: (4.00 TB/3.64 TiB)
[    0.914052] sd 6:0:0:0: [sdb] Write Protect is off
[    0.914074] sd 6:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[    0.914117] sd 6:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    0.914224] sd 6:0:0:0: [sdb] Preferred minimum I/O size 512 bytes
[    0.915929]  sdb: sdb1
[    0.916093] sd 6:0:0:0: [sdb] Attached SCSI disk
[    5.012731] sd 6:0:0:0: [sdb] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=0s
[    5.012740] sd 6:0:0:0: [sdb] tag#0 Sense Key : Illegal Request [current] 
[    5.012747] sd 6:0:0:0: [sdb] tag#0 Add. Sense: Unaligned write command
[    5.012753] sd 6:0:0:0: [sdb] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 08 10 00 00 00 08 00 00
[    5.012757] I/O error, dev sdb, sector 2064 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 2
[    5.012786] sd 6:0:0:0: [sdb] tag#1 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=0s
[    5.012792] sd 6:0:0:0: [sdb] tag#1 Sense Key : Illegal Request [current] 
[    5.012797] sd 6:0:0:0: [sdb] tag#1 Add. Sense: Unaligned write command
[    5.012802] sd 6:0:0:0: [sdb] tag#1 CDB: Read(16) 88 00 00 00 00 00 00 00 08 18 00 00 00 08 00 00
[    5.012805] I/O error, dev sdb, sector 2072 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 2
[    5.012817] sd 6:0:0:0: [sdb] tag#31 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=0s
[    5.012822] sd 6:0:0:0: [sdb] tag#31 Sense Key : Illegal Request [current] 
[    5.012827] sd 6:0:0:0: [sdb] tag#31 Add. Sense: Unaligned write command
[    5.012832] sd 6:0:0:0: [sdb] tag#31 CDB: Read(16) 88 00 00 00 00 00 00 00 08 08 00 00 00 08 00 00
[    5.012836] I/O error, dev sdb, sector 2056 op 0x0:(READ) flags 0x80700 phys_seg 1 prio class 2
[   35.852468] sd 6:0:0:0: [sdb] tag#13 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=30s
[   35.852476] sd 6:0:0:0: [sdb] tag#13 Sense Key : Illegal Request [current] 
[   35.852483] sd 6:0:0:0: [sdb] tag#13 Add. Sense: Unaligned write command
[   35.852490] sd 6:0:0:0: [sdb] tag#13 CDB: Read(16) 88 00 00 00 00 00 00 00 08 28 00 00 05 40 00 00
[   35.852494] I/O error, dev sdb, sector 2088 op 0x0:(READ) flags 0x84700 phys_seg 168 prio class 2
[   35.852574] sd 6:0:0:0: [sdb] tag#14 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=30s
[   35.852581] sd 6:0:0:0: [sdb] tag#14 Sense Key : Illegal Request [current] 
[   35.852586] sd 6:0:0:0: [sdb] tag#14 Add. Sense: Unaligned write command
[   35.852591] sd 6:0:0:0: [sdb] tag#14 CDB: Read(16) 88 00 00 00 00 00 00 00 0d 68 00 00 05 40 00 00
[   35.852595] I/O error, dev sdb, sector 3432 op 0x0:(READ) flags 0x84700 phys_seg 168 prio class 2
[   35.852672] sd 6:0:0:0: [sdb] tag#15 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK cmd_age=30s
[   35.852677] sd 6:0:0:0: [sdb] tag#15 Sense Key : Illegal Request [current] 
[   35.852682] sd 6:0:0:0: [sdb] tag#15 Add. Sense: Unaligned write command
[   35.852687] sd 6:0:0:0: [sdb] tag#15 CDB: Read(16) 88 00 00 00 00 00 00 00 12 a8 00 00 03 f0 00 00
[   35.852690] I/O error, dev sdb, sector 4776 op 0x0:(READ) flags 0x80700 phys_seg 126 prio class 2
[   36.858014] EXT4-fs (sdb1): ext4_check_descriptors: Checksum for group 18880 failed (53845!=52774)
[   36.858017] EXT4-fs (sdb1): group descriptors corrupted!

One further experiment: I tried installing another drive into the bay, and it also wouldn't auto mount as /home.  I could not even mount it manually after logging in as root.  As far as I can tell, there's nothing wrong with this third drive, and I can mount it just fine via a USB/SATA adapter.  Both of the new drives are SSDs, while the old failing drive that still mounts is a hard disk.

This SATA port is via a SATA/PCIE adapter, so I suppose the problem could be in the adapter.  In that case, though, it's weird that the old hard drive still works.

2
  • One further experiment: I tried installing another drive into the bay, and it also wouldn't auto mount as /home. I could not even mount it manually after logging in as root. As far as I can tell, there's nothing wrong with this third drive, and I can mount it just fine via a USB/SATA adapter. Both of the new drives are ssds, while the old failing drive that still mounts is a hard disk.
    – jyoung
    Commented Sep 26, 2023 at 6:35
  • This SATA port is via a SATA/PCIE adapter, so I suppose the problem could be in the adapter. In htat case, though, it's weird that the old hard drive still works.
    – jyoung
    Commented Sep 26, 2023 at 22:10

1 Answer 1

0

The I/O error, dev sdb, sector 2072 op 0x0:(READ) messages clearly point to some kind of problem with the disk itself, and not really the fault of the filesystem (which is just warning you that the data read was corrupt).

2
  • Interesting, so not a file system problem. Hmm, are there any diagnostics I could run on the disk other than badblocks?
    – jyoung
    Commented Sep 27, 2023 at 6:00
  • Maybe smartctl (from smartmontools could be used to dump the error counters of the drive?
    – LustreOne
    Commented Oct 27, 2023 at 0:24

You must log in to answer this question.

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