LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware - Installation (http://www.linuxquestions.org/questions/slackware-installation-40/)
-   -   Slackware 13.37 installation/Dual Boot/Raid config. Installation issue (http://www.linuxquestions.org/questions/slackware-installation-40/slackware-13-37-installation-dual-boot-raid-config-installation-issue-947678/)

spacecowboy1858 05-30-2012 10:02 PM

Slackware 13.37 installation/Dual Boot/Raid config. Installation issue
 
Hello all,
First i will appologize because i am sure you are tired of reading newbies asking the same questions. I will first assure you that i spent weeks trying to figure this out before bothering you wise ones. I am operating windows 7 right now (don't judge) and am wanting to dual boot with Slackware. I am very much a newbie with slackware but not a techtard.

I am loading from dvd as my source and i am trying to set up my 2 linux partitions on my raid 0. When i cfdisk it says fatal error and something about ending at disk 2.

Originally I shrank the 2 partitions through windows to their desired sizes but didn't format hoping linux would find them and allow me to format during setup. Alas nothing can be seen. I have had slackware for about 2 months now.... i desperatly want to operate it Does anyone out there have the patience to assist me?

NyteOwl 05-31-2012 01:56 PM

The problem is probably that the RAID 0 array is configured using some form of "fakeraid" controller and Windows drivers. As such it probably isn't being seen by the Slackware installer as an available disk, which is why it can't see the partitions.

RAID 0 gives marginal speed improvements at best and effectively doubles the risk of losing everything through a drive failure. As such it is rarely worth the trade-off. Personally, I'd either split the RAID 0 array into two drives, one Win7 and one Slack, or pick up another HDD for the Slack install.

mostlyharmless 06-08-2012 05:37 PM

Agree with the above advice, however, it might be possible to use the drive array the way it is, unless you're determined to do it just to see if it can be done.

I'm pretty sure Win 7 uses its own version of GPT i.e. "Dynamic Disk", which is similar but not identical to Win XPs version. I used to have a dual boot fakeraid raid 0 Dynamic Disk WinXP and Slackware 12.2 combination, but I can tell you the steps to get it working and the chances of having to start from scratch (i.e. reformatting the whole thing) are high, so you'd be well advised to have a bare metal backup of everything before you get started.

There are some threads in this particular subforum that are helpful, and there are some steps you have to do within Windows. If you're still determined, I'll see if I can dig up my notes... but you're really better off not going there.

Erik_FL 06-10-2012 12:20 AM

It sounds like you are where I started with Linux. I recommend that you start by installing Linux in a virtual machine using something like VirtualBox on Windows. Learn about Linux before you try to install Linux with RAID.

Unfortunately the term RAID can refer to different hardware and/or software. You can basically classify RAID into three categories.
  • Software RAID done by the operating system
  • Hardware RAID done entirely in hardware
  • Fake hardware RAID done with mostly software and some hardware

It will help a lot if you determine which kind of RAID your computer is using. Most likely you have fake hardware RAID. Very few consumer PCs have hardware RAID, since it is expensive.

Your BIOS (computer setup) may have a setting for the disk controllers to select "RAID". If your BIOS is set for RAID then you probably have fake hardware RAID.

When your BIOS is set for "AHCI", "SATA", "IDE" or really anything except "RAID" then you probably have software RAID done by the Windows OS. You should be able to tell that by looking at the Disk Administration section in the Computer Management for Windows. Computer Management is in the Windows Control Panel. If the Disk Administration says that the disks are configured for RAID then you have software RAID done by Windows.

People also have different expectations of what they want to do with their RAID. Here are some of the things you may want.
  • Have Windows and Linux access the same files in RAID
  • Boot Windows and/or Linux from RAID
  • Use a mixture of disks on different disk controllers
  • Put the Windows OS and Linux OS on the same disk or RAID array
  • Avoid using special drivers or software for the RAID
  • Use a particular boot loader (LILO, GRUB, BOOTMGR, NTLDR)

Unfortunately you can't do all of those things with all of the kinds of RAID that I mentioned. Think about what you really want and need from your RAID.

Operating system RAID is usually the most compatible with all kinds of computer hardware. The problem is that the RAID data usually can only be seen by one operating system. Operating system RAID will often let you combine drives on different disk controllers and even have just a portion of a disk (a partition) used for RAID. You may not be able to boot from this kind of RAID.

Fake hardware RAID usually requires special drivers for Windows and Linux. If both operating systems have drivers then they can both access the same files in RAID. There is almost always a Windows driver available. Unfortunately there often isn't a Linux driver available. On Linux you can sometimes cheat using the standard Linux drivers plus the "dmraid" or "mdadm" program. You can also boot from fake hardware RAID since it includes BIOS software.

Real hardware RAID is something you probably don't have. It looks like a regular disk controller and disk drive in the hardware. There is usually a separate plug-in card for this. It may still require a driver, but the driver is similar to all other drivers for the operating system. Due to the cost of the hardware there are usually drivers for a few operating systems including versions of Linux. You basically get all the same benefits of the fake hardware RAID plus less hogging of your CPU to run the software.

Installing operating systems to boot from RAID can be difficult. Booting multiple operating systems from the same RAID controller may be more difficult. If possible, test out the operating system by booting it from a non-RAID disk or CD and make sure that it can access the RAID properly. You may have to type in some commands for "mdadm" or "dmraid" in order for Linux to access fake hardware RAID. You also may have to use an "initrd" image created by "mkinitrd" to boot from fake hardware RAID.

Here is some of the information you will want to post to get the best help with RAID questions.
  • What kind of RAID are you using (software, fake hardware, hardware)?
  • What is the disk controller chip-set or manufacturer/model?
  • How is the disk controller configured in the BIOS?
  • Are you booting Windows from RAID?
  • Are you going to boot Linux from RAID?
  • Do you want Windows and Linux to share files in the RAID?
  • How are the disks (or RAID arrays) partitioned?
  • Are you planning to use "mdadm" or "dmraid"?
  • What boot-loader will you use for Linux?
  • What size disks and RAID arrays do you have?
  • What versions of Windows and Linux do you have?
  • Are Windows and Linux 32-bit or 64-bit?

So that you don't get too frustrated, it isn't always difficult to boot from fake hardware RAID. I basically had to boot the Slackware Setup CD and use some "mdadm" commands to detect my RAID array. Then I installed Slackware. After that I had to type in a "mkinitrd" command to be able to boot from RAID. The key to all that was knowing exactly what RAID controller I have. I have an Intel controller built into the chip-set and it uses Matrix Storage Manager. The rest was mostly reading man pages to get the correct commands.

ReaperX7 06-12-2012 11:10 PM

There is two particular ways to tell if you have a true hardware RAID controller.

1. Do you have a separate boot process for the IDE/SCSI/SATA/SAS based RAID controller and a BIOS for it?

or...

2. Does your PC's BIOS have a built-in selection for RAID and not just AHCI/SATA/IDE as stated above with it's own tools and settings just for the RAID controller... specifically, can you create/destroy the array, can you check the disk array for errors, and can you perform a low-level format of the drive?

If you have these minimally, you should have a true hardware RAID controller. If you don't these you might have Software or Hybrid (fake) RAID (however Hybrid RAID may have a minimal tool to create/destroy the array only).

grail 06-25-2012 10:05 AM

So I will say right off the bat that I am not wanting to upset anyone by jumping on the request for information band wagon here, but as the OP has not replied for a while this
is information I would like to follow through on.

@Erik - From other posts of yours you seem to be the most knowledgeable about this issue (no offense to anyone else). I am currently using Mint and am terribly disappointed and have thought about
switching to Slackware before but never really had the time. I am facing this same issue and was wondering if you could advise on a solution. Mint is already installed on RAID 0 (fake)
on the machine I wish to use and the data would be a pain to move so I am trying to reuse the same partitions.

As per your questions:

What kind of RAID are you using (software, fake hardware, hardware)? fake
What is the disk controller chip-set or manufacturer/model? Marvell
How is the disk controller configured in the BIOS? RAID 0
Are you booting Windows from RAID? Yes
Are you going to boot Linux from RAID? Yes ( as is the current install )
Do you want Windows and Linux to share files in the RAID? No (happy to mount when needed)
How are the disks (or RAID arrays) partitioned? swap, /, home, var, opt, opt/public, c, d (last 2 for windows obviously)
Are you planning to use "mdadm" or "dmraid"? mdadm (it seems to be the only choice on 13.37 disk {booting from usb})
What boot-loader will you use for Linux? I prefer grub (although happy to start with lilo)
What size disks and RAID arrays do you have? 2 x 1 TB disks
What versions of Windows and Linux do you have? Win7, Mint (to be overwritten) and 13.37 to install
Are Windows and Linux 32-bit or 64-bit? 64 for all

Please advise if any information is not verbose enough?

Erik_FL 06-25-2012 01:07 PM

Quote:

Originally Posted by grail (Post 4711343)
@Erik - From other posts of yours you seem to be the most knowledgeable about this issue (no offense to anyone else). I am currently using Mint and am terribly disappointed and have thought about
switching to Slackware before but never really had the time. I am facing this same issue and was wondering if you could advise on a solution. Mint is already installed on RAID 0 (fake)
on the machine I wish to use and the data would be a pain to move so I am trying to reuse the same partitions.

I'm a little unclear about one thing in particular. Is your current Mint Linux able to see the RAID 0 array? If it is then you should be able to get Slackware to see it.

The "mdadm" program does not support Marvell metadata. With Marvell RAID, the only solution that I know of is to use "dmraid". There are some potential problems using "dmraid".
  • I have only gotten dmraid to work on 32-bit
  • Need to edit "SETUP" script to recognize devices for install
  • Might not work on newer 2.6 kernels
  • Have to edit the "init" script in the "initrd" to run "dmraid"
  • Partition alignment can confuse "dmraid"

The problem you face is not booting, but how to get Linux to see the RAID 0 array as a disk. If you can get Slackware to see the RAID 0 array then you can get it to boot

Boot considerations for Slackware and fake RAID.
  • Install GRUB in "native" mode (grub booted from floppy or CD)
  • Add "dmraid" command to "init" script of "initrd"
  • Must use "/dev/mapper/XXXX names in "/etc/fstab"

The process that I went through to get Slackware and Promise fake RAID working was rather painful. First, I had to build "dmraid" on another Slackware system. You can use a virtual machine program on Windows to do that. I found that it was easier to temporarily attach a non-RAID hard disk so that I didn't have to keep rebooting. After installing Slackware to the non-RAID disk normally, then I worked on "dmraid" and preparing a "grub" floppy.

I had to copy the "dmraid" and required library onto a disk that I could access from the booted setup CD. I used a floppy. You can use USB or a CD. I booted the normal Slackware setup CD. Then I copied the "dmraid" program and library into the RAM disk, and used "dmraid" to detect the arrays. I edited the "setup" script so that it would recognize the "/dev/mapper/XXXX" devices. You can also edit "setup" ahead of time and copy it onto the disk with "dmraid". I installed Slackware.

After installing Slackware I used "chroot" and built the "initrd" using "mkinitrd". Then I edited the "init" script in the "initrd" files and used "mkinitrd" with the modified script. I copied the "dmraid" program to the new Slackware installation on the hard disk.

I booted the "grub" floppy and installed "grub" from the grub command line.

There are some quirks with "dmraid". I've noticed that "dmraid" does not always recognize partitions if they are created by anything other than Linux. That seems to be a problem with logical drive partitions in the extended partition. Avoid using logical drives, or make sure that the partitions in the extended partition are created by Linux utilities. When I had the problem, Linux "fdisk" or "cfdisk" would show unused space between the logical drives, while Windows would not. I was able to delete and recreate the partitions in Linux to fix the problem.

I have not found an official 64-bit version of "dmraid" (from the author). There are 64-bit versions in some distros. So far I haven't figured out how to build those on 64-bit Slackware. If you plan to use 64-bit, the first hurdle is building "dmraid" for 64-bit. The problem is the associated libraries more than the actual program.

The best answer I can give you is that maybe you can get Marvell fake raid to work with 32-bit Slackware. Probably you won't be able to get it to work with 64-bit Slackware.

I have not investigated the possibility of manually configuring the device mapper (if that is even possible). One could possibly write a program or script to configure the stripe or mirror without accessing the metadata. Of course any changes to the RAID array would require modifying that program or script to match. You can think of "dmraid" and "mdadm" as software to configure the device mapper in Linux. They do a few other things, such as notify "udev" about device names.

I suggest if you want to discuss this further, start a new thread and perhaps copy the associated posts to the new thread. Also, search for some of my other RAID posts. I suggest reading the newest posts first, as fake RAID is much easier now in Slackware than before.

grail 06-26-2012 01:12 PM

Thanks for the reply Erik :) I may have to contemplate going back to single drives (just a pain to backup all the crap) if i wish to give Slack a go.

Quick answer to one question for you:
Quote:

Is your current Mint Linux able to see the RAID 0 array?
Mint, Ubuntu and Fedora all seemed to detect it without issue :) Not sure if that will help you at all in maybe formulating a solution for someone else, but there you go :)

Erik_FL 06-26-2012 02:54 PM

Quote:

Originally Posted by grail (Post 4712647)
Thanks for the reply Erik :) I may have to contemplate going back to single drives (just a pain to backup all the crap) if i wish to give Slack a go.

Quick answer to one question for you:

Mint, Ubuntu and Fedora all seemed to detect it without issue :) Not sure if that will help you at all in maybe formulating a solution for someone else, but there you go :)

That being the case, Mint probably has "dmraid" included as part of the distro. Slackware will work with "dmraid", though it has to be built from source. I haven't looked very hard for a 64-bit "dmraid", since my only 64-bit system has Intel RAID supported by "mdadm". You should be able to build the 64-bit "dmraid" on Slackware if you can get get the source for that from Mint or another distro. If you decide that you want to try using "dmraid" with Slackware I'll be glad to post the details of the "init" script and "setup" script changes. They are both a single line of text, so it isn't too bad. You may also want to look at your Mint system to see what device names it uses for the RAID, and if it runs "dmraid" in the "initrd".


All times are GMT -5. The time now is 02:20 AM.