summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Zoffoli <xmerlin@gentoo.org>2005-03-23 02:34:44 +0000
committerChristian Zoffoli <xmerlin@gentoo.org>2005-03-23 02:34:44 +0000
commit6c58837c31984e50657e7f0cda191a342b66b142 (patch)
tree95c0c2569a68088bc2633b09ab71ca8050a2edc8 /sys-cluster/gnbd/files
parentPackage-Manager: portage-2.0.51.19 (diff)
downloadhistorical-6c58837c31984e50657e7f0cda191a342b66b142.tar.gz
historical-6c58837c31984e50657e7f0cda191a342b66b142.tar.bz2
historical-6c58837c31984e50657e7f0cda191a342b66b142.zip
new in portage
Package-Manager: portage-2.0.51.19
Diffstat (limited to 'sys-cluster/gnbd/files')
-rw-r--r--sys-cluster/gnbd/files/digest-gnbd-1.0_pre131
-rwxr-xr-xsys-cluster/gnbd/files/gnbd-client.rc50
-rwxr-xr-xsys-cluster/gnbd/files/gnbd-srv.rc81
-rw-r--r--sys-cluster/gnbd/files/gnbd.devfs21
-rw-r--r--sys-cluster/gnbd/files/gnbdtab9
5 files changed, 162 insertions, 0 deletions
diff --git a/sys-cluster/gnbd/files/digest-gnbd-1.0_pre13 b/sys-cluster/gnbd/files/digest-gnbd-1.0_pre13
new file mode 100644
index 000000000000..ff5a77e8a6f8
--- /dev/null
+++ b/sys-cluster/gnbd/files/digest-gnbd-1.0_pre13
@@ -0,0 +1 @@
+MD5 e8c4807be08c0af8da09646f2a85f8e0 gnbd-1.0-pre13.tar.gz 57522
diff --git a/sys-cluster/gnbd/files/gnbd-client.rc b/sys-cluster/gnbd/files/gnbd-client.rc
new file mode 100755
index 000000000000..95c51fee400c
--- /dev/null
+++ b/sys-cluster/gnbd/files/gnbd-client.rc
@@ -0,0 +1,50 @@
+#!/sbin/runscript
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/gnbd/files/gnbd-client.rc,v 1.1 2005/03/23 02:34:44 xmerlin Exp $
+
+depend() {
+ use dns logger
+ need net
+ need fenced
+}
+
+start() {
+ if [ ! -f /etc/gnbdtab ] ; then
+ eerror "Please create /etc/gnbdtab"
+ eerror "Sample conf: /etc/gnbdtab"
+ return 1
+ fi
+
+ ebegin "Loading needed kernel modules for gnbd"
+ modprobe gnbd
+ eend $? "Failed to load needed kernel modules for gnbd"
+
+ GNBD=`cat /etc/gnbdtab | egrep '^import'`
+ if [ -n "$GNBD" ] ; then
+ ebegin "Importing all GNBDs devices"
+ einfo "$(awk '/^import/ { print "--> server:", $2 }' /etc/gnbdtab )"
+ cat /etc/gnbdtab | awk '/^import/ { print "-i", $2 }' | xargs gnbd_import > /dev/null
+ eend $? "Failed to import gnbd devices"
+ fi
+}
+
+stop() {
+
+ local GNBD_MONITOR_PROC
+
+ ebegin "Unimporting all GNBDs devices"
+ gnbd_import -q -R &> /dev/null
+ eend $?
+
+ GNBD_MONITOR_PROC="$(pgrep gnbd_clusterd)"
+ if [ -n "${GNBD_MONITOR_PROC}" ]; then
+ ebegin "Stopping gnbd_monitor"
+ killall gnbd_monitor &> /dev/null
+ eend $?
+ fi
+
+ ebegin "Unloading gnbd kernel module"
+ modprobe -r gnbd
+ eend $? "Failed to unload gnbd kernel module"
+}
diff --git a/sys-cluster/gnbd/files/gnbd-srv.rc b/sys-cluster/gnbd/files/gnbd-srv.rc
new file mode 100755
index 000000000000..707624b85956
--- /dev/null
+++ b/sys-cluster/gnbd/files/gnbd-srv.rc
@@ -0,0 +1,81 @@
+#!/sbin/runscript
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/sys-cluster/gnbd/files/gnbd-srv.rc,v 1.1 2005/03/23 02:34:44 xmerlin Exp $
+
+depend() {
+ use dns logger
+ need net
+ need fenced
+}
+
+GNBD_SRV_TIMEOUT=5
+
+start() {
+ local GNBD
+
+ if [ ! -f /etc/gnbdtab ] ; then
+ eerror "Please create /etc/gnbdtab"
+ eerror "Sample conf: /etc/gnbdtab"
+ return 1
+ fi
+
+ ebegin "Loading needed kernel modules for gnbd"
+ modprobe gnbd
+ eend $? "Failed to load needed kernel modules for gnbd"
+
+ ebegin "Starting gnbd_serv"
+ start-stop-daemon --start --quiet --exec /sbin/gnbd_serv -- -q
+ eend $? "Failed to start gnbd_serv"
+
+ GNBD=`cat /etc/gnbdtab | egrep '^export'`
+ if [ -n "$GNBD" ] ; then
+ ebegin "Exporting gnbd devices"
+ einfo "$(awk '/^export/ { print "--> device:", $4, "as", $3 }' /etc/gnbdtab )"
+ cat /etc/gnbdtab | awk '/^export/ { print "-d", $4, "-e", $3 }' | xargs gnbd_export > /dev/null
+ eend $? "Failed to export gnbd devices"
+ fi
+}
+
+stop() {
+
+ local GNBD_SRV_PROCS GNBD_CLUSTERD_PROC
+
+ ebegin "Unexporting all gnbd devices"
+ gnbd_export -q -R &> /dev/null
+ eend $?
+
+ if [ "$?" -ne 0 ]
+ then
+ ewend 1 "Failed to unexport all gnbd devices"
+ else
+ eend 0
+
+ fi
+
+ ebegin "Stopping gnbd_serv"
+
+ GNBD_SRV_PROCS="$(pgrep gnbd_serv)"
+ while [ -n "${GNBD_SRV_PROCS}" ] && [ ${GNBD_SRV_TIMEOUT} -gt 0 ] ; do
+ gnbd_serv -k &> /dev/null
+ sleep 1
+ GNBD_SRV_TIMEOUT=$(( ${GNBD_SRV_TIMEOUT}-1 ))
+ GNBD_SRV_PROCS="$(pgrep gnbd_serv)"
+ done
+
+ if [ -n "${GNBD_SRV_PROCS}" ]; then
+ gnbd_serv -K &> /dev/null
+ fi
+ eend $? "Failed to stop gnbd_serv"
+
+ GNBD_CLUSTERD_PROC="$(pgrep gnbd_clusterd)"
+ if [ -n "${GNBD_CLUSTERD_PROC}" ]; then
+ ebegin "Stopping gnbd_clusterd"
+ killall gnbd_clusterd &> /dev/null
+ eend $?
+ fi
+
+ ebegin "Unloading gnbd kernel module"
+ modprobe -r gnbd
+ eend $? "Failed to unload gnbd kernel module"
+}
diff --git a/sys-cluster/gnbd/files/gnbd.devfs b/sys-cluster/gnbd/files/gnbd.devfs
new file mode 100644
index 000000000000..f501682a9fb5
--- /dev/null
+++ b/sys-cluster/gnbd/files/gnbd.devfs
@@ -0,0 +1,21 @@
+#
+# GNBD
+#
+
+#LOOKUP ^gnbd.* MODLOAD
+
+#
+# gnbd needs crx------- on /dev/gnbd_ctl
+#
+
+REGISTER ^gnbd_ctl PERMISSIONS root.root 600
+
+#
+# create old style device for /dev/gnbd/.*
+#
+
+#REGISTER ^gnbd/.* MKOLDCOMPAT
+#UNREGISTER ^gnbd/.* RMOLDCOMPAT
+
+#REGISTER ^gnbd.* IGNORE
+#REGISTER ^gnbd/.* IGNORE
diff --git a/sys-cluster/gnbd/files/gnbdtab b/sys-cluster/gnbd/files/gnbdtab
new file mode 100644
index 000000000000..e9a29dc59139
--- /dev/null
+++ b/sys-cluster/gnbd/files/gnbdtab
@@ -0,0 +1,9 @@
+#
+# GNBD filesystem import/export configuration
+#
+
+# type host name device
+
+# Samples:
+# export srv1 export1 /dev/data/export1
+# import srv3 export1 /dev/gnbd/export1