How to test multiple drives?

coran007

Limp Gawd
Joined
Mar 5, 2011
Messages
242
I ordered 10 drives to go in a chasis for RAID 6 on an Adaptec 5085 using the SE3016 chasis (until I have time to play with zfs/refs) but want to make sure these drives are solid before transferring any data to them. Saw the link http://www.sysresccd.org/SystemRescueCd_Homepage for using badblocks from a usb stick. My question is this, does anyone have suggestions or a good how to for testing multiple drives at once? In this case all 10 drives at once for read/write reliability as well as benchmarking to ensure they are all withing 1% of each other since they'll be in a RAID set. I have a LSI SAS HBA I can use in order to see the drives individually first. Any help is appreciated.
 
You can run badblocks in multiple terminals if you are in an X environment (which I think SystemRescueCd boots to). Even without X most Linux OS variants spawn multiple ttys which you can access via ctrl+alt+f(num) (i.e. F1-F8)
where num is the tty number.

I don't benchmark my drives individually, so I can't help you on the second part.
 
The screen command will allow you to create multiple console sessions inside of the same tty. So you can do

Code:
sysrqcd # screen badblocks -wsv /dev/sda
sysrqcd # screen badblocks -wsv /dev/sdb
sysrqcd # screen badblocks -wsv /dev/sdc
sysrqcd # screen badblocks -wsv /dev/sdd
...

Then use screen commads to switch between shell sessions.

http://www.rackaid.com/blog/linux-screen-tutorial-and-how-to/

I would remove all drives you do not want to test and also figure out what drive is the USB stick (even though badblocks should not let you overwrite that since it will have a mounted filesystem)

Code:
fdisk -l /dev/sd?

can help with that
 
Do I need to adjust the amount of memory badblocks uses via command if trying to test 10 drives at once? The machine I'll be using to test with has 16GB.
 
Do I need to adjust the amount of memory badblocks uses via command if trying to test 10 drives at once? The machine I'll be using to test with has 16GB.

I never do. And I have tested 12 drives at the same time with machines with 8GB of ram. Also badblocks really does not require much ram per instance.
 
Thanks for the advice thus far. Will be testing with badblocks tonight or tomorrow. I had kicked off Hard Disk Sentinel to get the SMART data and get the drives going quickly unitl I dug out a flash drive and put SystemRescue on it. I had one drive report back it's at 33% health and another one that was in the 70-80% health range drop to 0% but then it also dropped off from the chasis altoghether so I'll have to check the port to make sure it wasn't the issue.

Any suggestion on what software is best for benchmarking, I know there are lots out there. Any personal preferences and why?
 
The screen command will allow you to create multiple console sessions inside of the same tty. So you can do

Code:
sysrqcd # screen badblocks -wsv /dev/sda
sysrqcd # screen badblocks -wsv /dev/sdb
sysrqcd # screen badblocks -wsv /dev/sdc
sysrqcd # screen badblocks -wsv /dev/sdd
...

Then use screen commads to switch between shell sessions.


Ack! Badwrongno. Screen was designed around multiple sessions inside one running instance of screen.

Just run screen once then create new "consoles" with Ctl+A, C. more shortcuts here
 
Thanks, that would have been helpful last night :) instead I ended up going into the gui and opening up the remaining terminals I needed. Another question though, it would seem that I'm being limited to about 400-500MB/s throughput where as in Windows I was able to puth closer to 1GB/s. Is this a driver issue with my card (5085) and SystemRescue?
 
Ack! Badwrongno. Screen was designed around multiple sessions inside one running instance of screen.

Just run screen once then create new "consoles" with Ctl+A, C. more shortcuts here

Doing it this way saves you from having to type Ctrl-A C. It accomplishes the same thing meaning it does not nest screen sessions in side of screen sessions.
 
Dumb question, can you run badblocks on a windows mounted drive from within a linux VM?
 
Dumb question, can you run badblocks on a windows mounted drive from within a linux VM?

My understanding is that you'd have to pass through a controller to do that. That being said if you passed through a controller then obviously the host system can't be mounting a drive on that controller so ultimately I guess the answer is no.

The easiest way to run badblocks on an arbitrary system is to boot SystemRescueCd or some other live distro.
 
Back
Top