Return-Path: Received: from mail-out4.uio.no ([129.240.10.15]:48692 "EHLO mail-out4.uio.no" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753443AbbDPJkk (ORCPT ); Thu, 16 Apr 2015 05:40:40 -0400 Message-ID: <552F8394.4070701@fys.uio.no> Date: Thu, 16 Apr 2015 11:40:36 +0200 From: Eino Juhani Oltedal MIME-Version: 1.0 To: Kinglong Mee , linux-nfs@vger.kernel.org Subject: Re: Problem installing nfs-utils to non standard dir References: <552E3508.5000403@fys.uio.no> <552E86A8.6080506@gmail.com> <552E9D80.1090003@fys.uio.no> <552F3DE2.4020603@gmail.com> In-Reply-To: <552F3DE2.4020603@gmail.com> Content-Type: text/plain; charset=utf-8; format=flowed Sender: linux-nfs-owner@vger.kernel.org List-ID: The arm machine does not have rpcinfo. On the server i get this: rpcinfo -p program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100024 1 udp 43663 status 100005 1 udp 20048 mountd 100024 1 tcp 39197 status 100005 1 tcp 20048 mountd 100005 2 udp 20048 mountd 100005 2 tcp 20048 mountd 100005 3 udp 20048 mountd 100005 3 tcp 20048 mountd 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 3 tcp 2049 nfs_acl 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 3 udp 2049 nfs_acl 100021 1 udp 55946 nlockmgr 100021 3 udp 55946 nlockmgr 100021 4 udp 55946 nlockmgr 100021 1 tcp 57551 nlockmgr 100021 3 tcp 57551 nlockmgr 100021 4 tcp 57551 nlockmgr My /etc/exports: /share/ 192.168.0.0/24(rw,fsid=0,no_subtree_check) /share/test 192.168.0.0/24(rw,no_subtree_check,nohide) I am able to mount the nfs share on a third computer, but not on the arm computer that uses my build. Thanks, Eino On 04/16/2015 06:43 AM, Kinglong Mee wrote: > On 4/16/2015 1:18 AM, Eino Juhani Oltedal wrote: >> 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 > Can you show me the rpcinfo messages, and exports entry? > # rpcinfo -p > # cat /etc/exports > # exportfs > > thanks > Kinglong Mee > >> 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 >>