Re: [PATCH 6/7] split nfs rpc daemons startup script

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 02.02.2012 09:00, schrieb Dave Young:
> fstab-sys will mount nonroot nfs as well, so we need to split the necessary
> code from nfsroot to start rpc daemon as hook script.
> 
> Signed-off-by: Dave Young <dyoung@xxxxxxxxxx>
> ---
>  modules.d/95nfs/module-setup.sh  |    1 +
>  modules.d/95nfs/nfs-start-rpc.sh |   17 +++++++++++++++++
>  modules.d/95nfs/nfsroot          |   15 ---------------
>  3 files changed, 18 insertions(+), 15 deletions(-)
> 
> Index: dracut/modules.d/95nfs/module-setup.sh
> ===================================================================
> --- dracut.orig/modules.d/95nfs/module-setup.sh
> +++ dracut/modules.d/95nfs/module-setup.sh
> @@ -57,6 +57,7 @@ install() {
>      dracut_install $(for _i in $(ls {/usr,}$libdir/libnss*.so 2>/dev/null); do echo $_i;done | egrep "$_nsslibs")
>  
>      inst_hook cmdline 90 "$moddir/parse-nfsroot.sh"
> +    inst_hook pre-udev 99 "$moddir/nfs-start-rpc.sh"
>      inst_hook pre-pivot 99 "$moddir/nfsroot-cleanup.sh"
>      inst "$moddir/nfsroot" "/sbin/nfsroot"
>      mkdir -m 0755 -p "$initdir/var/lib/nfs/rpc_pipefs"
> Index: dracut/modules.d/95nfs/nfs-start-rpc.sh
> ===================================================================
> diff --git a/modules.d/95nfs/nfs-start-rpc.sh b/modules.d/95nfs/nfs-start-rpc.sh
> new file mode 100755
> --- /dev/null
> +++ dracut/modules.d/95nfs/nfs-start-rpc.sh
> @@ -0,0 +1,17 @@
> +#!/bin/sh
> +# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
> +# ex: ts=8 sw=4 sts=4 et filetype=sh
> +
> +# Start rpcbind or rpcbind
> +# FIXME occasionally saw 'rpcbind: fork failed: No such device' -- why?
> +command -v portmap >/dev/null && [ -z "$(pidof portmap)" ] && portmap
> +command -v rpcbind >/dev/null && [ -z "$(pidof rpcbind)" ] && rpcbind
> +
> +[ ! -d /var/lib/nfs/rpc_pipefs/nfs ] && \
> +    mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs
> +
> +# Start rpc.statd as mount won't let us use locks on a NFSv4
> +# filesystem without talking to it. NFSv4 does locks internally,
> +# rpc.lockd isn't needed
> +[ -z "$(pidof rpc.statd)" ] && rpc.statd
> +[ -z "$(pidof rpc.idmapd)" ] && rpc.idmapd
> Index: dracut/modules.d/95nfs/nfsroot
> ===================================================================
> --- dracut.orig/modules.d/95nfs/nfsroot
> +++ dracut/modules.d/95nfs/nfsroot
> @@ -84,22 +84,7 @@ getarg rw && nfsrw=rw
>  
>  options=${options:+$options,}$nfsrw
>  
> -# Start rpcbind or rpcbind
> -# FIXME occasionally saw 'rpcbind: fork failed: No such device' -- why?
> -command -v portmap >/dev/null && [ -z "$(pidof portmap)" ] && portmap
> -command -v rpcbind >/dev/null && [ -z "$(pidof rpcbind)" ] && rpcbind
> -
>  if [ "$nfs" = "nfs4" ]; then
> -    [ ! -d /var/lib/nfs/rpc_pipefs/nfs ] && \
> -         mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs
> -
> -    # Start rpc.statd as mount won't let us use locks on a NFSv4
> -    # filesystem without talking to it. NFSv4 does locks internally,
> -    # rpc.lockd isn't needed
> -    [ -z "$(pidof rpc.statd)" ] && rpc.statd
> -
> -    [ -z "$(pidof rpc.idmapd)" ] && rpc.idmapd
> -
>      # XXX Should we loop here?
>      mount -t nfs4 -o$options${nfslock+,$nfslock} \
>          $server:$path $NEWROOT \
> --
> To unsubscribe from this list: send the line "unsubscribe initramfs" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

pushed
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux