xref: /dflybsd-src/contrib/lvm2/dist/scripts/lvm2create_initrd/lvm2udev (revision 86d7f5d305c6adaa56ff4582ece9859d73106103)
186d7f5d3SJohn Marino#!/bin/sh
286d7f5d3SJohn Marino
386d7f5d3SJohn Marino# $Id: lvm2udev,v 1.1.1.1 2008/12/22 00:18:58 haad Exp $
486d7f5d3SJohn Marino
586d7f5d3SJohn Marino# simple startup script to create lvm2 devices if /dev is a mountpoint, there
686d7f5d3SJohn Marino# are active dm- devices, and an executable /sbin/vgscan.
786d7f5d3SJohn Marino
886d7f5d3SJohn Marino# this script is licensed under GPLv2.
986d7f5d3SJohn Marino# See http://www.gnu.org/licenses/gpl.html
1086d7f5d3SJohn Marino
1186d7f5d3SJohn Marinocase $1 in
1286d7f5d3SJohn Marinostart)
1386d7f5d3SJohn Marino    # is /dev a mountpoint?
1486d7f5d3SJohn Marino    mountpoint -q /dev
1586d7f5d3SJohn Marino    DEVMNTPOINT=$?
1686d7f5d3SJohn Marino
1786d7f5d3SJohn Marino    # check to see if there are active dm entries under /sys
1886d7f5d3SJohn Marino    ls /sys/block/dm-*/dev 1>/dev/null 2>&1
1986d7f5d3SJohn Marino    ACTIVEDMDEVS=$?
2086d7f5d3SJohn Marino
2186d7f5d3SJohn Marino    # mknodes if conditions are right
2286d7f5d3SJohn Marino    if [ $DEVMNTPOINT -eq 0 -a $ACTIVEDMDEVS -eq 0 -a -x /sbin/vgscan ]; then
2386d7f5d3SJohn Marino        /sbin/vgscan --mknodes --ignorelockingfailure
2486d7f5d3SJohn Marino    fi
2586d7f5d3SJohn Marino    ;;
2686d7f5d3SJohn Marinostop)
2786d7f5d3SJohn Marino    exit 0
2886d7f5d3SJohn Marino    ;;
2986d7f5d3SJohn Marino*)
3086d7f5d3SJohn Marino    echo "usage:"
3186d7f5d3SJohn Marino    echo "    $0 start|stop"
3286d7f5d3SJohn Marino    ;;
3386d7f5d3SJohn Marinoesac
34