Проект переехал на новый домен!  [[ перейти ]]

NFS - Network File System (сетевая файловая система)
Для передачи файлов между двумя unix-овыми машинами.

В ядре:
#############################################################################
options         NFSCLIENT               # Network Filesystem Client
options         NFSSERVER               # Network Filesystem Server
options         NFS_ROOT                # NFS usable as /, requires NFSCLIENT
#############################################################################

Либо подргрузить модулями:
/boot/kernel/nfsclent.ko
/boot/kernel/nfsserver.ko

в /etc/defaults/rc.conf
######################################################################################
### Network daemon (NFS): All need rpcbind_enable="YES" ###
amd_enable="NO"                 # Run amd service with $amd_flags (or NO).
amd_program="/usr/sbin/amd"     # path to amd, if you want a different one.
amd_flags="-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map"
amd_map_program="NO"            # Can be set to "ypcat -k amd.master"
nfs_client_enable="NO"          # This host is an NFS client (or NO).
nfs_access_cache="60"           # Client cache timeout in seconds
nfs_server_enable="NO"          # This host is an NFS server (or NO).
nfs_server_flags="-u -t -n 4"   # Flags to nfsd (if enabled).
mountd_enable="NO"              # Run mountd (or NO).
mountd_flags="-r"               # Flags to mountd (if NFS server enabled).
weak_mountd_authentication="NO" # Allow non-root mount requests to be served.
nfs_reserved_port_only="NO"     # Provide NFS only on secure port (or NO).
nfs_bufpackets=""               # bufspace (in packets) for client
rpc_lockd_enable="NO"           # Run NFS rpc.lockd needed for client/server.
rpc_statd_enable="NO"           # Run NFS rpc.statd needed for client/server.
rpcbind_enable="NO"             # Run the portmapper service (YES/NO).
rpcbind_program="/usr/sbin/rpcbind"     # path to rpcbind, if you want a different one.
rpcbind_flags=""                # Flags to rpcbind (if enabled).
rpc_ypupdated_enable="NO"       # Run if NIS master and SecureRPC (or NO).
keyserv_enable="NO"             # Run the SecureRPC keyserver (or NO).
keyserv_flags=""                # Flags to keyserv (if enabled).
######################################################################################

я добавил в /etc/rc.conf на сервере
###################################
nfs_server_enable="YES"
nfs_client_enable="YES"
###################################

sh# sockstat -4 | grep nfs
-------------------------------------------------------------
root     nfsd       752   3  tcp4   *:2049                *:*
-------------------------------------------------------------

sh# mkdir /files_all
sh# mkdir /secret_files

В /etc/exports добавляем каталоги для доступа
-------------------------------------------------------
/files_all -ro -network 192.168.1.0 -mask 255.255.255.0
/secret_files -maproot=0 192.168.1.4
-------------------------------------------------------

/files_all - будет доступна всем read_only из 192.168.1.0/24
/files_all - будет доступна с полными провами root'а только для 192.168.1.4

Дальше рестартуем демона mountd
sh# killall -1 mountd

Ошибки смотрим в /var/log/messages
Если ничего не упало значит всё прокатило иначе ошибки будут вида:
-------------------------------------------------------------------
Nov 17 11:13:35 server mountd[68]: bad exports list line /files_all
-------------------------------------------------------------------

Само монтирование на клиенте будет происходить так (где 192.168.1.2 ip сервера):
sh# mkdir /files_other
sh# mount 192.168.1.2:/files_all /files_other

sh# df -h
##################################################################
Filesystem    	        Size    Used   Avail Capacity  Mounted on
devfs                  1.0K    1.0K      0B   100%    /dev
192.168.1.2:/files_all	65G     27G     32G    46%    /files_other
##################################################################

Видим результат и соответственно юзаем)