All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eino Juhani Oltedal <e.j.oltedal@fys.uio.no>
To: Kinglong Mee <kinglongmee@gmail.com>, linux-nfs@vger.kernel.org
Subject: Re: Problem installing nfs-utils to non standard dir
Date: Wed, 15 Apr 2015 19:18:56 +0200	[thread overview]
Message-ID: <552E9D80.1090003@fys.uio.no> (raw)
In-Reply-To: <552E86A8.6080506@gmail.com>

Thank you for the help. I was able to avoid the error by using make 
DESTDIR=${HOME}/installs/arm
instead of the prefix. Then i copied everything  under 
${HOME}/installs/arm over to the root of the
ARM file-system.

However when trying to use the newly built nfs I get some errors:

mount -t nfs 192.168.0.104:/test /mnt
     mount.nfs: rpc.statd is not running but is required for remote locking.
     mount.nfs: Either use '-o nolock' to keep locks local, or start statd.
     mount.nfs: an incorrect mount option was specified

mount -t nfs -o nolock 192.168.0.104:/test /mnt
     mount.nfs: Protocol not supported


showmount also gives an error:
     showmount -e 192.168.0.104
     clnt_create: RPC: Unknown protocol

I compiled nfs using this command:

     cd ~/installs/util-linux-2.26.1
     ./configure --host=arm-linux-gnueabihf --build=x86_64-linux 
--disable-gss --disable-nfsv4 CC=arm-linux-gnueabihf-gcc 
CPPFLAGS="-I${HOME}/installs/arm/include, 
-I${HOME}/installs/arm/usr/include" 
LDFLAGS="-L${HOME}/installs/arm/lib/, -L${HOME}/installs/arm/usr/lib/"
     make
     make DESTDIR=${HOME}/installs/arm install

I compiled the dependencies libblkid and libtirpc with the following 
commands:

     cd ~/installs/util-linux-2.26.1
     ./configure --host=arm-linux-gnueabihf --disable-all-programs 
--enable-libblkid --build=x86_64-linux CC=arm-linux-gnueabihf-gcc
     make
     make DESTDIR=${HOME}/installs/arm install

     cd ~/installs/libtirpc-0.2.5
     ./configure  --host=arm-linux-gnueabihf --build=x86_64-linux 
--disable-gssapi CC=arm-linux-gnueabihf-gcc
     make
     make DESTDIR=${HOME}/installs/arm install

Here is my build file tree:

$HOME/installs/arm
├── bin
├── lib
│   ├── libblkid.so.1 -> libblkid.so.1.1.0
│   └── libblkid.so.1.1.0
├── sbin
│   ├── mount.nfs
│   ├── mount.nfs4 -> mount.nfs
│   ├── osd_login
│   ├── umount.nfs -> mount.nfs
│   └── umount.nfs4 -> mount.nfs
├── usr
│   ├── bin
│   ├── etc
│   │   └── netconfig
│   ├── include
│   │   ├── blkid
│   │   │   └── blkid.h
│   │   └── tirpc
│   │       ├── netconfig.h
│   │       ├── rpc
│   │       │   ├── auth_des.h
│   │       │   ├── auth_gss.h
│   │       │   ├── auth.h
│   │       │   ├── auth_kerb.h
│   │       │   ├── auth_unix.h
│   │       │   ├── clnt.h
│   │       │   ├── clnt_soc.h
│   │       │   ├── clnt_stat.h
│   │       │   ├── des_crypt.h
│   │       │   ├── des.h
│   │       │   ├── nettype.h
│   │       │   ├── pmap_clnt.h
│   │       │   ├── pmap_prot.h
│   │       │   ├── pmap_rmt.h
│   │       │   ├── raw.h
│   │       │   ├── rpcb_clnt.h
│   │       │   ├── rpcb_prot.h
│   │       │   ├── rpcb_prot.x
│   │       │   ├── rpc_com.h
│   │       │   ├── rpcent.h
│   │       │   ├── rpc.h
│   │       │   ├── rpc_msg.h
│   │       │   ├── svc_auth.h
│   │       │   ├── svc_dg.h
│   │       │   ├── svc.h
│   │       │   ├── svc_soc.h
│   │       │   ├── types.h
│   │       │   └── xdr.h
│   │       └── rpcsvc
│   │           ├── crypt.h
│   │           └── crypt.x
│   ├── lib
│   │   ├── libblkid.a
│   │   ├── libblkid.la
│   │   ├── libblkid.so -> ../../lib/libblkid.so.1.1.0
│   │   ├── libtirpc.a
│   │   ├── libtirpc.la
│   │   ├── libtirpc.so -> libtirpc.so.1.0.10
│   │   ├── libtirpc.so.1 -> libtirpc.so.1.0.10
│   │   ├── libtirpc.so.1.0.10
│   │   ├── pkgconfig
│   │   │   ├── blkid.pc
│   │   │   └── libtirpc.pc
│   │   └── systemd
│   │       └── system
│   ├── sbin
│   │   ├── exportfs
│   │   ├── mountstats
│   │   ├── nfsiostat
│   │   ├── nfsstat
│   │   ├── rpcdebug
│   │   ├── rpc.mountd
│   │   ├── rpc.nfsd
│   │   ├── rpc.statd
│   │   ├── showmount
│   │   ├── sm-notify
│   │   └── start-statd
│   └── share
│       ├── bash-completion
│       │   └── completions
│       ├── locale
│       │   ├── ca
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── cs
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── da
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── de
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── es
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── et
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── eu
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── fi
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── fr
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── gl
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── hr
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── hu
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── id
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── it
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── ja
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── nl
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── pl
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── pt_BR
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── ru
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── sl
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── sv
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── tr
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── uk
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── vi
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   ├── zh_CN
│       │   │   └── LC_MESSAGES
│       │   │       └── util-linux.mo
│       │   └── zh_TW
│       │       └── LC_MESSAGES
│       │           └── util-linux.mo
│       └── man
│           ├── man1
│           ├── man3
│           │   ├── bindresvport.3t
│           │   ├── des_crypt.3t
│           │   ├── getnetconfig.3t
│           │   ├── getnetpath.3t
│           │   ├── getrpcent.3t
│           │   ├── getrpcport.3t
│           │   ├── libblkid.3
│           │   ├── rpc.3t
│           │   ├── rpcbind.3t
│           │   ├── rpc_clnt_auth.3t
│           │   ├── rpc_clnt_calls.3t
│           │   ├── rpc_clnt_create.3t
│           │   ├── rpc_secure.3t
│           │   ├── rpc_soc.3t
│           │   ├── rpc_svc_calls.3t
│           │   ├── rpc_svc_create.3t
│           │   ├── rpc_svc_err.3t
│           │   ├── rpc_svc_reg.3t
│           │   ├── rpc_xdr.3t
│           │   └── rtime.3t
│           ├── man5
│           │   ├── exports.5
│           │   ├── netconfig.5
│           │   ├── nfs.5
│           │   ├── nfsmount.conf.5
│           │   └── terminal-colors.d.5
│           ├── man7
│           │   └── nfsd.7
│           └── man8
│               ├── exportfs.8
│               ├── mountd.8
│               ├── mount.nfs.8
│               ├── mountstats.8
│               ├── nfsd.8
│               ├── nfsiostat.8
│               ├── nfsstat.8
│               ├── rpcdebug.8
│               ├── rpc.mountd.8 -> mountd.8
│               ├── rpc.nfsd.8 -> nfsd.8
│               ├── rpc.sm-notify.8 -> sm-notify.8
│               ├── rpc.statd.8 -> statd.8
│               ├── showmount.8
│               ├── sm-notify.8
│               ├── statd.8
│               └── umount.nfs.8
└── var
     └── lib
         └── nfs
             ├── etab
             ├── rmtab
             ├── sm
             ├── sm.bak
             ├── state
             └── xtab


Do you have any idea what's missing? Maybe some dependencies?

Cheers,
Eino

On 04/15/2015 05:41 PM, Kinglong Mee wrote:
> 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


  reply	other threads:[~2015-04-15 17:18 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
2015-04-15 17:18   ` Eino Juhani Oltedal [this message]
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=552E9D80.1090003@fys.uio.no \
    --to=e.j.oltedal@fys.uio.no \
    --cc=kinglongmee@gmail.com \
    --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.