From: Harald Hoyer <harald-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Dave Young <dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Subject: Re: [PATCH 6/7] split nfs rpc daemons startup script
Date: Tue, 07 Feb 2012 12:15:44 +0100 [thread overview]
Message-ID: <4F3107E0.1060205@redhat.com> (raw)
In-Reply-To: <20120202080007.GA12420-4/PLUo9XfK+sDdueE5tM26fLeoKvNuZc@public.gmane.org>
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-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
> ---
> 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-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
pushed
prev parent reply other threads:[~2012-02-07 11:15 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-02 8:00 [PATCH 6/7] split nfs rpc daemons startup script Dave Young
[not found] ` <20120202080007.GA12420-4/PLUo9XfK+sDdueE5tM26fLeoKvNuZc@public.gmane.org>
2012-02-07 11:15 ` Harald Hoyer [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F3107E0.1060205@redhat.com \
--to=harald-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=initramfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=xiyou.wangcong-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox