X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Ftests%2Fsetup-nfs.sh;h=fa497fbeafecfa1d7125a6f99524b74c8e98b486;hb=68dd8a8acff9ad2295a1fcba318fc8ed5f140026;hp=7863d407c92e34a4563409a29fc0720eeea61516;hpb=5d37670e8507563db556879041c7992936aefa56;p=fs%2Flustre-release.git diff --git a/lustre/tests/setup-nfs.sh b/lustre/tests/setup-nfs.sh index 7863d40..fa497fb 100755 --- a/lustre/tests/setup-nfs.sh +++ b/lustre/tests/setup-nfs.sh @@ -3,10 +3,12 @@ EXPORT_OPTS=${EXPORT_OPTS:-"rw,async,no_root_squash"} setup_nfs() { - local NFS_VER=${1} - local MNTPNT=${2} - local LUSTRE_CLIENT=${3} - local NFS_CLIENTS=${4} + local NFS_VER=${1} + local MNTPNT=${2} + local LUSTRE_CLIENT=${3} + local NFS_CLIENTS=${4} + local nfs_climntpt=${5:-$MNTPNT} + local export_opts_v=$EXPORT_OPTS echo "Exporting Lustre filesystem..." @@ -21,41 +23,51 @@ setup_nfs() { mount -t rpc_pipefs sunrpc /var/lib/nfs/rpc_pipefs; }" || return 1 sleep 5 - do_nodes $LUSTRE_CLIENT "service nfs restart" || return 1 + do_nodes $LUSTRE_CLIENT "echo $MNTPNT *\($export_opts_v\) \ + >> /etc/exports" || return 1 - do_nodes $NFS_CLIENTS "service rpcidmapd restart" || return 1 + # restart nfs server according to distro + do_nodes $LUSTRE_CLIENT "{ [[ -e /etc/SuSE-release ]] && + service nfsserver restart; } || + service nfs restart" || return 1 - do_nodes $LUSTRE_CLIENT "exportfs -o $export_opts_v *:$MNTPNT \ - && exportfs -v" || return 1 + do_nodes $NFS_CLIENTS "chkconfig --list rpcidmapd 2>/dev/null | + grep -q rpcidmapd && service rpcidmapd restart || + true" - echo -e "\nMounting NFS clients (version $NFS_VER)..." + echo -e "\nMounting NFS clients (version $NFS_VER)..." - do_nodes $NFS_CLIENTS "mkdir -p $MNTPNT" || return 1 - if [ "$NFS_VER" = "4" ]; then - do_nodes $NFS_CLIENTS \ - "mount -t nfs$NFS_VER -o async $LUSTRE_CLIENT:/ $MNTPNT" || return 1 - else - do_nodes $NFS_CLIENTS \ - "mount -t nfs -o nfsvers=$NFS_VER,async \ - $LUSTRE_CLIENT:$MNTPNT $MNTPNT" || return 1 - fi - return 0 + do_nodes $NFS_CLIENTS "mkdir -p $nfs_climntpt" || return 1 + if [ "$NFS_VER" = "4" ]; then + do_nodes $NFS_CLIENTS \ + "mount -t nfs$NFS_VER -o async \ + $LUSTRE_CLIENT:/ $nfs_climntpt" || return 1 + else + do_nodes $NFS_CLIENTS \ + "mount -t nfs -o nfsvers=$NFS_VER,async \ + $LUSTRE_CLIENT:$MNTPNT $nfs_climntpt" || return 1 + fi + return 0 } cleanup_nfs() { - local MNTPNT=${1} - local LUSTRE_CLIENT=${2} - local NFS_CLIENTS=${3} + local MNTPNT=${1} + local LUSTRE_CLIENT=${2} + local NFS_CLIENTS=${3} - echo -e "\nUnmounting NFS clients..." - do_nodes $NFS_CLIENTS "umount -f $MNTPNT" || return 1 + echo -e "\nUnmounting NFS clients..." + do_nodes $NFS_CLIENTS "umount -f $MNTPNT" || true - echo -e "\nUnexporting Lustre filesystem..." - do_nodes $NFS_CLIENTS "service rpcidmapd stop" || return 1 + echo -e "\nUnexporting Lustre filesystem..." + do_nodes $NFS_CLIENTS "chkconfig --list rpcidmapd 2>/dev/null | + grep -q rpcidmapd && service rpcidmapd stop || + true" - do_nodes $LUSTRE_CLIENT "service nfs stop" || return 1 + do_nodes $LUSTRE_CLIENT "{ [[ -e /etc/SuSE-release ]] && + service nfsserver stop; } || + service nfs stop" || return 1 - do_nodes $LUSTRE_CLIENT "exportfs -u *:$MNTPNT" || return 1 + do_nodes $LUSTRE_CLIENT "sed -i '/${MNTPNT##*/}/d' /etc/exports" || return 1 - do_nodes $LUSTRE_CLIENT "exportfs -v" + do_nodes $LUSTRE_CLIENT "exportfs -v" }