The primary OS for this disk was Unraid. Its formated in BTRFS. I don’t think either of those matter. The disk spins and worked before the reboot. But now. No matter what machine, port or cable I use its not mountable. Is there anything I can try? I was going to attempt Spinrite on it however it doesn’t see anything either. Thanks! Its a HGST drive dated May2019
If you have a Linux machine, look in
/sys/class/block
and see if it shows up there. That’ll give you a list of devices at the block device level. There should be an entry there, regardless of what you’ve done with partitioning or filesystems on those partitions.If it doesn’t show up there, the drive is probably having trouble at a hardware level. There are various tactics that people have tried to get a rotational drive functioning, like different temperatures, having the drive in different orientations, etc. Those might work, but if the drive is having physical problems, it might also continue to degrade.
If that’s the case, your best bet, if the information is sufficiently worthwhile to you, is probably to send the drive to a data recovery company. What they’ll do is use a drive with the same hardware, and in a clean room, swap the platters, and as long as it’s still functional, they can image the drive at that point. IIRC you’re talking something in the neighborhood of $500, though I’ve never needed to do this myself (backups!).
If it does show up, then you can look at whether you’re getting kernel log errors when attempting to read from the drive (
journalctl -k -b
). If so, it might be recoverable, at least in part.If there aren’t any errors, then whatever your issue is might only be in terms of the data on the drive. My first step – knowing nothing about how Unraid sets things up – would probably be to look at the partition table on the drive (
sudo parted <drive-device-name>
). You can manually mount a partition with (mount <partition-name> <mount-point>
).EDIT: Oh, one last note. You might try swapping the cable before throwing in the towel, if you haven’t already. While I doubt that this is it, and I don’t think I’ve ever had a problem with a hard drive, a few times in my life, I’ve run into puzzling problems where a device isn’t visible that came down to a faulty data cable. Can’t hurt to try, at any rate.
lsblk
also show block devices and is prettier than looking directly at/sys/class/block
What exactly do you mean by “not mountable”?
I attempted to mount the disk and it says “unable to mount”.
I think there might need to be more than one cylinder. (Referring to photo) Hmm…
This is the error from my laptop when I try and mount. It asked for the encryption password just before this. And makes all the normal annoying hard drive sounds.
Here are some more screenshot of the disk. Maybe its a BTRFS failure?
Okay, it looks like you posted this prior to me posting my comment above. I’m not familiar with this graphical utility, but I’m assuming that it means that your disk is visible (like, if you run
ls /dev/sda
, you see your disk).So what you’ve probably got is a functioning hard drive, with a functioning partition table, and on the first partition (/dev/sda1), a LUKS layer.
I haven’t used LUKS, but it’s a block-level encryption layer for Linux. It’ll have some command to expose an unencrypted layer, and you can mount that.
Let’s try walking through this in a terminal.
From https://superuser.com/questions/1702871/how-to-do-cryptsetup-luksopen-and-mount-in-a-single-command, it looks like the way this works is that one runs:
$ sudo cryptsetup luksOpen <encrypted-device-name> <unencrypted-block-device-name>
Your encrypted partition name is presently at /dev/sda1. So try running:
$ sudo cryptsetup luksOpen /dev/sda1 my-unencrypted
That should prompt you for a password. If it can decrypt it, it looks like it creates a block device at /dev/mapper/my-unencrypted.
You can then create a directory to use as a mountpoint:
$ sudo mkdir -p /mnt/my-mount-point
And try mounting it (assuming that it’s just a filesystem):
$ sudo mount /dev/mapper/my-unencrypted /mnt/my-mount-point
Same Error. Weird.
considers
I think that mount the mount(1) command is probably calling the mount(2) system call, and it’s returning ENOENT, error 2. The mount(2) man page says “ENOENT A pathname was empty or had a nonexistent component.”.
Hmm. So, I expect from the cyan color there that that “luks-d8…” thing is a symlink that points at some device file that LUKS creates when that
luksOpen
command runs.Maybe
ls -l /dev/mapper/luks-d8...
and see what it points at and whether that exists as a first step? It’s probably gonna be some device file somewhere in /dev.
So does the actual block device show up as recognized?