From b2ad14ffbef9ee223c4ce41235aa0af77d61053c Mon Sep 17 00:00:00 2001 From: James Meyer Date: Mon, 13 Dec 2010 01:11:37 +0000 Subject: rpcbind: apply patch so that it registers as sunrpc in /etc/services --- abs/core/rpcbind/PKGBUILD | 14 +++++++++----- abs/core/rpcbind/rpcbind-sunrpc.patch | 22 ++++++++++++++++++++++ 2 files changed, 31 insertions(+), 5 deletions(-) create mode 100644 abs/core/rpcbind/rpcbind-sunrpc.patch diff --git a/abs/core/rpcbind/PKGBUILD b/abs/core/rpcbind/PKGBUILD index 11d8a91..81d6254 100644 --- a/abs/core/rpcbind/PKGBUILD +++ b/abs/core/rpcbind/PKGBUILD @@ -1,24 +1,28 @@ -# $Id: PKGBUILD 54912 2009-10-11 20:12:23Z giovanni $ +# $Id: PKGBUILD 86473 2010-08-02 07:44:00Z tpowa $ # Maintainer: Tobias Powalowski pkgname=rpcbind pkgver=0.2.0 -pkgrel=1 +pkgrel=2 pkgdesc="portmap replacement which supports RPC over various protocols" arch=(i686 x86_64) depends=('bash' 'glibc' 'libtirpc') url="http://rpcbind.sourceforge.net" license=('custom') replaces=('portmap') -source=(http://downloads.sourceforge.net/sourceforge/rpcbind/rpcbind-0.2.0.tar.bz2 +source=(http://downloads.sourceforge.net/sourceforge/rpcbind/rpcbind-0.2.0.tar.bz2 + rpcbind-sunrpc.patch rpcbind) md5sums=('1a77ddb1aaea8099ab19c351eeb26316' + 'c02ac36a98baac70b8a26190524b7b73' '78a963654f57cbb209e228884767836e') build() { cd $srcdir/$pkgname-$pkgver + # patch for iana services file + patch -Np1 -i ../rpcbind-sunrpc.patch ./configure --prefix=/usr - make || return 1 - make DESTDIR=$pkgdir install || return 1 + make + make DESTDIR=$pkgdir install # install daemon install -D -m755 $srcdir/rpcbind $pkgdir/etc/rc.d/rpcbind # install license diff --git a/abs/core/rpcbind/rpcbind-sunrpc.patch b/abs/core/rpcbind/rpcbind-sunrpc.patch new file mode 100644 index 0000000..76cf54b --- /dev/null +++ b/abs/core/rpcbind/rpcbind-sunrpc.patch @@ -0,0 +1,22 @@ +--- rpcbind-0.1.7/src/rpcbind.c.orig 2008-11-19 14:17:34.000000000 +0100 ++++ rpcbind-0.1.7/src/rpcbind.c 2010-01-07 13:03:37.416632894 +0100 +@@ -114,7 +114,7 @@ + char *udp_uaddr; /* Universal UDP address */ + char *tcp_uaddr; /* Universal TCP address */ + #endif +-static char servname[] = "rpcbind"; ++static char servname[] = "sunrpc"; + static char superuser[] = "superuser"; + + int main __P((int, char *[])); +--- rpcbind-0.1.7/src/rpcinfo.c~ 2010-01-08 16:14:24.592156602 +0000 ++++ rpcbind-0.1.7/src/rpcinfo.c 2010-01-08 16:14:31.578838609 +0000 +@@ -633,7 +633,7 @@ + { + memset (&hints, 0, sizeof hints); + hints.ai_family = AF_INET; +- if ((error = getaddrinfo (host, "rpcbind", &hints, &res)) != 0 && ++ if ((error = getaddrinfo (host, "sunrpc", &hints, &res)) != 0 && + (error = getaddrinfo (host, "portmapper", &hints, &res)) != 0) + { + fprintf (stderr, "rpcinfo: %s: %s\n", -- cgit v0.12 From d0c10b1079f1ad57c9c072e725687bf47d303a38 Mon Sep 17 00:00:00 2001 From: James Meyer Date: Mon, 13 Dec 2010 01:13:21 +0000 Subject: runit-scripts: update scripts to use nfs4 refs #735 closes #735 --- abs/core/runit-scripts/PKGBUILD | 2 +- .../runitscripts/services/nfs-common/finish | 51 ++++++++++++++ .../runitscripts/services/nfs-common/run | 81 ++++++++++++++++++++++ .../runit-scripts/runitscripts/services/nfsd/run | 63 ++++++++++++++--- .../runitscripts/services/rpcbind/run | 7 ++ 5 files changed, 192 insertions(+), 12 deletions(-) create mode 100755 abs/core/runit-scripts/runitscripts/services/nfs-common/finish create mode 100755 abs/core/runit-scripts/runitscripts/services/nfs-common/run create mode 100755 abs/core/runit-scripts/runitscripts/services/rpcbind/run diff --git a/abs/core/runit-scripts/PKGBUILD b/abs/core/runit-scripts/PKGBUILD index 0c914f5..38adc5c 100755 --- a/abs/core/runit-scripts/PKGBUILD +++ b/abs/core/runit-scripts/PKGBUILD @@ -1,6 +1,6 @@ pkgname=runit-scripts pkgver=2.1.1 -pkgrel=6 +pkgrel=7 pkgdesc="collection of startup scripts for runit" url="http://smarden.org/runit/" license="BSD" diff --git a/abs/core/runit-scripts/runitscripts/services/nfs-common/finish b/abs/core/runit-scripts/runitscripts/services/nfs-common/finish new file mode 100755 index 0000000..531192d --- /dev/null +++ b/abs/core/runit-scripts/runitscripts/services/nfs-common/finish @@ -0,0 +1,51 @@ +#!/bin/bash +exec 2>&1 +export TERM=linux +daemon_name=nfs-common +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/$daemon_name.conf + + +# rpc.statd daemon & binary location +STATD_DAEMON_NAME=rpc.statd +STATD="/usr/sbin/rpc.statd" + +# rpc.idmapd daemon & binary location +IDMAPD_DAEMON_NAME=rpc.idmapd +IDMAPD="/usr/sbin/rpc.idmapd" + +# rpc.gssd daemon & binary location +GSSD_DAEMON_NAME=rpc.gssd +GSSD="/usr/sbin/rpc.gssd" + +do_umount() { + if mountpoint -q "$1" ; then + umount "$1" + fi + return 0 +} + +get_pid() { + pidof -o %PPID "$1" +} + + +stat_runit "Stopping $GSSD_DAEMON_NAME daemon" +PID=$(get_pid $GSSD) +[ ! -z "$PID" ] && kill $PID &> /dev/null +rm -f /var/run/$GSSD_DAEMON_NAME.pid &> /dev/null + +stat_runit "Stopping $IDMAPD_DAEMON_NAME daemon" +PID=$(get_pid $IDMAPD) +# KILL +[ ! -z "$PID" ] && kill $PID &> /dev/null + rm -f /var/run/$IDMAPD_DAEMON_NAME.pid &> /dev/null +do_umount "$PIPEFS_MOUNTPOINT" 2>/dev/null || true + +stat_runit "Stopping $STATD_DAEMON_NAME daemon" +PID=$(get_pid $STATD) +# KILL +[ ! -z "$PID" ] && kill $PID &> /dev/null +rm -f /var/run/$STATD_DAEMON_NAME.pid &> /dev/null + diff --git a/abs/core/runit-scripts/runitscripts/services/nfs-common/run b/abs/core/runit-scripts/runitscripts/services/nfs-common/run new file mode 100755 index 0000000..bf6c2a1 --- /dev/null +++ b/abs/core/runit-scripts/runitscripts/services/nfs-common/run @@ -0,0 +1,81 @@ +#!/bin/bash +exec 2>&1 +export TERM=linux +daemon_name=nfs-common +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/$daemon_name.conf + + +# rpc.statd daemon & binary location +STATD_DAEMON_NAME=rpc.statd +STATD="/usr/sbin/rpc.statd" + +# rpc.idmapd daemon & binary location +IDMAPD_DAEMON_NAME=rpc.idmapd +IDMAPD="/usr/sbin/rpc.idmapd" + +# rpc.gssd daemon & binary location +GSSD_DAEMON_NAME=rpc.gssd +GSSD="/usr/sbin/rpc.gssd" + + +# Default mountpoint and options for rpc_pipefs filesystem +[ -z "$PIPEFS_MOUNTPOINT" ] && PIPEFS_MOUNTPOINT="/var/lib/nfs/rpc_pipefs" +[ -z "$PIPEFS_MOUNTOPTS" ] && PIPEFS_MOUNTOPTS="defaults" + + + +do_modprobe() { + if [ -x /sbin/modprobe -a -f /proc/modules ]; then + modprobe -q "$1" || true + fi +} + +do_mount() { + if ! grep -E "$1\$" /proc/filesystems &> /dev/null ; then + return 1 + fi + + if grep -vw "$1" /proc/mounts &> /dev/null ; then + if ! mountpoint -q "$2" ; then + mount -t "$1" "$1" "$2" -o "$3" + return + fi + fi + return 0 +} + +do_umount() { + if mountpoint -q "$1" ; then + umount "$1" + fi + return 0 +} + +get_pid() { + pidof -o %PPID "$1" +} + + + + + + +stat_runit "Starting $daemon_name" +svwaitup rpcbind >/dev/null 2>/dev/null +/usr/sbin/sm-notify $SMNOTIFY_OPTS +do_modprobe sunrpc +do_modprobe nfs +do_modprobe nfsd +do_mount rpc_pipefs "$PIPEFS_MOUNTPOINT" "$PIPEFS_MOUNTOPTS" + + +stat_runit "Starting $IDMAPD_DAEMON_NAME" +$IDMAPD + +stat_runit "Starting $GSSD_DAEMON_NAME" +do_modprobe rpcsec_gss_krb5 +$GSSD + +$STATD -F diff --git a/abs/core/runit-scripts/runitscripts/services/nfsd/run b/abs/core/runit-scripts/runitscripts/services/nfsd/run index 207d7cd..f043143 100755 --- a/abs/core/runit-scripts/runitscripts/services/nfsd/run +++ b/abs/core/runit-scripts/runitscripts/services/nfsd/run @@ -7,23 +7,64 @@ stat_runit "Starting NFSD" # Make sure the statd daemon is up # (the statd service must ensure portmap is running first) -svwaitup /var/service/nfslock >/dev/null 2>/dev/null +svwaitup /var/service/nfs-common >/dev/null 2>/dev/null + +source /etc/conf.d/nfs-server.conf + +NFSD="/usr/sbin/rpc.nfsd" + + + +# Default number of nfsd servers +[ -z "$NFSD_COUNT" ] && NFSD_COUNT=8 + +# Default mountpoint and options for nfsd filesystem +[ -z "$PROCNFSD_MOUNTPOINT" ] && PROCNFSD_MOUNTPOINT="/proc/fs/nfsd" +[ -z "$PROCNFSD_MOUNTOPTS" ] && PROCNFSD_MOUNTOPTS="rw,nodev,noexec,nosuid" + +do_modprobe() { + if [ -x /sbin/modprobe -a -f /proc/modules ]; then + modprobe -q "$1" || true + fi +} + + + +do_mount() { + if ! grep -E "$1\$" /proc/filesystems &> /dev/null ; then + return 1 + fi + + if grep -vw "$1" /proc/mounts &> /dev/null ; then + if ! mountpoint -q "$2" ; then + mount -t "$1" "$1" "$2" -o "$3" + return + fi + fi + return 0 +} + +do_umount() { + if mountpoint -q "$1" ; then + umount "$1" + fi + return 0 +} + -source /etc/conf.d/nfs -# Re-export all directories in /etc/exports -/usr/sbin/exportfs -ra > /dev/null 2>/dev/null # start some nfsd threads printhl " Using ${NFSD_OPTS} " -/usr/sbin/rpc.nfsd ${NFSD_OPTS} >/dev/null 2>/dev/null +do_modprobe nfsd +do_mount nfsd "$PROCNFSD_MOUNTPOINT" "$PROCNFSD_MOUNTOPTS" + +# Re-export all directories in /etc/exports +/usr/sbin/exportfs -ra > /dev/null 2>/dev/null -# since we are running kernel 2.6 we should also -# mount the nfsd virtual filesystem -printhl " mount nfsd" -/bin/mount -t nfsd none /proc/fs/nfsd >/dev/null 2>/dev/null + $NFSD $NFSD_OPTS $NFSD_COUNT -# Start the rpc.mountd daemon -exec /usr/sbin/rpc.mountd --foreground >/dev/null 2>/dev/null +# +exec /usr/sbin/rpc.mountd --foreground >/dev/null 2>/dev/null diff --git a/abs/core/runit-scripts/runitscripts/services/rpcbind/run b/abs/core/runit-scripts/runitscripts/services/rpcbind/run new file mode 100755 index 0000000..86a961b --- /dev/null +++ b/abs/core/runit-scripts/runitscripts/services/rpcbind/run @@ -0,0 +1,7 @@ +#!/bin/sh +exec 2>&1 +export TERM=linux +. /etc/rc.conf +. /etc/rc.d/functions +stat_runit "Starting rpc.bind" +exec /usr/bin/rpcbind -d -- cgit v0.12 From a3823515f7d144339c81b2454033ed7a0696e55c Mon Sep 17 00:00:00 2001 From: James Meyer Date: Mon, 13 Dec 2010 01:15:23 +0000 Subject: linhes-config: update hostype to nfs4 pkg's --- abs/core/LinHES-config/PKGBUILD | 37 +++++++++++++++++++++++++++++++++++- abs/core/LinHES-config/mv_hostype.py | 16 ++++++++-------- 2 files changed, 44 insertions(+), 9 deletions(-) diff --git a/abs/core/LinHES-config/PKGBUILD b/abs/core/LinHES-config/PKGBUILD index 11e2b17..9d6f05c 100644 --- a/abs/core/LinHES-config/PKGBUILD +++ b/abs/core/LinHES-config/PKGBUILD @@ -1,6 +1,6 @@ pkgname=LinHES-config pkgver=2.2 -pkgrel=13 +pkgrel=14 conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev LinHes-config ) pkgdesc="Install and configure your system" depends=('bc' 'libstatgrab' 'mysql-python' 'expect' 'curl' 'dnsutils' 'parted' @@ -206,3 +206,38 @@ md5sums=('0f2d8f75fa96f9a1acbdca582560e889' '2f3de6bf907a04dcdcfe4f1418721b60' '2596460462cf6c889cf8f95485537b20' 'a63ff9ef5250965aeabc74bfa8e43981') +md5sums=('0f2d8f75fa96f9a1acbdca582560e889' + '1a4694fcd694b362c339bda781ed0f3e' + 'e36da536dd651ef182e7642337889e77' + '985891a43f7c4c983eb2a362162f1a0f' + 'd7a8cd4a0060399ae22e69f74e04eb07' + '7a45287a07145fde5aa664583d4f6fba' + 'f88d2fb88339a4bf8ec9217a3fbcdef7' + '8ac1cfd2eca0f641737da0d0aca416a7' + '9ae8d79f620c6d19973c55c32a921874' + '4620f6f498ef4523398635cb0bd59425' + 'bf32873c56d04c45ff0682f4e345e517' + 'e459ed069317bccb20351f037a9df3d2' + '22c5e24bf87ad94ee2244d9016a0eea2' + '6aff504ed5e860adc1b7317cd0780900' + '55fccb1da0417a896b724f7cfc32dd5a' + 'ab2aa42c2947148c2b1cac0ade6d1d55' + 'd429b59d3cfb37b0624c6a4a71a7c2c0' + 'a225143e3df6f56d451c2875e54ddbae' + '9151c74fcaf18ec4cf5e757cfdbc7017' + '3d1e4a119f38cff0498bf8a67e94e4b3' + '5b41cfc6f4ad5cdbcd28cf980110f135' + 'ee7c8e1f025ce1527ecfffabafb26806' + '41b03fb1e0a9d9ae7588e3b813212772' + 'a9ffe72c3ede99d505fdc97572a7c256' + 'df43bce1712320508d4eef8449c5d223' + '65d93f15ac85adf8299552581789a731' + '4badc3c664c55f87396a473e6c14d4bc' + '36f5953944f98c50c0212a584996028e' + 'fe5e31b833cc6707209e9d656b6eb53c' + 'f0988a801216b44c96bf17e24a23e3a9' + '23d0e12b7ca1cc6ea6b993c1d7ff20b9' + '40d1ffb2ae8b14f242063e4121950d80' + '2f3de6bf907a04dcdcfe4f1418721b60' + '2596460462cf6c889cf8f95485537b20' + 'a63ff9ef5250965aeabc74bfa8e43981') diff --git a/abs/core/LinHES-config/mv_hostype.py b/abs/core/LinHES-config/mv_hostype.py index 4eade73..1a108af 100755 --- a/abs/core/LinHES-config/mv_hostype.py +++ b/abs/core/LinHES-config/mv_hostype.py @@ -143,8 +143,8 @@ def hostypeprint(systemconfig): run_mysqlnetwork = True if systemconfig["hostypec"]: setup_db() - install_list=["mysql", "mythdb-initial", "avahi", "portmap", "nfs-utils", "local-website", "myth2ipod", "mythtv-status"] - daemon_list=["mysql", "mythbackend", "avahi", "portmap", "nfs-utils", "netfs", "lighttpd"] + install_list=["mysql", "mythdb-initial", "avahi", "rpcbind", "nfs-utils", "local-website", "myth2ipod", "mythtv-status"] + daemon_list=["mysql", "mythbackend", "avahi", "rpcbind", "nfs-common", "netfs", "lighttpd"] if data_config.SYSTEMTYPE == "MythVantage": install_list.append('ghosd') @@ -152,8 +152,8 @@ def hostypeprint(systemconfig): logging.info("Master backend system being configured") setup_ntp(False,"null") setup_avahi(systemconfig["TEMPLATES"]) - install_list=["mysql", "mythdb-initial", "avahi", "portmap", "nfs-utils", "local-website", "myth2ipod", "mythtv-status"] - daemon_list=["mysql", "mythbackend", "avahi", "portmap", "nfs-utils", "netfs", "lighttpd"] + install_list=["mysql", "mythdb-initial", "avahi", "rpcbind", "nfs-utils", "local-website", "myth2ipod", "mythtv-status"] + daemon_list=["mysql", "mythbackend", "avahi", "rpcbind", "nfs-common", "netfs", "lighttpd"] EnableNetwork = True run_mysqlnetwork = True if data_config.SYSTEMTYPE == "MythVantage": @@ -169,8 +169,8 @@ def hostypeprint(systemconfig): remove_avahi_service() if systemconfig["hostypec"]: setup_db() - install_list = ["portmap", "nfs-utils", "local-website", "avahi", "libmysqlclient" ] - daemon_list = ["mythbackend", "portmap", "nfs-utils", "netfs", "lighttpd", "avahi" ] + install_list = ["rpcbind", "nfs-utils", "local-website", "avahi", "libmysqlclient" ] + daemon_list = ["mythbackend", "rpcbind", "nfs-common", "netfs", "lighttpd", "avahi" ] daemon_remove_list=('mysql') if data_config.SYSTEMTYPE == "MythVantage": install_list.remove("local-website") @@ -185,9 +185,9 @@ def hostypeprint(systemconfig): logging.info("Frontend only system being configured") setup_ntp(True,systemconfig["dbhost"]) remove_avahi_service() - install_list=["mysql-clients", "libmysqlclient", "avahi", "portmap", "nfs-utils", "local-website"] + install_list=["mysql-clients", "libmysqlclient", "avahi", "rpcbind", "nfs-utils", "local-website"] remove_list=["mysql"] - daemon_list=["mysql", "mythbackend", "avahi", "portmap", "nfs-utils", "netfs", "lighttpd"] + daemon_list=["mysql", "mythbackend", "avahi", "rpcbind", "nfs-common", "netfs", "lighttpd"] daemon_remove_list=("mysql", "mythbackend") if data_config.SYSTEMTYPE == "MythVantage": install_list.remove("local-website") -- cgit v0.12