-   Slackware (
-   -   Filesystems missing from hard drives. (

rtr_87 05-15-2010 03:05 AM

Filesystems missing from hard drives.
This is driving me mad, so bear with me. I'm not sure this is a Slackware issue, in fact I'm sure it's not, but you all have helped me in the past so it seems like a good place to start. Also, I don't really know exactly how much of this information will be completely relevant to my problem, but I really can't pin it down.

My server is running 64 bit Slackware 13. It was running fine, mainly just serving files on the LAN, with some occasional SSH activity. I was slowly moving hard drives to it from my desktop system (all 1 or 2 terabyte drives). They were previously formatted with NTFS and were filled with files, so it took me a while to move data around, format a drive, and copy the data back. I decided to use ext4, for no particular reason other than it was the newest, so if I end up having to reformat these again, I'm open to using another filesystem. Right now, I've got two 2TB drives and three 1TB drives, but one of those is still NTFS, so it is of no concern at the moment.

At this point, I had just added the two 2TB drives to the system. These happened to be the new WD Advanced Format drives with 4k sectors. I found a way to manipulate fdisk so it would start the partition on the correct cylinder or whatever to take advantage of the new format. I also ended up using GPT instead of MBR because it had more usable space. So I had the following setup:

two 2TB drives, GPT, ext4, 4k sectors
two 1TB drives, GPT, ext4
one 1TB drive, MBR, NTFS (not important)

This setup was working fine for a few days until I had to take the server down to move some wires around. When I booted the server back up, I discovered the two 2TB drives were missing. They showed up in /dev but wouldn't mount. The boot script reported this for both drives:

mount: special device LABEL=/Caviar2G.0 does not exist
mount: special device LABEL=/Caviar2G.1 does not exist

I was using the disk label identifier to mount at boot, so I tried manually mounting using the actual device name and even created new directories to mount them in, but nothing worked. I always get the follong error:

# mount /dev/sdb1 /media/tmp
mount: No such file or directory

I tried booting to the latest Ubuntu live CD (10.04) and found a different problem. In Ubuntu (and Fedora 12), both 2TB drives show up and mount, but the two ext4 1TB drives don't. What's weird is, in Slackware, I would get something like this:

# ls /dev/sd*
sda sda1 sdb sdb1 sdc sdc1 sdd sdd1 sde sde1

But in Ubuntu I would get:

# ls /dev/sd*
sda sdb sdc sdc1 sdd sdd1 sde sde1

In other words, it didn't even recognise a partition on the missing drives. But it did show up in hdparm and fdisk. I thought it might be an issue with the newest kernel, but I don't think that is the issue either. So far I've tried the following:

Slackware 13,, both 2TB drives are missing
Ubuntu 10.04, 2.6.32, both 1TB drives are missing
Fedora 12, &, both 1TB drives are missing
Knoppix 6.2.1,, both 2TB drives are missing

One of my first thoughts after the initial reboot was that maybe the 500W power supply was not strong enough to spin up seven hard drives (5 storage + 2 OS drives) at the same time (I had added each of the storage drives while the system was up). But this wasn't supported by two things. First, the same two hard drives were missing on each OS every time. And second, every drive shows up during POST and in the BIOS. Just to be sure, I gutted the system, powering only one drive at a time and the same drives always failed to show up. I moved the SATA power connectors and data cables around as well. So I've pretty much ruled out hardware.

The thing is, I can access all my data from at least one OS, just not at the same time. So reformatting is not going to be a problem if it comes to that. I just don't understand what is going on. This was all working at one point, so expect there is a way to fix it, but I'm at a loss.

I think I included all the relevant information, but let me know if anything needs clarifying. Thanks for reading.

business_kid 05-15-2010 03:26 AM

Get a program called 'testdisk', and set it loose on them. That usually finds partitions.
If you have the whole drive set up as one partition, it's actually OK to have no partitions. They you would run

mount /dev/sdb /media/somewhere

Try that. It may be the answer

allend 05-15-2010 03:43 AM

i won't answer for the other operating systems, but default Slackware 13.0 with the kernel did not have support for GPT compiled in the kernel. GPT is enabled in later kernels on -current.

rtr_87 05-15-2010 04:39 AM

allend: That's interesting about the GPT support. All I did to create it was something like this (for the 2TB drives):

# parted /dev/sda
(parted) mklabel gpt
(parted) unit s
(parted) mkpart primary ext4 40 -1

And then I formatted it with mkfs.ext4. And it worked fine until I had to reboot. The thing is though, all four drives are using GPT, so it doesn't make sense that two work and two don't.

business_kid: What exactly should I be looking for when I run testdisk?

I ran blkid (supposed to print device id and such) and the 2TB drives didn't show up there either. Gonna try some more tomorrow, but thanks for the responses so far.

business_kid 05-16-2010 03:18 AM

@rtr_87: I read post #1, particularly
ls -l /dev/sd*

and advised mounting sdb
mount /dev/sdb /somewhere

or finding what had gone missing if you couldn't do that. If neither of those was your problem, forget my posts.

catkin 05-16-2010 05:19 AM

Probably a red-herring (data loss as opposed to partition loss) but maybe relevant to your interests this LQ thread discusses ext4 data loss when running kernels prior to 2.6.30, presumably including Slackware 13.0's kernel.

rtr_87 05-23-2010 05:55 PM

I was out of town last week, so sorry for not responding sooner. I won't be in contact with my server for the next few weeks, so I think I'm gonna let this rest for a bit. I'll try a new distro in a couple weeks (maybe the new Slackware 13.1 if it's out, or Arch) to see if anything changes, but barring any sudden revelation, I think I'll end up moving data around and reformatting again. Thanks to all who responded.

All times are GMT -5. The time now is 04:10 PM.