> On Sat, Jul 12, 2008 at 04:52, Marco d'Itri <md@xxxxxxxx> wrote: > > I added this to the Debian udev init script, run between mounting /dev > > and starting udevtrigger. > > > > mountpoint at least on Debian systems is part of sysvinit and happens to > > be in /bin, but if /usr is available then you can as well use stat(1). > > > > create_devroot_rule() { > > local udevroot="$1" > > local rootnumbers=$(mountpoint -q -d / || true) > > local rootmajor=${rootnumbers%:*} > > local rootminor=${rootnumbers#*:} > > [ "$rootmajor" -a "$rootminor" ] || return 0 > > > > echo 'ACTION=="add", SUBSYSTEM=="block", ENV{MAJOR}=="'$rootmajor'", ENV{MINOR}=="'$rootminor'", SYMLINK+="root"' > /dev/.udev/rules.d/rules.d/61-dev-root-link.rules > > } Based in original Marco´s code, we are using this one: # Create rootdev rules DEVICENUMBER=$( /bin/stat -c %d / ) MAJORNUMBER=$(($DEVICENUMBER / 256)) MINORNUMBER=$(($DEVICENUMBER % 256)) echo 'ACTION=="add", SUBSYSTEM=="block", ENV{MAJOR}=="'$MAJORNUMBER'", ENV{MINOR}=="'$MINORNUMBER'", SYMLINK+="root"' > /dev/.udev/rules.d/61-dev-root-link.rules But our uses stat instead mountpoint (mountpoint is in /usr/bin and stat is in /bin) > Looks fine, didn't know about "mountpoint, and not sure if all distros > have it. We use: > udevadm info --device-id-of-file=/ > since a while. I've added --export to it now, so: > eval $(/sbin/udevadm info --export --export-prefix=ROOT_ > --device-id-of-file=/) > should make $ROOT_MAJOR, $ROOT_MINOR available without any further > shell mangling. Hmmm... seems to be a good idea to use udev internal tools to do that. Piter Punk -- To unsubscribe from this list: send the line "unsubscribe linux-hotplug" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html