From: Kinglong Mee <kinglongmee@gmail.com>
To: Eino Juhani Oltedal <e.j.oltedal@fys.uio.no>, linux-nfs@vger.kernel.org
Subject: Re: Problem installing nfs-utils to non standard dir
Date: Wed, 15 Apr 2015 23:41:28 +0800 [thread overview]
Message-ID: <552E86A8.6080506@gmail.com> (raw)
In-Reply-To: <552E3508.5000403@fys.uio.no>
On 4/15/2015 5:53 PM, Eino Juhani Oltedal wrote:
> Hi!
>
> I'm trying to build nfs from source. I'm using nfs-utils-1.3.2 from http://sourceforge.net/projects/nfs/files/nfs-utils/1.3.2/.
> I configure using the following command
>
> ./configure --prefix=/home/username/installs/tmp --exec-prefix=/home/username/installs/tmp
>
> When i run "make install" most of the packages are put under /home/username/installs/tmp, but for some reason the
> install script tries to put osd_login under /sbin, which results in an error:
>
> Making install in osd_login
> make[2]: Entering directory `/home/username/installs/nfs-utils-1.3.2/utils/osd_login'
> make[3]: Entering directory `/home/username/installs/nfs-utils-1.3.2/utils/osd_login'
> /usr/bin/mkdir -p '/sbin'
> /usr/bin/install -c osd_login '/sbin'
> /usr/bin/install: cannot remove ‘/sbin/osd_login’: Permission denied
> make[3]: *** [install-dist_sbinSCRIPTS] Error 1
>
> This is not supposed to happen, is it?
No, it is.
There are three utils (mount.nfs/mount.nfs4, nfsdcltrack and osd_login)
must be installed in directory /sbin/, they are hard-coded.
> Is there an easy way to fix it? I get the same error trying to build nfs-utils-1.3.1 as well.
No, they are must installed in /sbin/ for kernel module nfsd.ko needing
/sbin/nfsdcltrack and objlayoutdriver.ko needing /sbin/osd_login.
You can not skip this problem with recently source.
if you are hurry, you can avoid this problem with the following patch and configure as,
# ./configure --disable-mount --disable-nfsdcltrack --disable-osdlogin --prefix=/root/test --exec-prefix=/root/test/
Ps: It is just a draft made by diff. I will send some patches for this problem.
thanks,
Kinglong Mee
===================================================================
diff --git a/configure.ac b/configure.ac
index e61430f..294e7a3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -213,9 +213,16 @@ fi
AC_ARG_ENABLE(nfsdcltrack,
[AC_HELP_STRING([--disable-nfsdcltrack],
[disable NFSv4 clientid tracking programs @<:@default=no@:>@])],
- enable_nfsdctrack=$enableval,
+ enable_nfsdcltrack=$enableval,
enable_nfsdcltrack="yes")
+AC_ARG_ENABLE(osdlogin,
+ [AC_HELP_STRING([--disable-osdlogin],
+ [disable osd_login scripts @<:@default=no@:>@])],
+ enable_osdlogin=$enableval,
+ enable_osdlogin="yes")
+ AM_CONDITIONAL(CONFIG_OSD_LOGIN, [test "$enable_osdlogin" = "yes" ])
+
dnl Check for TI-RPC library and headers
AC_LIBTIRPC
@@ -346,7 +353,7 @@ AC_SUBST(LIBBSD)
AC_SUBST(LIBBLKID)
AC_SUBST(LIBDL)
-if test "$enable_libmount" != no; then
+if test "$enable_libmount" = yes; then
AC_CHECK_LIB(mount, mnt_context_do_mount, [LIBMOUNT="-lmount"], AC_MSG_ERROR([libmount needed]))
AC_CHECK_HEADER(libmount/libmount.h, , AC_MSG_ERROR([Cannot find libmount header file libmount/libmount.h]))
fi
diff --git a/utils/Makefile.am b/utils/Makefile.am
index b892dc8..6dd4a57 100644
--- a/utils/Makefile.am
+++ b/utils/Makefile.am
@@ -25,6 +25,10 @@ if CONFIG_NFSDCLTRACK
OPTDIRS += nfsdcltrack
endif
+if CONFIG_OSD_LOGIN
+OPTDIRS += osd_login
+endif
+
SUBDIRS = \
exportfs \
mountd \
@@ -32,7 +36,6 @@ SUBDIRS = \
nfsstat \
showmount \
statd \
- osd_login \
$(OPTDIRS)
MAINTAINERCLEANFILES = Makefile.in
next prev parent reply other threads:[~2015-04-15 15:41 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-15 9:53 Problem installing nfs-utils to non standard dir Eino Juhani Oltedal
2015-04-15 15:41 ` Kinglong Mee [this message]
2015-04-15 17:18 ` Eino Juhani Oltedal
2015-04-16 4:43 ` Kinglong Mee
2015-04-16 9:40 ` Eino Juhani Oltedal
2015-04-16 12:45 ` Kinglong Mee
2015-04-16 14:00 ` Eino Juhani Oltedal
2015-04-16 15:53 ` Kinglong Mee
2015-04-16 15:59 ` Eino Juhani Oltedal
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=552E86A8.6080506@gmail.com \
--to=kinglongmee@gmail.com \
--cc=e.j.oltedal@fys.uio.no \
--cc=linux-nfs@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.