SCIENTIFIC-LINUX-USERS Archives

May 2012

SCIENTIFIC-LINUX-USERS@LISTSERV.FNAL.GOV

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Reply To:
Date:
Fri, 4 May 2012 00:39:36 +0900
Content-Type:
text/plain
Parts/Attachments:
text/plain (312 lines)
On 05/04/2012 12:11 AM, Bob Goodwin - Zuni, Virginia, USA wrote:
> On 03/05/12 10:49, zxq9 wrote:
>> On 05/03/2012 11:34 PM, Bob Goodwin - Zuni, Virginia, USA wrote:
>>> Can someone suggest a clear instruction for setting up an NSF4
>>> server on SL6.2/64, preferably with an example.
>>>
>>> I have NFS3 working on SL5 but haven't been able to get this new
>>> one working ...
>>
>> Does it need anything nifty happening, like mounting under a specific
>> SELinux context or using krb5, etc?
>>
>
> I normally keep Selinux active but other than that it's just a
> local file server on our home LAN, normally accessed from OSX
> and Fedora boxes.
>
> The SL5 server has been tuning continuously for a couple of
> years without ever missing a beat! I've just built up a
> replacement which I hope will do as well.
>
> Bob
>
> .
>

I just blew through this. Here is a log including some file dumps which 
will hopefully be relevant to you.

I might have a few things set differently than you that make this work 
great or totally trip you up -- so take the following with a grain 
(shaker?) of salt. Also, I have Kerberos and LDAP running so name 
resolution happens that way -- NFS uid/gid resolution is a little world 
of its own.

Also, I normally use automount for nearly everything instead of adding 
the NFS mount to /etc/fstab as shown below. There are some great 
tutorials out there on that, but if you're confused let us know -- 
either way you probably won't notice on a home server.

--begin giant dump of stuff--


[root@services etc]# yum install nfs-utils
[root@services etc]# cd /var
[root@services var]# mkdir exphome
[root@services var]# cd /mnt
[root@services mnt]# mkdir /mnt/export/home
[root@services mnt]# echo "/var/exphome /mnt/export/home none bind 0 0" 
 >> /etc/fstab
[root@services mnt]# mount -a
[root@services var]# cd /etc
[root@services etc]# vim exports

#######################################FILE##########################################
/mnt/export       192.168.0.0/16(rw,fsid=0,insecure)
/mnt/export/home  192.168.0.0/16(rw,nohide,insecure)
#######################################FILE##########################################

[root@services etc]# vim idmapd.conf

#######################################FILE##########################################
[General]
Verbosity = 0
Pipefs-Directory = /var/lib/nfs/rpc_pipefs

# The following should be set to the local NFSv4 domain name
# The default is the host's DNS domain name.
Domain = services.mine

# The following is a comma-separated list of Kerberos realm
# names that should be considered to be equivalent to the
# local realm, such that <user>@REALM.A can be assumed to
# be the same user as <user>@REALM.B
# If not specified, the default local realm is the domain name,
# which defaults to the host's DNS domain name,
# translated to upper-case.
# Note that if this value is specified, the local realm name
# must be included in the list!
#Local-Realms =

[Mapping]

Nobody-User = nfsnobody
Nobody-Group = nfsnobody

[Translation]

# Translation Method is an comma-separated, ordered list of
# translation methods that can be used.  Distributed methods
# include "nsswitch", "umich_ldap", and "static".  Each method
# is a dynamically loadable plugin library.
# New methods may be defined and inserted in the list.
# The default is "nsswitch".
Method = nsswitch

# Optional.  This is a comma-separated, ordered list of
# translation methods to be used for translating GSS
# authenticated names to ids.
# If this option is omitted, the same methods as those
# specified in "Method" are used.
#GSS-Methods = <alternate method list for translating GSS names>

#-------------------------------------------------------------------#
# The following are used only for the "static" Translation Method.
#-------------------------------------------------------------------#
[Static]

# A "static" list of GSS-Authenticated names to
# local user name mappings

#someuser@REALM = localuser


#-------------------------------------------------------------------#
# The following are used only for the "umich_ldap" Translation Method.
#-------------------------------------------------------------------#

[UMICH_SCHEMA]

# server information (REQUIRED)
LDAP_server = ldap-server.local.domain.edu

# the default search base (REQUIRED)
LDAP_base = dc=local,dc=domain,dc=edu

#-----------------------------------------------------------#
# The remaining options have defaults (as shown)
# and are therefore not required.
#-----------------------------------------------------------#

# whether or not to perform canonicalization on the
# name given as LDAP_server
#LDAP_canonicalize_name = true

# absolute search base for (people) accounts
#LDAP_people_base = <LDAP_base>

# absolute search base for groups
#LDAP_group_base = <LDAP_base>

# Set to true to enable SSL - anything else is not enabled
#LDAP_use_ssl = false

# You must specify a CA certificate location if you enable SSL
#LDAP_ca_cert = /etc/ldapca.cert

# Objectclass mapping information

# Mapping for the person (account) object class
#NFSv4_person_objectclass = NFSv4RemotePerson

# Mapping for the nfsv4name attribute the person object
#NFSv4_name_attr = NFSv4Name

# Mapping for the UID number
#NFSv4_uid_attr = UIDNumber

# Mapping for the GSSAPI Principal name
#GSS_principal_attr = GSSAuthName

# Mapping for the account name attribute (usually uid)
# The value for this attribute must match the value of
# the group member attribute - NFSv4_member_attr
#NFSv4_acctname_attr = uid

# Mapping for the group object class
#NFSv4_group_objectclass = NFSv4RemoteGroup

# Mapping for the GID attribute
#NFSv4_gid_attr = GIDNumber

# Mapping for the Group NFSv4 name
#NFSv4_group_attr = NFSv4Name

# Mapping for the Group member attribute (usually memberUID)
# The value of this attribute must match the value of NFSv4_acctname_attr
#NFSv4_member_attr = memberUID
#######################################FILE##########################################

[root@services etc]# cd /etc/sysconfig
[root@services sysconfig]# vim nfs

#######################################FILE##########################################
SECURE_NFS="yes"
#
# Define which protocol versions mountd
# will advertise. The values are "no" or "yes"
# with yes being the default
MOUNTD_NFS_V1="no"
MOUNTD_NFS_V2="no"
MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
#RQUOTAD_PORT=875
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=32803
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=32769
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8.
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=892
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
STATD_PORT=662
# Outgoing port statd should used. The default is port
# is random
#STATD_OUTGOING_PORT=2020
# Specify callout program
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts.
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS=""
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS=""
#
######################################FILE##########################################

[root@services sysconfig]# iptables -vI INPUT -m tcp -p tcp --dport 2049 
-j ACCEPT
ACCEPT  tcp opt -- in * out *  0.0.0.0/0  -> 0.0.0.0/0  tcp dpt:2049

[root@services sysconfig]# iptables-save > /etc/sysconfig/iptables
[root@services sysconfig]# chkconfig nfs on
[root@services sysconfig]# service nfs start
Starting NFS services:                                     [  OK  ]
Starting NFS daemon: rpc.nfsd: writing fd to kernel failed: errno 111 
(Connection refused)
rpc.nfsd: unable to set any sockets for nfsd
                                                            [FAILED]
[root@services sysconfig]# service nfs stop
Shutting down NFS mountd:                                  [FAILED]
Shutting down NFS daemon:                                  [FAILED]
Shutting down NFS services:                                [  OK  ]
Shutting down RPC svcgssd:                                 [  OK  ]
[root@services sysconfig]# rpcinfo -p

rpcinfo: can't contact portmapper: RPC: Remote system error - No such 
file or directory
[root@services sysconfig]# service rpcbind status
rpcbind is stopped
[root@services sysconfig]# service rpcbind start
Starting rpcbind:                                          [  OK  ]
[root@services sysconfig]# service nfs start
Starting RPC svcgssd:                                      [  OK  ]
Starting NFS services:                                     [  OK  ]
Starting NFS daemon:                                       [  OK  ]
Starting NFS mountd:                                       [  OK  ]
Starting RPC idmapd:                                       [  OK  ]
[root@services sysconfig]# service nfs stop
Shutting down NFS mountd:                                  [  OK  ]
Shutting down NFS daemon:                                  [  OK  ]
Shutting down NFS services:                                [  OK  ]
Shutting down RPC svcgssd:                                 [  OK  ]
[root@services sysconfig]# service nfs start
Starting RPC svcgssd:                                      [  OK  ]
Starting NFS services:                                     [  OK  ]
Starting NFS daemon:                                       [  OK  ]
Starting NFS mountd:                                       [  OK  ]
[root@services sysconfig]# 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
     100003    4   tcp   2049  nfs
     100003    4   udp   2049  nfs
     100021    1   udp  32769  nlockmgr
     100021    3   udp  32769  nlockmgr
     100021    4   udp  32769  nlockmgr
     100021    1   tcp  32803  nlockmgr
     100021    3   tcp  32803  nlockmgr
     100021    4   tcp  32803  nlockmgr

[root@katsuo etc]# echo "services:/          /home/remote         nfs4 
     users   0 0" >> /etc/fstab

ATOM RSS1 RSS2