diff options
Diffstat (limited to 'sys-fs/lvm2/files/device-mapper.rc-2.02.95-r2')
-rw-r--r-- | sys-fs/lvm2/files/device-mapper.rc-2.02.95-r2 | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/sys-fs/lvm2/files/device-mapper.rc-2.02.95-r2 b/sys-fs/lvm2/files/device-mapper.rc-2.02.95-r2 deleted file mode 100644 index 9ac8cdb7..00000000 --- a/sys-fs/lvm2/files/device-mapper.rc-2.02.95-r2 +++ /dev/null @@ -1,111 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/device-mapper.rc-2.02.95-r2,v 1.2 2013/04/09 11:00:26 ssuominen Exp $ - -depend() { - # As of .67-r1, we call ALL lvm start/stop scripts with --sysinit, that - # means dmeventd is NOT notified, as it cannot be safely running - before dmeventd checkfs fsck - after modules -} - -dm_in_proc() { - local retval=0 - for x in devices misc ; do - grep -qs 'device-mapper' /proc/${x} - retval=$((${retval} + $?)) - done - return ${retval} -} - -# char **get_new_dm_volumes(void) -# -# Return dmsetup commands to setup volumes -get_new_dm_volumes() { - local volume params - - # Filter comments and blank lines - grep -v -e '^[[:space:]]*\(#\|$\)' /etc/dmtab | \ - while read volume params ; do - # If it exists, skip it - dmvolume_exists "${volume%:}" && continue - # Assemble the command to run to create volume - echo "echo ${params} | /sbin/dmsetup create ${volume%:}" - done - - return 0 -} - -# int dmvolume_exists(volume) -# -# Return true if volume exists in DM table -dmvolume_exists() { - local x line volume=$1 - - [ -z "${volume}" ] && return 1 - - /sbin/dmsetup ls 2>/dev/null | \ - while read line ; do - for x in ${line} ; do - # the following conditonal return only breaks out - # of the while loop, as it is running in a pipe. - [ "${x}" = "${volume}" ] && return 1 - # We only want to check the volume name - break - done - done - - # if 1 was returned from the above loop, then indicate that - # volume exists - [ $? = 1 ] && return 0 - - # otherwise the loop exited normally and the volume does not - # exist - return 1 -} - -# int is_empty_dm_volume(volume) -# -# Return true if the volume exists in DM table, but is empty/non-valid -is_empty_dm_volume() { - local table volume=$1 - - set -- $(/sbin/dmsetup table 2>/dev/null | grep -e "^${volume}:") - [ "${volume}" = "$1" -a -z "$2" ] -} - - -start() { - if [ -e /proc/modules ] && ! dm_in_proc ; then - modprobe dm-mod 2>/dev/null - fi - # Ensure the dirs exist for locking and running - checkpath -q -d -m 0700 -o root:root /run/lvm /run/lock/lvm - - local x volume - - if [ -x /sbin/dmsetup -a -c /dev/mapper/control -a -f /etc/dmtab ] ; then - [ -n "$(get_new_dm_volumes)" ] && \ - einfo " Setting up device-mapper volumes:" - - get_new_dm_volumes | \ - while read x ; do - [ -n "${x}" ] || continue - - volume="${x##* }" - - ebegin " Creating volume: ${volume}" - if ! eval "${x}" >/dev/null 2>/dev/null ; then - eend 1 " Error creating volume: ${volume}" - # dmsetup still adds an empty volume in some cases, - # so lets remove it - is_empty_dm_volume "${volume}" && \ - /sbin/dmsetup remove "${volume}" 2>/dev/null - else - eend 0 - fi - done - fi -} - |