sys-fs/lvm2: Add version 2.02.177 with musl support and Red Hat patches
Red Hat patches from lvm2-2.02.177-5.fc28: https://koji.fedoraproject.org/koji/buildinfo?buildID=1096618
This commit is contained in:
9
sys-fs/lvm2/files/clvmd.confd-2.02.39
Normal file
9
sys-fs/lvm2/files/clvmd.confd-2.02.39
Normal file
@@ -0,0 +1,9 @@
|
||||
# CLVMD_CLUSTER_TIMEOUT -- amount of time to wait for cluster quorum.
|
||||
|
||||
CLVMD_CLUSTER_TIMEOUT=30
|
||||
|
||||
|
||||
# CLVMD_NODES_TIMEOUT -- amount of time to wait for the other nodes to
|
||||
# join the cluster.
|
||||
|
||||
CLVMD_NODES_TIMEOUT=60
|
||||
145
sys-fs/lvm2/files/clvmd.rc-2.02.39
Normal file
145
sys-fs/lvm2/files/clvmd.rc-2.02.39
Normal file
@@ -0,0 +1,145 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
[ -x /usr/sbin/clvmd ] && CLVMD_BIN="/usr/sbin/clvmd" || CLVMD_BIN="/sbin/clvmd"
|
||||
|
||||
[ -z "$CLVMD_CLUSTER_TIMEOUT" ] && CLVMD_CLUSTER_TIMEOUT=30
|
||||
[ -n "$CLVMD_NODES_TIMEOUT" ] || CLVMD_NODES_TIMEOUT=60
|
||||
|
||||
VGCHANGE="/sbin/vgchange"
|
||||
VGSCAN="/sbin/vgscan"
|
||||
VGDISPLAY="/sbin/vgdisplay"
|
||||
CLVMD_PIDFILE="/var/run/clvmd.pid"
|
||||
|
||||
depend() {
|
||||
use net dns logger dmeventd
|
||||
want cman corosync openais
|
||||
}
|
||||
|
||||
load_modules() {
|
||||
local module modules
|
||||
modules=$1
|
||||
|
||||
for module in ${modules}; do
|
||||
ebegin "Loading ${module} kernel module"
|
||||
modprobe ${module}
|
||||
eend $? "Failed to load ${module} kernel module"
|
||||
done
|
||||
}
|
||||
|
||||
unload_modules() {
|
||||
local module modules
|
||||
modules=$1
|
||||
|
||||
for module in ${modules}; do
|
||||
ebegin "Unloading ${module} kernel module"
|
||||
modprobe -r ${module}
|
||||
eend $? "Failed to unload ${module} kernel module"
|
||||
done
|
||||
}
|
||||
|
||||
umount_gfs_filesystems() {
|
||||
local sig retry
|
||||
local remaining="$(awk '$3 == "gfs" { print $2 }' /proc/mounts | sort -r)"
|
||||
|
||||
if [ -n "${remaining}" ]
|
||||
then
|
||||
sig=
|
||||
retry=3
|
||||
while [ -n "${remaining}" -a "${retry}" -gt 0 ]
|
||||
do
|
||||
if [ "${retry}" -lt 3 ]
|
||||
then
|
||||
ebegin "Unmounting GFS filesystems (retry)"
|
||||
umount ${remaining} &>/dev/null
|
||||
eend $? "Failed to unmount GFS filesystems this retry"
|
||||
else
|
||||
ebegin "Unmounting GFS filesystems"
|
||||
umount ${remaining} &>/dev/null
|
||||
eend $? "Failed to unmount GFS filesystems"
|
||||
fi
|
||||
remaining="$(awk '$3 == "gfs" { print $2 }' /proc/mounts | sort -r)"
|
||||
[ -z "${remaining}" ] && break
|
||||
/bin/fuser -k -m ${sig} ${remaining} &>/dev/null
|
||||
sleep 5
|
||||
retry=$((${retry} -1))
|
||||
sig=-9
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
start_volumes() {
|
||||
ebegin "Scanning LVM volumes"
|
||||
$VGSCAN > /dev/null 2>&1
|
||||
eend $?
|
||||
|
||||
ret=$?
|
||||
if [ "$ret" -eq 5 ]
|
||||
then
|
||||
einfo " Waiting for other nodes to join the cluster ($CLVMD_NODES_TIMEOUT seconds)"
|
||||
fi
|
||||
|
||||
clustervgs=`$VGDISPLAY 2> /dev/null | awk 'BEGIN {RS="VG Name"} {if (/Clustered/) print $1;}'`
|
||||
for vg in $clustervgs; do
|
||||
ebegin " Activating Clustered VG: ${vg} "
|
||||
|
||||
wait=0
|
||||
while [ -n "$($VGCHANGE -a y ${vg} 2>&1 |grep "clvmd not running")" ]; do
|
||||
if [ $wait -lt $CLVMD_NODES_TIMEOUT ]; then
|
||||
sleep 3
|
||||
wait=$(($wait + 3))
|
||||
else
|
||||
eend 1
|
||||
fi
|
||||
done
|
||||
eend 0
|
||||
done
|
||||
}
|
||||
|
||||
stop_volumes() {
|
||||
# Deactivate only clustered volumes
|
||||
clustervgs=`$VGDISPLAY 2> /dev/null | awk 'BEGIN {RS="VG Name"} {if (/Clustered/) print $1;}'`
|
||||
for vg in $clustervgs; do
|
||||
ebegin " Shutting Down Clustered VG: ${vg} "
|
||||
$VGCHANGE -anl ${vg} >/dev/null
|
||||
eend $?
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
start() {
|
||||
local module=$(awk '$1 == "dm_mod" { print $1 }' /proc/{modules,devices})
|
||||
|
||||
if [ -z "${module}" ]; then
|
||||
load_modules "dm-mod"
|
||||
sleep 1s
|
||||
fi
|
||||
|
||||
ebegin "Starting clvmd ($CLVMD_CLUSTER_TIMEOUT seconds)"
|
||||
|
||||
start-stop-daemon --start --quiet --exec ${CLVMD_BIN} -- -T ${CLVMD_CLUSTER_TIMEOUT}
|
||||
eend $?
|
||||
|
||||
start_volumes
|
||||
}
|
||||
|
||||
stop() {
|
||||
|
||||
# umount GFS filesystems
|
||||
umount_gfs_filesystems
|
||||
|
||||
#stop_volumes
|
||||
|
||||
ebegin "Stopping clvmd"
|
||||
#start-stop-daemon --stop -s TERM --quiet --exec ${CLVMD_BIN} --name clvmd
|
||||
killall -TERM ${CLVMD_BIN} >/dev/null
|
||||
eend $?
|
||||
|
||||
#local module=$(awk '$1 == "dm_mod" { print $1 }' /proc/modules)
|
||||
|
||||
#if [[ "$?" -eq 0 && ! -z "${module}" ]]; then
|
||||
# unload_modules "dm-mod"
|
||||
#fi
|
||||
}
|
||||
1
sys-fs/lvm2/files/device-mapper.conf-1.02.22-r3
Normal file
1
sys-fs/lvm2/files/device-mapper.conf-1.02.22-r3
Normal file
@@ -0,0 +1 @@
|
||||
RC_AFTER="lvm"
|
||||
146
sys-fs/lvm2/files/device-mapper.rc-2.02.105-r2
Normal file
146
sys-fs/lvm2/files/device-mapper.rc-2.02.105-r2
Normal file
@@ -0,0 +1,146 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
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 **build_dmsetup_command(volume)
|
||||
#
|
||||
# Returns complete dmsetup command given single volume name
|
||||
build_dmsetup_command() {
|
||||
local count dmsetup_cmd
|
||||
|
||||
# Number of lines mentioning volume name
|
||||
count=$(grep -v -e '^[[:space:]]*\(#\|$\)' /etc/dmtab | grep -c ${1})
|
||||
|
||||
# If there's just one line:
|
||||
if [ ${count} -eq 1 ] ; then
|
||||
echo "echo $(grep -v -e '^[[:space:]]*\(#\|$\)' /etc/dmtab | \
|
||||
grep ${1} | awk '{$1=""; print $0}') | /sbin/dmsetup create ${1}"
|
||||
|
||||
# For all cases with more lines:
|
||||
elif [ ${count} -gt 1 ] ; then
|
||||
for c in $( seq 1 ${count} ) ; do
|
||||
if [ ${c} -eq 1 ] ; then
|
||||
# Heavy escaping in awk-statement because we cannot use apostrophes
|
||||
dmsetup_cmd="echo -e $(grep -v -e '^[[:space:]]*\(#\|$\)' /etc/dmtab | \
|
||||
grep ${1} | awk NR==${c}\ \{\$1=\"\"\;\ print\ \$0\})"
|
||||
else
|
||||
# Append starting with newline
|
||||
dmsetup_cmd="${dmsetup_cmd}\\\\n \
|
||||
$(grep -v -e '^[[:space:]]*\(#\|$\)' /etc/dmtab | \
|
||||
grep ${1} | awk NR==${c}\ \{\$1=\"\"\;\ print\ \$0\})"
|
||||
fi
|
||||
done
|
||||
echo "${dmsetup_cmd} | /sbin/dmsetup create ${1}"
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
# char **get_new_dm_volumes(void)
|
||||
#
|
||||
# Return unique volumes from /etc/dmtab
|
||||
get_new_dm_volumes() {
|
||||
local volume
|
||||
|
||||
# Filter comments and blank lines
|
||||
grep -v -e '^[[:space:]]*\(#\|$\)' /etc/dmtab | \
|
||||
awk '{ print $1 }' | \
|
||||
uniq | \
|
||||
while read volume ; do
|
||||
# If it exists, skip it
|
||||
dmvolume_exists "${volume%:}" && continue
|
||||
|
||||
echo "${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 $(build_dmsetup_command ${volume}) >/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
|
||||
}
|
||||
|
||||
25
sys-fs/lvm2/files/dmeventd.initd-2.02.67-r1
Normal file
25
sys-fs/lvm2/files/dmeventd.initd-2.02.67-r1
Normal file
@@ -0,0 +1,25 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
PIDFILE=/run/dmeventd.pid
|
||||
BIN=/sbin/dmeventd
|
||||
|
||||
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
|
||||
after lvm device-mapper
|
||||
}
|
||||
|
||||
start() {
|
||||
ebegin "Starting dmeventd"
|
||||
start-stop-daemon --start --exec $BIN --pidfile $PIDFILE
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
ebegin "Stopping dmeventd"
|
||||
start-stop-daemon --stop --exec $BIN --pidfile $PIDFILE
|
||||
eend $?
|
||||
}
|
||||
|
||||
11
sys-fs/lvm2/files/dmtab
Normal file
11
sys-fs/lvm2/files/dmtab
Normal file
@@ -0,0 +1,11 @@
|
||||
#/etc/dmraid: config file for adding device-mapper volumes at boot
|
||||
|
||||
# Format: <volume name>: <table>
|
||||
# Example: isw0: 0 312602976 striped 2 128 /dev/sda 0 /dev/sdb 0
|
||||
#
|
||||
# Alternatively you can create all your volumes the first time, and just run:
|
||||
#
|
||||
# dmsetup table >> /etc/dmtab
|
||||
#
|
||||
# and verify that they are correct.
|
||||
|
||||
38
sys-fs/lvm2/files/lvm-monitoring.initd-2.02.105-r2
Normal file
38
sys-fs/lvm2/files/lvm-monitoring.initd-2.02.105-r2
Normal file
@@ -0,0 +1,38 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# This script is based on upstream file
|
||||
# LVM2.2.02.67/scripts/lvm2_monitoring_init_red_hat.in
|
||||
|
||||
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
|
||||
need lvm dmeventd
|
||||
}
|
||||
|
||||
VGCHANGE=/sbin/vgchange
|
||||
VGS=/sbin/vgs
|
||||
|
||||
start() {
|
||||
ret=0
|
||||
# TODO do we want to separate out already active groups only?
|
||||
VGSLIST=`$VGS --noheadings -o name --rows 2> /dev/null`
|
||||
ebegin "Starting LVM monitoring for VGs ${VGSLIST}:"
|
||||
$VGCHANGE --monitor y --poll y ${VGSLIST}
|
||||
ret=$?
|
||||
eend $ret
|
||||
return $ret
|
||||
|
||||
}
|
||||
|
||||
stop() {
|
||||
ret=0
|
||||
# TODO do we want to separate out already active groups only?
|
||||
VGSLIST=`$VGS --noheadings -o name --rows 2> /dev/null`
|
||||
ebegin "Stopping LVM monitoring for VGs ${VGSLIST}:"
|
||||
$VGCHANGE --monitor n ${VGSLIST}
|
||||
ret=$?
|
||||
eend $ret
|
||||
return $ret
|
||||
}
|
||||
5
sys-fs/lvm2/files/lvm.confd-2.02.28-r2
Normal file
5
sys-fs/lvm2/files/lvm.confd-2.02.28-r2
Normal file
@@ -0,0 +1,5 @@
|
||||
# LVM should normally only be started after mdraid is available
|
||||
# this is because LVM physical volumes are very often MD devices.
|
||||
RC_AFTER="mdraid"
|
||||
|
||||
# vim: ft=gentoo-conf-d
|
||||
145
sys-fs/lvm2/files/lvm.rc-2.02.172
Normal file
145
sys-fs/lvm2/files/lvm.rc-2.02.172
Normal file
@@ -0,0 +1,145 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
_get_lvm_path() {
|
||||
local lvm_path=
|
||||
for lvm_path in /bin/lvm /sbin/lvm ; do
|
||||
[ -x "$lvm_path" ] && break
|
||||
done
|
||||
echo "${lvm_path}"
|
||||
}
|
||||
|
||||
_need_lvmetad()
|
||||
{
|
||||
local lvm_path="$(_get_lvm_path)"
|
||||
[ ! -x "${lvm_path}" ] && return 1
|
||||
${lvm_path} dumpconfig global 2>/dev/null | grep -q 'use_lvmetad=1'
|
||||
}
|
||||
|
||||
_need_lvmlockd()
|
||||
{
|
||||
local lvm_path="$(_get_lvm_path)"
|
||||
[ ! -x "${lvm_path}" ] && return 1
|
||||
${lvm_path} dumpconfig global 2>/dev/null | grep -q 'use_lvmlockd=1'
|
||||
}
|
||||
depend() {
|
||||
before checkfs fsck
|
||||
after modules device-mapper
|
||||
# We may use lvmetad based on the configuration. If we added lvmetad
|
||||
# support while lvm2 is running then we aren't dependent on it. For the
|
||||
# more common case, if its disabled in the config we aren't dependent
|
||||
# on it.
|
||||
config /etc/lvm/lvm.conf
|
||||
local _need=
|
||||
if service_started; then
|
||||
_need=$(service_get_value need)
|
||||
else
|
||||
if _need_lvmetad; then
|
||||
_need="${_need} lvmetad"
|
||||
fi
|
||||
if _need_lvmlockd; then
|
||||
_need="${_need} lvmlockd"
|
||||
fi
|
||||
fi
|
||||
need sysfs ${_need}
|
||||
}
|
||||
|
||||
config='global { locking_dir = "/run/lock/lvm" }'
|
||||
|
||||
dm_in_proc() {
|
||||
local retval=0
|
||||
for x in devices misc ; do
|
||||
grep -qs 'device-mapper' /proc/${x}
|
||||
retval=$((${retval} + $?))
|
||||
done
|
||||
return ${retval}
|
||||
}
|
||||
|
||||
start() {
|
||||
# LVM support for /usr, /home, /opt ....
|
||||
# This should be done *before* checking local
|
||||
# volumes, or they never get checked.
|
||||
|
||||
# NOTE: Add needed modules for LVM or RAID, etc
|
||||
# to /etc/modules.autoload if needed
|
||||
lvm_path="$(_get_lvm_path)"
|
||||
for lvm_path in /bin/lvm /sbin/lvm ; do
|
||||
[ -x "$lvm_path" ] && break
|
||||
done
|
||||
if [ ! -x "$lvm_path" ]; then
|
||||
eerror "Cannot find lvm binary in /sbin or /bin!"
|
||||
return 1
|
||||
fi
|
||||
if [ -z "${CDBOOT}" ] ; then
|
||||
if [ -e /proc/modules ] && ! dm_in_proc ; then
|
||||
modprobe dm-mod 2>/dev/null
|
||||
fi
|
||||
if [ -d /proc/lvm ] || dm_in_proc ; then
|
||||
ebegin "Setting up the Logical Volume Manager"
|
||||
#still echo stderr for debugging
|
||||
lvm_commands="#!${lvm_path}\n"
|
||||
# Extra PV find pass because some devices might not have been available until very recently
|
||||
lvm_commands="${lvm_commands}pvscan --config '${config}'\n"
|
||||
# Now make the nodes
|
||||
lvm_commands="${lvm_commands}vgscan --config '${config}' --mknodes\n"
|
||||
# And turn them on!
|
||||
lvm_commands="${lvm_commands}vgchange --config '${config}' --sysinit -a ly\n"
|
||||
if _need_lvmlockd; then
|
||||
# Start lockd VGs as required
|
||||
lvm_commands="${lvm_commands}vgchange --config '${config}' --lock-start --lock-opt auto\n"
|
||||
fi
|
||||
# Order of this is important, have to work around dash and LVM readline
|
||||
printf "%b\n" "${lvm_commands}" | $lvm_path /proc/self/fd/0 >/dev/null
|
||||
eend $? "Failed to setup the LVM"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
start_post()
|
||||
{
|
||||
# Save if we needed lvmetad
|
||||
if _need_lvmetad; then
|
||||
service_set_value need lvmetad
|
||||
fi
|
||||
}
|
||||
|
||||
stop() {
|
||||
for lvm_path in /bin/lvm /sbin/lvm ; do
|
||||
[ -x "$lvm_path" ] && break
|
||||
done
|
||||
if [ ! -x "$lvm_path" ]; then
|
||||
eerror "Cannot find lvm binary in /sbin or /bin!"
|
||||
return 1
|
||||
fi
|
||||
# Stop LVM2
|
||||
if [ -x /sbin/vgs ] && \
|
||||
[ -x /sbin/vgchange ] && \
|
||||
[ -x /sbin/lvchange ] && \
|
||||
[ -f /etc/lvmtab -o -d /etc/lvm ] && \
|
||||
[ -d /proc/lvm -o "`grep device-mapper /proc/misc 2>/dev/null`" ]
|
||||
then
|
||||
einfo "Shutting down the Logical Volume Manager"
|
||||
|
||||
VGS=$($lvm_path vgs --config "${config}" -o vg_name --noheadings --nosuffix --rows 2> /dev/null)
|
||||
|
||||
if [ "$VGS" ]
|
||||
then
|
||||
ebegin " Shutting Down LVs & VGs"
|
||||
#still echo stderr for debugging
|
||||
lvm_commands="#!${lvm_path}\n"
|
||||
# Extra PV find pass because some devices might not have been available until very recently
|
||||
lvm_commands="${lvm_commands}lvchange --config '${config}' --sysinit -a ln ${VGS}\n"
|
||||
# Now make the nodes
|
||||
lvm_commands="${lvm_commands}vgchange --config '${config}' --sysinit -a ln ${VGS}\n"
|
||||
# Order of this is important, have to work around dash and LVM readline
|
||||
printf "%b\n" "${lvm_commands}" | $lvm_path /proc/self/fd/0 --config "${config}" >/dev/null
|
||||
eend $? "Failed (possibly some LVs still needed for /usr or root)"
|
||||
fi
|
||||
|
||||
einfo "Finished shutting down the Logical Volume Manager"
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
|
||||
# vim:ts=4
|
||||
52
sys-fs/lvm2/files/lvm2-2.02.129-example.conf.in.patch
Normal file
52
sys-fs/lvm2/files/lvm2-2.02.129-example.conf.in.patch
Normal file
@@ -0,0 +1,52 @@
|
||||
Maintainer note: Forward ported without editing from lvm2-2.02.108-example.conf.in.patch to apply cleanly.
|
||||
|
||||
--- LVM2.2.02.129/conf/example.conf.in
|
||||
+++ LVM2.2.02.129/conf/example.conf.in
|
||||
@@ -128,6 +128,9 @@
|
||||
# Example
|
||||
# Accept every block device:
|
||||
# filter = [ "a|.*/|" ]
|
||||
+ # Gentoo: we exclude /dev/nbd by default, because it makes a lot of kernel
|
||||
+ # noise when you probed while not available.
|
||||
+ filter = [ "r|/dev/nbd.*|", "a/.*/" ]
|
||||
# Reject the cdrom drive:
|
||||
# filter = [ "r|/dev/cdrom|" ]
|
||||
# Work with just loopback devices, e.g. for testing:
|
||||
@@ -620,7 +623,8 @@
|
||||
# tools need to be installed with .lvm1 suffices, e.g. vgscan.lvm1.
|
||||
# They will stop working once the lvm2 on-disk metadata format is used.
|
||||
# This configuration option has an automatic default value.
|
||||
- # fallback_to_lvm1 = @DEFAULT_FALLBACK_TO_LVM1@
|
||||
+ # Gentoo: the LVM tools are a seperate package.
|
||||
+ fallback_to_lvm1 = 0
|
||||
|
||||
# Configuration option global/format.
|
||||
# The default metadata format that commands should use.
|
||||
@@ -1413,7 +1417,7 @@
|
||||
|
||||
# Configuration section metadata.
|
||||
# This configuration section has an automatic default value.
|
||||
-# metadata {
|
||||
+metadata {
|
||||
|
||||
# Configuration option metadata/pvmetadatacopies.
|
||||
# Number of copies of metadata to store on each PV.
|
||||
@@ -1431,7 +1435,8 @@
|
||||
#
|
||||
# This configuration option is advanced.
|
||||
# This configuration option has an automatic default value.
|
||||
- # pvmetadatacopies = 1
|
||||
+ # Gentoo: enable for data safety, but PV resize is then disabled.
|
||||
+ # pvmetadatacopies = 2
|
||||
|
||||
# Configuration option metadata/vgmetadatacopies.
|
||||
# Number of copies of metadata to maintain for each VG.
|
||||
@@ -1486,7 +1491,7 @@
|
||||
#
|
||||
# This configuration option is advanced.
|
||||
# This configuration option does not have a default value defined.
|
||||
-# }
|
||||
+}
|
||||
|
||||
# Configuration section report.
|
||||
# LVM report command output formatting.
|
||||
12
sys-fs/lvm2/files/lvm2-2.02.166-HPPA-no-O_DIRECT.patch
Normal file
12
sys-fs/lvm2/files/lvm2-2.02.166-HPPA-no-O_DIRECT.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
--- a/lib/device/dev-io.c
|
||||
+++ b/lib/device/dev-io.c
|
||||
@@ -505,7 +505,9 @@
|
||||
dev->flags |= DEV_NOT_O_NOATIME;
|
||||
if ((dev->fd = open(name, flags, 0777)) >= 0) {
|
||||
log_debug_devs("%s: Not using O_NOATIME", name);
|
||||
+#ifdef O_DIRECT_SUPPORT
|
||||
goto opened;
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
#endif
|
||||
29
sys-fs/lvm2/files/lvm2-2.02.176-pthread-pkgconfig.patch
Normal file
29
sys-fs/lvm2/files/lvm2-2.02.176-pthread-pkgconfig.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
--- LVM2.2.02.176/libdm/libdevmapper.pc.in
|
||||
+++ LVM2.2.02.176/libdm/libdevmapper.pc.in
|
||||
@@ -9,4 +9,4 @@
|
||||
Cflags: -I${includedir}
|
||||
Libs: -L${libdir} -ldevmapper
|
||||
Requires.private: @SELINUX_PC@ @UDEV_PC@
|
||||
-Libs.private: -lm @RT_LIBS@
|
||||
+Libs.private: -lm @RT_LIBS@ @PTHREAD_LIBS@
|
||||
--- LVM2.2.02.176/tools/Makefile.in
|
||||
+++ LVM2.2.02.176/tools/Makefile.in
|
||||
@@ -93,6 +93,7 @@
|
||||
INSTALL_LVM_TARGETS += install_tools_static
|
||||
INSTALL_DMSETUP_TARGETS += install_dmsetup_static
|
||||
INSTALL_CMDLIB_TARGETS += install_cmdlib_static
|
||||
+ STATIC_LIBS += @PTHREAD_LIBS@
|
||||
endif
|
||||
|
||||
LVMLIBS = $(LVMINTERNAL_LIBS) -ldevmapper
|
||||
@@ -118,6 +119,10 @@
|
||||
|
||||
include $(top_builddir)/make.tmpl
|
||||
|
||||
+ifeq ("@STATIC_LINK@", "yes")
|
||||
+ STATIC_LIBS += @PTHREAD_LIBS@
|
||||
+endif
|
||||
+
|
||||
device-mapper: $(TARGETS_DM)
|
||||
|
||||
CFLAGS_dmsetup.o += $(UDEV_CFLAGS) $(EXTRA_EXEC_CFLAGS)
|
||||
29
sys-fs/lvm2/files/lvm2-2.02.183-fix-stdio-usage.patch
Normal file
29
sys-fs/lvm2/files/lvm2-2.02.183-fix-stdio-usage.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
--- a/tools/lvmcmdline.c
|
||||
+++ b/tools/lvmcmdline.c
|
||||
@@ -3110,7 +3110,7 @@ static int _check_standard_fds(void)
|
||||
int err = is_valid_fd(STDERR_FILENO);
|
||||
|
||||
if (!is_valid_fd(STDIN_FILENO) &&
|
||||
- !(stdin = fopen(_PATH_DEVNULL, "r"))) {
|
||||
+ !freopen(_PATH_DEVNULL, "r", stdin)) {
|
||||
if (err)
|
||||
perror("stdin stream open");
|
||||
else
|
||||
@@ -3120,7 +3120,7 @@ static int _check_standard_fds(void)
|
||||
}
|
||||
|
||||
if (!is_valid_fd(STDOUT_FILENO) &&
|
||||
- !(stdout = fopen(_PATH_DEVNULL, "w"))) {
|
||||
+ !freopen(_PATH_DEVNULL, "r", stdout)) {
|
||||
if (err)
|
||||
perror("stdout stream open");
|
||||
/* else no stdout */
|
||||
@@ -3128,7 +3128,7 @@ static int _check_standard_fds(void)
|
||||
}
|
||||
|
||||
if (!is_valid_fd(STDERR_FILENO) &&
|
||||
- !(stderr = fopen(_PATH_DEVNULL, "w"))) {
|
||||
+ !freopen(_PATH_DEVNULL, "w", stderr)) {
|
||||
printf("stderr stream open: %s\n",
|
||||
strerror(errno));
|
||||
return 0;
|
||||
@@ -0,0 +1,24 @@
|
||||
diff --git a/lib/log/log.c b/lib/log/log.c
|
||||
index 79fbd7a..0999d10 100644
|
||||
--- a/lib/log/log.c
|
||||
+++ b/lib/log/log.c
|
||||
@@ -161,6 +161,7 @@ static void _check_and_replace_standard_log_streams(FILE *old_stream, FILE *new_
|
||||
* Close and reopen standard stream on file descriptor fd.
|
||||
*/
|
||||
int reopen_standard_stream(FILE **stream, const char *mode)
|
||||
+#ifdef __GLIBC__
|
||||
{
|
||||
int fd, fd_copy, new_fd;
|
||||
const char *name;
|
||||
@@ -207,6 +208,11 @@ int reopen_standard_stream(FILE **stream, const char *mode)
|
||||
*stream = new_stream;
|
||||
return 1;
|
||||
}
|
||||
+#else
|
||||
+{
|
||||
+ return (freopen(NULL, mode, *stream) != NULL);
|
||||
+}
|
||||
+#endif
|
||||
|
||||
void init_log_fn(lvm2_log_fn_t log_fn)
|
||||
{
|
||||
21
sys-fs/lvm2/files/lvm2-2.02.183-portability.patch
Normal file
21
sys-fs/lvm2/files/lvm2-2.02.183-portability.patch
Normal file
@@ -0,0 +1,21 @@
|
||||
--- a/lib/mm/memlock.c
|
||||
+++ b/lib/mm/memlock.c
|
||||
@@ -159,7 +159,7 @@ static void _touch_memory(void *mem, siz
|
||||
|
||||
static void _allocate_memory(void)
|
||||
{
|
||||
-#ifndef VALGRIND_POOL
|
||||
+#if !defined(VALGRIND_POOL) && defined(__GLIBC__)
|
||||
void *stack_mem;
|
||||
struct rlimit limit;
|
||||
int i, area = 0, missing = _size_malloc_tmp, max_areas = 32, hblks;
|
||||
--- a/libdaemon/server/daemon-server.c
|
||||
+++ b/libdaemon/server/daemon-server.c
|
||||
@@ -18,6 +18,7 @@
|
||||
#include "daemon-server.h"
|
||||
#include "daemon-log.h"
|
||||
|
||||
+#include <fcntl.h>
|
||||
#include <dlfcn.h>
|
||||
#include <errno.h>
|
||||
#include <pthread.h>
|
||||
72
sys-fs/lvm2/files/lvm2-2.02.56-lvm2create_initrd.patch
Normal file
72
sys-fs/lvm2/files/lvm2-2.02.56-lvm2create_initrd.patch
Normal file
@@ -0,0 +1,72 @@
|
||||
--- LVM2.2.02.56/scripts/lvm2create_initrd/lvm2create_initrd.orig 2006-11-21 22:41:56.000000000 +0000
|
||||
+++ LVM2.2.02.56/scripts/lvm2create_initrd/lvm2create_initrd 2009-12-26 01:47:08.025224602 +0000
|
||||
@@ -54,7 +54,9 @@
|
||||
DEVRAM=/tmp/initrd.$$
|
||||
|
||||
# set defaults
|
||||
-BINFILES=${BINFILES:-"`which lvm` `which bash` `which busybox` `which pivot_root`"}
|
||||
+LVM=`which lvm.static`
|
||||
+LVM=${LVM:-"`which lvm`"}
|
||||
+BINFILES=${BINFILES:-"${LVM} `which bash` `which busybox` `which pivot_root`"}
|
||||
BASICDEVICES=${BASICDEVICES:-"std consoleonly fd"}
|
||||
BLOCKDEVICES=${BLOCKDEVICES:-"md hda hdb hdc hdd sda sdb sdc sdd"}
|
||||
MAKEDEV=${MAKEDEV:-"debian"}
|
||||
@@ -119,6 +121,10 @@
|
||||
echo "$PRE Mounting /proc"
|
||||
mount -t proc none /proc
|
||||
|
||||
+# We need /sys for lvm
|
||||
+echo "$PRE Mounting /sys"
|
||||
+mount -t sysfs sysfs /sys
|
||||
+
|
||||
# plug in modules listed in /etc/modules
|
||||
if [ -f /etc/modules ]; then
|
||||
echo -n "$PRE plugging in kernel modules:"
|
||||
@@ -179,26 +185,29 @@
|
||||
# run a shell if we're passed lvm2rescue on commandline
|
||||
grep lvm2rescue /proc/cmdline 1>/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
- lvm vgchange --ignorelockingfailure -P -a y
|
||||
+ $LVM vgchange --ignorelockingfailure -P -a y
|
||||
do_shell
|
||||
else
|
||||
- lvm vgchange --ignorelockingfailure -a y
|
||||
+ $LVM vgchange --ignorelockingfailure -a y
|
||||
fi
|
||||
|
||||
echo "$PRE Mounting root filesystem $rootvol ro"
|
||||
mkdir /rootvol
|
||||
if ! mount -t auto -o ro $rootvol /rootvol; then
|
||||
- echo "\t*FAILED*";
|
||||
+ echo "\t*FAILED TRYING TO MOUNT ROOTVOL*";
|
||||
do_shell
|
||||
fi
|
||||
|
||||
echo "$PRE Umounting /proc"
|
||||
umount /proc
|
||||
|
||||
+echo "$PRE Umounting /sys"
|
||||
+umount /sys
|
||||
+
|
||||
echo "$PRE Changing roots"
|
||||
cd /rootvol
|
||||
if ! pivot_root . initrd ; then
|
||||
- echo "\t*FAILED*"
|
||||
+ echo "\t*FAILED PIVOT TO NEW ROOT*"
|
||||
do_shell
|
||||
fi
|
||||
|
||||
@@ -356,7 +365,7 @@
|
||||
fi
|
||||
|
||||
verbose "creating basic set of directories in $TMPMNT"
|
||||
-(cd $TMPMNT; mkdir bin dev etc lib proc sbin var)
|
||||
+(cd $TMPMNT; mkdir bin dev etc lib proc sbin sys var)
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$cmd -- ERROR creating directories in $TMPMNT"
|
||||
cleanup 1
|
||||
@@ -499,4 +508,3 @@
|
||||
FINALTXT
|
||||
|
||||
cleanup 0
|
||||
-
|
||||
@@ -0,0 +1,42 @@
|
||||
diff -Nuar --exclude '*~' LVM2.2.02.63.orig/daemons/dmeventd/Makefile.in LVM2.2.02.63/daemons/dmeventd/Makefile.in
|
||||
--- LVM2.2.02.63.orig/daemons/dmeventd/Makefile.in 2010-04-09 14:42:48.000000000 -0700
|
||||
+++ LVM2.2.02.63/daemons/dmeventd/Makefile.in 2010-04-19 11:53:27.000000000 -0700
|
||||
@@ -28,11 +28,12 @@
|
||||
INSTALL_LIB_TARGETS = install_lib_dynamic
|
||||
|
||||
LIB_NAME = libdevmapper-event
|
||||
+LIB_STATIC = $(LIB_NAME).a
|
||||
+INSTALL_LIB_TARGETS += install_lib_static
|
||||
+TARGETS += $(LIB_STATIC)
|
||||
ifeq ("@STATIC_LINK@", "yes")
|
||||
- LIB_STATIC = $(LIB_NAME).a
|
||||
- TARGETS += $(LIB_STATIC) dmeventd.static
|
||||
+ TARGETS += dmeventd.static
|
||||
INSTALL_DMEVENTD_TARGETS += install_dmeventd_static
|
||||
- INSTALL_LIB_TARGETS += install_lib_static
|
||||
endif
|
||||
|
||||
LIB_VERSION = $(LIB_VERSION_DM)
|
||||
diff -Nuar --exclude '*~' LVM2.2.02.63.orig/libdm/Makefile.in LVM2.2.02.63/libdm/Makefile.in
|
||||
--- LVM2.2.02.63.orig/libdm/Makefile.in 2010-04-09 14:42:51.000000000 -0700
|
||||
+++ LVM2.2.02.63/libdm/Makefile.in 2010-04-19 11:52:20.000000000 -0700
|
||||
@@ -34,8 +34,8 @@
|
||||
|
||||
INCLUDES = -I$(srcdir)/$(interface) -I$(srcdir)
|
||||
|
||||
-ifeq ("@STATIC_LINK@", "yes")
|
||||
LIB_STATIC = $(interface)/libdevmapper.a
|
||||
+ifeq ("@STATIC_LINK@", "yes")
|
||||
endif
|
||||
|
||||
LIB_SHARED = $(interface)/libdevmapper.$(LIB_SUFFIX)
|
||||
@@ -63,8 +63,8 @@
|
||||
|
||||
INSTALL_TYPE = install_dynamic
|
||||
|
||||
-ifeq ("@STATIC_LINK@", "yes")
|
||||
INSTALL_TYPE += install_static
|
||||
+ifeq ("@STATIC_LINK@", "yes")
|
||||
endif
|
||||
|
||||
ifeq ("@PKGCONFIG@", "yes")
|
||||
18
sys-fs/lvm2/files/lvm2-2.02.67-createinitrd.patch
Normal file
18
sys-fs/lvm2/files/lvm2-2.02.67-createinitrd.patch
Normal file
@@ -0,0 +1,18 @@
|
||||
X-Gentoo-Bug-URL: http://bugs.gentoo.org/show_bug.cgi?id=301331
|
||||
X-Gentoo-Bug: 301331
|
||||
|
||||
diff -Nuar LVM2.2.02.67.orig/scripts/lvm2create_initrd/lvm2create_initrd LVM2.2.02.67/scripts/lvm2create_initrd/lvm2create_initrd
|
||||
--- LVM2.2.02.67.orig/scripts/lvm2create_initrd/lvm2create_initrd 2010-06-07 18:44:34.182980475 +0000
|
||||
+++ LVM2.2.02.67/scripts/lvm2create_initrd/lvm2create_initrd 2010-06-07 18:51:27.636312899 +0000
|
||||
@@ -469,9 +469,9 @@
|
||||
rmdir $TMPMNT/lost+found
|
||||
|
||||
echo "$cmd -- ummounting ram disk"
|
||||
-umount $DEVRAM
|
||||
+umount $TMPMNT
|
||||
if [ $? -ne 0 ]; then
|
||||
- echo "$cmd -- ERROR umounting $DEVRAM"
|
||||
+ echo "$cmd -- ERROR umounting $TMPMNT"
|
||||
cleanup 1
|
||||
fi
|
||||
|
||||
11
sys-fs/lvm2/files/lvm2-2.02.99-locale-muck.patch
Normal file
11
sys-fs/lvm2/files/lvm2-2.02.99-locale-muck.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- LVM2/make.tmpl.in
|
||||
+++ LVM2/make.tmpl.in
|
||||
@@ -395,7 +395,7 @@
|
||||
( cat $(srcdir)/.exported_symbols; \
|
||||
if test x$(EXPORTED_HEADER) != x; then \
|
||||
$(CC) -E -P $(INCLUDES) $(DEFS) $(EXPORTED_HEADER) | \
|
||||
- $(SED) -ne "/^typedef|}/!s/.*[ *]\($(EXPORTED_FN_PREFIX)_[a-z0-9_]*\)(.*/\1/p"; \
|
||||
+ LC_ALL=C $(SED) -ne "/^typedef|}/!s/.*[ *]\($(EXPORTED_FN_PREFIX)_[a-z0-9_]*\)(.*/\1/p"; \
|
||||
fi \
|
||||
) > $@
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
diff --git a/lib/locking/lvmlockd.c b/lib/locking/lvmlockd.c
|
||||
index 0365797..a4684b4 100644
|
||||
--- a/lib/locking/lvmlockd.c
|
||||
+++ b/lib/locking/lvmlockd.c
|
||||
@@ -2148,7 +2148,7 @@ int lockd_lv_name(struct cmd_context *cmd, struct volume_group *vg,
|
||||
static int _lockd_lv_thin(struct cmd_context *cmd, struct logical_volume *lv,
|
||||
const char *def_mode, uint32_t flags)
|
||||
{
|
||||
- struct logical_volume *pool_lv;
|
||||
+ struct logical_volume *pool_lv = NULL;
|
||||
|
||||
if (lv_is_thin_volume(lv)) {
|
||||
struct lv_segment *pool_seg = first_seg(lv);
|
||||
@@ -0,0 +1,25 @@
|
||||
lib/filters/filter-persistent.c | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/lib/filters/filter-persistent.c b/lib/filters/filter-persistent.c
|
||||
index 5bc0861..203c88e 100644
|
||||
--- a/lib/filters/filter-persistent.c
|
||||
+++ b/lib/filters/filter-persistent.c
|
||||
@@ -26,12 +26,15 @@ struct pfilter {
|
||||
struct dev_types *dt;
|
||||
};
|
||||
|
||||
+static char* _good_device = "good";
|
||||
+static char* _bad_device = "bad";
|
||||
+
|
||||
/*
|
||||
* The hash table holds one of these two states
|
||||
* against each entry.
|
||||
*/
|
||||
-#define PF_BAD_DEVICE ((void *) 1)
|
||||
-#define PF_GOOD_DEVICE ((void *) 2)
|
||||
+#define PF_BAD_DEVICE ((void *) &_good_device)
|
||||
+#define PF_GOOD_DEVICE ((void *) &_bad_device)
|
||||
|
||||
static int _init_hash(struct pfilter *pf)
|
||||
{
|
||||
16
sys-fs/lvm2/files/lvm2-lvmetad-timeout.patch
Normal file
16
sys-fs/lvm2/files/lvm2-lvmetad-timeout.patch
Normal file
@@ -0,0 +1,16 @@
|
||||
scripts/lvm2_lvmetad_systemd_red_hat.service.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scripts/lvm2_lvmetad_systemd_red_hat.service.in b/scripts/lvm2_lvmetad_systemd_red_hat.service.in
|
||||
index 8f4c60d..a1cedd2 100644
|
||||
--- a/scripts/lvm2_lvmetad_systemd_red_hat.service.in
|
||||
+++ b/scripts/lvm2_lvmetad_systemd_red_hat.service.in
|
||||
@@ -9,7 +9,7 @@ Conflicts=shutdown.target
|
||||
[Service]
|
||||
Type=simple
|
||||
NonBlocking=true
|
||||
-ExecStart=@SBINDIR@/lvmetad -f
|
||||
+ExecStart=@SBINDIR@/lvmetad -f -t 3600
|
||||
Environment=SD_ACTIVATION=1
|
||||
Restart=on-abort
|
||||
PIDFile=@LVMETAD_PIDFILE@
|
||||
30
sys-fs/lvm2/files/lvm2-set-default-preferred_names.patch
Normal file
30
sys-fs/lvm2/files/lvm2-set-default-preferred_names.patch
Normal file
@@ -0,0 +1,30 @@
|
||||
conf/example.conf.in | 2 +-
|
||||
lib/config/config_settings.h | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/conf/example.conf.in b/conf/example.conf.in
|
||||
index c0afcb7..ec12918 100644
|
||||
--- a/conf/example.conf.in
|
||||
+++ b/conf/example.conf.in
|
||||
@@ -106,7 +106,7 @@ devices {
|
||||
# Example
|
||||
# preferred_names = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/[hs]d" ]
|
||||
#
|
||||
- # This configuration option does not have a default value defined.
|
||||
+ preferred_names = [ "^/dev/mpath/", "^/dev/mapper/mpath", "^/dev/[hs]d" ]
|
||||
|
||||
# Configuration option devices/filter.
|
||||
# Limit the block devices that are used by LVM commands.
|
||||
diff --git a/lib/config/config_settings.h b/lib/config/config_settings.h
|
||||
index 9017043..c06b6f0 100644
|
||||
--- a/lib/config/config_settings.h
|
||||
+++ b/lib/config/config_settings.h
|
||||
@@ -205,7 +205,7 @@ cfg(devices_external_device_info_source_CFG, "external_device_info_source", devi
|
||||
" compiled with udev support.\n"
|
||||
"#\n")
|
||||
|
||||
-cfg_array(devices_preferred_names_CFG, "preferred_names", devices_CFG_SECTION, CFG_ALLOW_EMPTY | CFG_DEFAULT_UNDEFINED , CFG_TYPE_STRING, NULL, vsn(1, 2, 19), NULL, 0, NULL,
|
||||
+cfg_array(devices_preferred_names_CFG, "preferred_names", devices_CFG_SECTION, CFG_ALLOW_EMPTY, CFG_TYPE_STRING, "#S^/dev/mpath/#S^/dev/mapper/mpath#S^/dev/[hs]d", vsn(1, 2, 19), NULL, 0, NULL,
|
||||
"Select which path name to display for a block device.\n"
|
||||
"If multiple path names exist for a block device, and LVM needs to\n"
|
||||
"display a name for the device, the path names are matched against\n"
|
||||
12
sys-fs/lvm2/files/lvmetad.initd-2.02.105-r2
Normal file
12
sys-fs/lvm2/files/lvmetad.initd-2.02.105-r2
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
pidfile="/run/lvmetad.pid"
|
||||
command="/sbin/lvmetad"
|
||||
command_args="${LVMETAD_OPTS:=-p ${pidfile}}"
|
||||
start_stop_daemon_args="--pidfile ${pidfile}"
|
||||
|
||||
depend() {
|
||||
:
|
||||
}
|
||||
17
sys-fs/lvm2/files/lvmetad.initd-2.02.116-r3
Normal file
17
sys-fs/lvm2/files/lvmetad.initd-2.02.116-r3
Normal file
@@ -0,0 +1,17 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
pidfile="/run/lvmetad.pid"
|
||||
command="/sbin/lvmetad"
|
||||
command_args="${LVMETAD_OPTS:=-p ${pidfile}}"
|
||||
start_stop_daemon_args="--pidfile ${pidfile}"
|
||||
|
||||
depend() {
|
||||
:
|
||||
}
|
||||
|
||||
start_pre()
|
||||
{
|
||||
checkpath --directory /run/lvm || return 1
|
||||
}
|
||||
17
sys-fs/lvm2/files/lvmlockd.initd-2.02.166-r1
Normal file
17
sys-fs/lvm2/files/lvmlockd.initd-2.02.166-r1
Normal file
@@ -0,0 +1,17 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
pidfile="/run/lvmlockd.pid"
|
||||
command="/sbin/lvmlockd"
|
||||
command_args="${LVMLOCKD_OPTS:--p ${pidfile}} ${LVMLOCKD_TYPE:--g sanlock}"
|
||||
start_stop_daemon_args="--pidfile ${pidfile}"
|
||||
|
||||
depend() {
|
||||
before sanlock
|
||||
}
|
||||
|
||||
start_pre()
|
||||
{
|
||||
checkpath --directory /run/lvm || return 1
|
||||
}
|
||||
Reference in New Issue
Block a user