dmraid is not yet present it portage, so i wrote a little ebuild for it. Reproducible: Couldn't Reproduce Steps to Reproduce: # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: dmraid-1.0.0_rc3.ebuild,v 1.0 2004/09/06 20:00:00 assl0r Exp $ inherit flag-o-matic IUSE="" DESCRIPTION="dmraid (Device-mapper RAID tool and library)" SRC_URI="http://people.redhat.com/~heinzm/sw/dmraid/src/dmraid-1.0.0-rc3.tar.bz2" HOMEPAGE="http://people.redhat.com/~heinzm/" LICENSE="GPL-1" DEPEND="~sys-libs/device-mapper-1.00.17-r1" RDEPEND=${DEPEND} SLOT=0 KEYWORDS="x86" pkg_setup() { if [ ! `echo ${KV} | grep 2\.[56]\.` ]; then eerror "You are using kernel version ${KV}" eerror "This makes only sense for the 2.6.* kernel-branch" eerror "so stopping the merge!" die fi } src_compile() { #inlining doesnt seem to work for dmraid ewarn "******************************************" ewarn "* dmraid does not support -fno-inlining *" ewarn "* so removing the flag! *" ewarn "******************************************" filter-flags -fno-inline cd ${WORKDIR}/dmraid/1.0.0-rc3 econf || die "can not configure" make -s || die "make failed" } src_install () { #make install doesnt work! (fucked up makefile or whatever cd ${WORKDIR}/dmraid/1.0.0-rc3 dosbin tools/dmraid dolib.a lib/*.a #dolib.so lib/*.so dodoc CHANGELOG README TODO KNOWN_BUGS doc/* doman man/*.8 } pkg_postinst() { ewarn "*******************************************************************" ewarn "This is Alpha software and it can destroy your data!" ewarn "So please take backups and start accessing your data in dmraid" ewarn "activated ATARAID sets READ-ONLY first before you try to write it!" ewarn "*******************************************************************" }
Created attachment 39087 [details] dmraid ebuild
Created attachment 39546 [details] dmraid 1.0.0_rc4 ebuild bumped the version and made a few small changes to the ebuild.
Created attachment 45094 [details] dmraid-1.0.0_rc5.ebuild New version now available rc5f I think this now works with the VIA VT8237 (tried with Raid 0 so far)
*** Bug 66431 has been marked as a duplicate of this bug. ***
Created attachment 52513 [details] dmraid-1.0.0_rc6.ebuild I was wrong about the rc5 version picking up the VIA chipset (it was instead picking up metadata written from a second pdc chipset on the same motherboard which was weird) but the rc6 version does now appear to properly support VIA
Hi folks, i were trying to write a runscript which activates the raid sets _before_ localmount gets started (i have entered my raid partitions in fstab). But i didn't get the clue.. depend() { before localmount } this doesnt seem to work.. dmraid comes up very late.. i was searching for this behavior in the rc-script depency generation methods.. the one who is searching for something will find something *thumbs up* there exists a CRITICAL_SERVICES variable in /sbin/rc which stores servicenames which are critical during the init process. now i know why it seems to be impossible to get dmraid started before the critical service "localmount" but the gentoo init developers are masterminds ;)) they have included an configuration interface /etc/runlevels/$BOOTLEVEL/.critical so i put the services which gets declared as critical by default if the .critical file doesnt exits and put my dmraid initscript before localmount the file looks now like this: root@area51 root # cat /etc/runlevels/boot/.critical checkroot dmraid hostname modules checkfs localmount see the atttachment for my init-script ive tested it.. booted into single user mode and dmraid cames up before localmount i want to thank the init-script "framework" =) developers for their config interface of critical services (its a little bit hidden, but easy to find if u know where to look for it)
Created attachment 52785 [details] dmraid rc-script This is a little dmraid run-script helping to get raid-partitions mounted with localmount (from /etc/fstab) at boot time Finally there is no need to hack the localmount script ;-) Please read my comment too.. there a needed informations about getting this to work! Enjoy!
Created attachment 52862 [details] installscript dmraid-rc for the lazy people.. plz give me feedback per mail or as comment for the folks!
Created attachment 53472 [details] Ebuild for dmraid / 1.0.0_rc6-r1.ebuild This patch can be used to build dmraid and libdmraid. Feel free to include/enhance.
Comment on attachment 53472 [details] Ebuild for dmraid / 1.0.0_rc6-r1.ebuild This is an ebuild to install (lib)dmraid. Feel free to include /enhance.
These init script will not be enough, we need to get something to support dmraid in udev as well... When I mount my root fs from dmraid it compaints about /dev/mapper/sil devices not being there... To get my whole config to boot I had to change /sbin/rc in populate_udev function i had to: mount -t devfs none /devfs ln -snf /devfs/mapper/sil* /dev/mapper
It's not a dmraid issue, it's due to udev not mapping out device-mapper nodes correctly I had a similar problem when using evms with udev as this uses device-mapper as well the fix is just to use an additional rule / script within udev see here: http://forums.gentoo.org/viewtopic-t-263996-highlight-.html
Created attachment 56148 [details] Dmraid 1.0.0-rc7 please include into portage Here is an ebuild to be used to install dmraid on gentoo. Please include dmraid into portage.
Richard, these udev mappings, would this be something we can include in the ebuild for dmraid, or would we nee to put these into the udev ebuild?
the udev rules are already present in /etc/udev/rules.d/40-multipath.rules (from sys-fs/multipath-tools)
installing multipath-tools still did not fix the problem for me. The /dev/mappper/sil devices still do not appear in udev. Do i need to compile device mapper as modules? I have them compiled into the kernel. Do I need any other packages?
Eugene have you looked for /dev/sil_* ?
In order for udev to map out device-mapper properly you first need a program that gives the name of the map based on the major / minor number devmap_name within multipath-tools was one way of doing this in combination with a custom script and rule within udev (i'd guess the script and rule is what your missing as the 40-multipath.rules doesn't have this) but recently I've spotted that a newer version of dmsetup (1.00.21) can also do the same thing, it's a masked version but at least a masked ebuild is better than an unoffical ebuild you'll still need to add in the /etc/udev/scripts/dmmapper.sh script and a rule into udev as well, the above link I posted before has details (scroll to the second post which is more recent)
Created attachment 56976 [details] dmraid-1.0.0_rc7.ebuild Does this ebuild work? What is needed to support udev with it?
Stefan Schweizer, sys-fs/multipath-tools gives me the udev devices, but dmraid creates them as well (when enabling the raid device)
(In reply to comment #17) > Eugene have you looked for /dev/sil_* ? Ah, they get there... this works, i don't need devfs now. what about on boot, initrd seems to put them in /dev/mapper/ very confusing... multipath tools don't exist on boot.
Created attachment 59666 [details] dmraid-1.0.0_rc8.ebuild Bumped previous dmraid ebuild. Included small buildfix. Now please include into portage! There is really no reason to wait any longer!
your ebuild doesn't work for me :-( in the install phase it always breaks like this: make[1]: Entering directory `/var/tmp/portage/dmraid-1.0.0_rc8/work/dmraid/1.0.0.rc8/lib' ../lib/libdmraid.a ../lib/libdmraid.so ../lib/libdmraid.so Installing ../lib/libdmraid.so in /var/tmp/portage/dmraid-1.0.0_rc8/image/usr/lib64 /bin/install: regul
your ebuild doesn't work for me :-( in the install phase it always breaks like this: make[1]: Entering directory `/var/tmp/portage/dmraid-1.0.0_rc8/work/dmraid/1.0.0.rc8/lib' ../lib/libdmraid.a ../lib/libdmraid.so ../lib/libdmraid.so Installing ../lib/libdmraid.so in /var/tmp/portage/dmraid-1.0.0_rc8/image/usr/lib64 /bin/install: reguläre Datei ,,/var/tmp/portage/dmraid-1.0.0_rc8/image/usr/lib64/../lib/libdmraid.so.1.0.0.rc8" kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden ln: Erzeugen der symbolischen Verknüpfung ,,/var/tmp/portage/dmraid-1.0.0_rc8/image/usr/lib64/../lib/libdmraid.so" zu ,,../lib/libdmraid.so.1.0.0.rc8": Datei oder Verzeichnis nicht gefunden make[1]: *** [install_dmraid_libs] Fehler 1 make[1]: Leaving directory `/var/tmp/portage/dmraid-1.0.0_rc8/work/dmraid/1.0.0.rc8/lib' make: *** [lib.install] Fehler 2 i'm running gentoo on amd64 it seems that it has a problem with the different lib directorys for 32 and 64 bits.
Created attachment 61495 [details] dmraid-1.0.0_rc8-r1.ebuild this version should work with amd64 I had to replace econf with configure this way the installation directory is specified at the install stage instead of the config stage, which seems to work
dmraid-1.0.0_rc8-r1.ebuild added to the tree with minor changes.
changing resolution to TEST-REQUEST
Works totally excellent on my promise PDC20378. Please confirm other bios raid HW.
If a rc-script is really needed, id rather have you guys do a dmraid addon (emerge device-mapper, and look at /lib/rcscripts/addons/dm-start.sh) .. might call it dmraid-start.sh and dmraid-stop.sh. Then you just have to add it to RC_VOLUME_ORDER in /etc/conf.d/rc ...