Hi ,
I am building a diskless system with 2.6.15.1 kernel. Eveyrthing is built
in the kernel ( no modules). It is booting with the help of pxelinux and
then proceeds to nfsmount its root filesystem etc.The system has a raid1
array on two scsi disks.
Recently I added an initramfs image to the boot procedure (append
initrd=initramfs.img) for some tests. Since then the raid array is not
autodetected (with identical kernel). If I remove the initramfs line and
reboot , the array is autodetected. When I am using initramfs I can
manually activate it using mdadm.
Is this by design or something is wrong ?
TIA,
--
============================================================================
Dimitris Zilaskos
Department of Physics @ Aristotle University of Thessaloniki , Greece
PGP key : http://tassadar.physics.auth.gr/~dzila/pgp_public_key.asc
http://egnatia.ee.auth.gr/~dzila/pgp_public_key.asc
MD5sum : de2bd8f73d545f0e4caf3096894ad83f pgp_public_key.asc
============================================================================
On Monday January 30, [email protected] wrote:
>
> Hi ,
>
> I am building a diskless system with 2.6.15.1 kernel. Eveyrthing is built
> in the kernel ( no modules). It is booting with the help of pxelinux and
> then proceeds to nfsmount its root filesystem etc.The system has a raid1
> array on two scsi disks.
> Recently I added an initramfs image to the boot procedure (append
> initrd=initramfs.img) for some tests. Since then the raid array is not
> autodetected (with identical kernel). If I remove the initramfs line and
> reboot , the array is autodetected. When I am using initramfs I can
> manually activate it using mdadm.
>
> Is this by design or something is wrong ?
To quote from init/main.c:
/*
* check if there is an early userspace init. If yes, let it do all
* the work
*/
So yes, it is by design. Assembling arrays with mdadm gives you a
lot more control than the kernel-autodetect so as you have an
initramfs, it is a good idea to make use of it.
If you *really* want to use the autodetect functionality, you can look
around for a program called 'raidautorun'. It does triggers the
autodetect function from userspace.
NeilBrown
> /*
> * check if there is an early userspace init. If yes, let it do all
> * the work
> */
>
> So yes, it is by design. Assembling arrays with mdadm gives you a
> lot more control than the kernel-autodetect so as you have an
> initramfs, it is a good idea to make use of it.
>
> If you *really* want to use the autodetect functionality, you can look
> around for a program called 'raidautorun'. It does triggers the
> autodetect function from userspace.
>
Thank you , raidautorun did the trick. I am trying to build an
initramfs as much generic as possible to be used with hundreds of systems,
so doing a custom image for every possible raid combination is really not
an options compared to autodetection.
Thnx again,
--
============================================================================
Dimitris Zilaskos
Department of Physics @ Aristotle University of Thessaloniki , Greece
PGP key : http://tassadar.physics.auth.gr/~dzila/pgp_public_key.asc
http://egnatia.ee.auth.gr/~dzila/pgp_public_key.asc
MD5sum : de2bd8f73d545f0e4caf3096894ad83f pgp_public_key.asc
============================================================================