2004-06-19 15:01:26

by Sebastian Slota

[permalink] [raw]
Subject: Raid issues on Sil 3114 (MB: Abit MAX3, i875 )


Hi,

My Problem:

I'm trying to get my RAID0 created with BIOS to run with Linux ( 2.6.6
kernel ). AS I'm having a partition for WinXP (for games only) and Liked to
hahe it on RAID0 for more performance...

Problems:

#1 - Linux sees the HD's but dont recognises the partitions
I learned that 2.4 kernel was having some 'medley' extension in ataraid that
allowed to see the partitions... its missing in 2.6 and should be replaced
with udev (?)

#2 - I deleted the array and created under winxp LVA's for drive 1 and 2,
created there a software raid0 for windows (?) - dont know how to explain it,
its M$ sh....
Linux sees that as a device but is unable to do anything with it! (NTFS
Partiton)

Am I wrong or is it impossible for linux to use this M$ LVAs? I've found a
howto for linux lva but I dont think windows will run with it!

#3 - And here I'm open for all suggestions:
I'd like to have:
- WinXP ( Games partition ) best as Raid0 - no need for security...
- Linux1 ( Root as Raid0, Home as Raid5, maybe or normal... dont know yet )
- Linux2 ( test system )
- Fat32 partiton for sharing stuff between Win and Linux ( as I'm having a
server I'm not bound to it! )
My HD's are 4 x 160GB SATA on Silicon Image 3114 onboard, 3GHz P4 HT, 1GB CL2
Ram.
I'm havind my important stuff on a RAID1 server, so the desktop pc is meant
for performance only! no need for raid1!

My destined Linux is Yoper, cause I'm currently on mandrake and its so slow
you can get a coffee while starting anything!

Thanks in advance,

Sebastian


2004-06-19 19:17:22

by Ricky Beam

[permalink] [raw]
Subject: Re: Raid issues on Sil 3114 (MB: Abit MAX3, i875 )

On Sat, 19 Jun 2004, Sebastian Slota wrote:
>#1 - Linux sees the HD's but dont recognises the partitions
...

More accurately, it see the partition table from the first chunk of the
array.

Yes, it's a "meddley" software RAID array. 2.6 does not have the ataraid
code in there anymore. One is supposed to use "dm" for this now, but
again, there are no supporting code/modules to handle this (yet.)

If you know EXACTLY how the raid is setup and it NEVER changes, then yes,
Linux can be "tricked" into building a software RAID array in a BIOS
compatible manner.

WARNING: Linux is completely unaware of the meddley superblocks at the
ends of each disk. If you ever overwrite them, the BIOS and
other OSes will not see an array. Either skip the last cylinder
when partitioning the drive or create all the partitions from
windows. (which is what I did.)

I do this:
md=d0,0,2,0,/dev/sda,/dev/sdb,/dev/sdc,/dev/sdd
See also: Documentation/md.txt (within the kernel source)
That tells the kernel to build a non-persistent, partitioned RAID0 array
with a 16k stripe (2^2 * 4k) from sda-sdd (in that order) which looks like
this...

[root:pts/6{1}]spork:/[02:59 PM]:fdisk -l /dev/md/d0
Disk /dev/md/d0: 640.1 GB, 640167510016 bytes
255 heads, 63 sectors/track, 77829 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/md/d0p1 * 1 72606 583207663+ 7 HPFS/NTFS
/dev/md/d0p2 72607 77306 37752750 83 Linux
/dev/md/d0p3 77307 77828 4192965 82 Linux swap
(NOTE: Cyl 77829 is unused.)

(The same is visible from /dev/sda although it's 1/4th the size.)

[root:pts/6{1}]spork:/[03:00 PM]:mdadm --detail /dev/md/d0
/dev/md/d0:
Version : 00.90.01
Creation Time : Fri Jun 18 16:41:33 2004
Raid Level : raid0
Array Size : 625163584 (596.20 GiB 640.17 GB)
Raid Devices : 4
Total Devices : 4
Preferred Minor : 0
Persistence : Superblock is not persistent

Update Time : Fri Jun 18 16:41:33 2004
State : clean, no-errors
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0

Chunk Size : 16K

Number Major Minor RaidDevice State
0 8 0 0 active sync /dev/sda
1 8 16 1 active sync /dev/sdb
2 8 32 2 active sync /dev/sdc
3 8 48 3 active sync /dev/sdd

[root:pts/6{1}]spork:/[03:08 PM]:df -h /dev/md/d0p1
Filesystem Size Used Avail Use% Mounted on
/dev/md/d0p1 557G 72G 486G 13% /mnt/ntfs

--Ricky


2004-06-20 08:39:30

by Sebastian Slota

[permalink] [raw]
Subject: Re: Raid issues on Sil 3114 (MB: Abit MAX3, i875 )

Hi!

> >#1 - Linux sees the HD's but dont recognises the partitions
> More accurately, it see the partition table from the first chunk of the
> array.
True, did so for me :-)

> If you know EXACTLY how the raid is setup and it NEVER changes, then yes,
> Linux can be "tricked" into building a software RAID array in a BIOS
> compatible manner.

Great! I've borrowed another PC with some 350GB to save my data and
reconfigure my drive

> I do this:
> md=d0,0,2,0,/dev/sda,/dev/sdb,/dev/sdc,/dev/sdd
> See also: Documentation/md.txt (within the kernel source)
> That tells the kernel to build a non-persistent, partitioned RAID0 array
> with a 16k stripe (2^2 * 4k) from sda-sdd (in that order) which looks like
> this...
>
> [root:pts/6{1}]spork:/[02:59 PM]:fdisk -l /dev/md/d0
> Disk /dev/md/d0: 640.1 GB, 640167510016 bytes
> 255 heads, 63 sectors/track, 77829 cylinders
> Units = cylinders of 16065 * 512 = 8225280 bytes
>
> Device Boot Start End Blocks Id System
> /dev/md/d0p1 * 1 72606 583207663+ 7 HPFS/NTFS
> /dev/md/d0p2 72607 77306 37752750 83 Linux
> /dev/md/d0p3 77307 77828 4192965 82 Linux swap
> (NOTE: Cyl 77829 is unused.)

Thats exactily what I would like to do! Great!

But is linux able to boot from this array?
Do I need some special Software package installed for use md ?

I'm trying to install Yoper and the install CD is lacking most software.
I'm in contact with the developer there and allowed to modify the install
packages.


> (The same is visible from /dev/sda although it's 1/4th the size.)
>
> [root:pts/6{1}]spork:/[03:00 PM]:mdadm --detail /dev/md/d0
> /dev/md/d0:
> Version : 00.90.01
> Creation Time : Fri Jun 18 16:41:33 2004
> Raid Level : raid0
> Array Size : 625163584 (596.20 GiB 640.17 GB)
> Raid Devices : 4
> Total Devices : 4
> Preferred Minor : 0
> Persistence : Superblock is not persistent
>
> Update Time : Fri Jun 18 16:41:33 2004
> State : clean, no-errors
> Active Devices : 4
> Working Devices : 4
> Failed Devices : 0
> Spare Devices : 0
>
> Chunk Size : 16K
>
> Number Major Minor RaidDevice State
> 0 8 0 0 active sync /dev/sda
> 1 8 16 1 active sync /dev/sdb
> 2 8 32 2 active sync /dev/sdc
> 3 8 48 3 active sync /dev/sdd
>
> [root:pts/6{1}]spork:/[03:08 PM]:df -h /dev/md/d0p1
> Filesystem Size Used Avail Use% Mounted on
> /dev/md/d0p1 557G 72G 486G 13% /mnt/ntfs
>
> --Ricky
Would you write me a small howto?
My Hardware: 4x160GB, (1hh ata for installing, temporalily )
My partition would be:
- WinXP ( 10GB)
- Linux1 ( 20GB )
- Linux2 (10GB)
- Swap (2GB)
- FAT32 ( 100GB)
- /home (the rest)

Txs!

Sebastian