诺禾-NFS 效劳器

ubuntu18.04.4 配置 NFS 效劳器

NFS 概述
NFS(Network File System)是一种能使效劳器上的信息被其他计算机挂载而到达资源共享的网络文件系统。一个客户机能够把远程文件系统挂载到本地文件系统的某个目录下,作为本地系统的一局部来运用。NFS 有属于本人的协议和端口号,但在传送材料或其他相关信息时,NFS 效劳器需求运用 RPC 协议来辅佐运转。

RPC
由于 NFS 支持的功用很多,每当启动一个功用就要启用一些端口来传输数据,因而 NFS 的功用所对应的端口是不固定的,通常是随机取用一些未被运用的小于 1024 的端口作为传输之用,而客户端必需晓得效劳器相关端口才干衔接,此时需求 RPC 效劳。

RPC(远程过程调用协议)的功用是制定每个 NFS 功用对应的端口号,并且回送给客户端,让客户端衔接到正确的端口上。NFS 效劳器启动时会随机启用数个端口号,并主意向 RPC 注册,RPC 固定运用 111 号端口监听客户机的恳求并回应正确的端口号。因而,启动 NFS 之前,要先启动 RPC。

NFS 文件系统配置
Ubuntu 系统所运用的软件包为 nfs-kernel-server,当然还需求其他包支持,比方 rpcbind 作端口映射工作,这些支持包在装置 NFS 时会自动装置。

sudo apt install nfs-kernel-server
NFS 的效劳是 nfs-server.service,能够运用效劳管理的方法停止管理

sudo systemctl enable/disable nfs-server.service # 启用/禁用
systemctl status nfs-server.service # 检查状态
systemctl start/stop/restart/reload nfs-server.service # 启动/中止/重启/重载
NFS 配置文件为 /etc/exports,每一行描绘一个共享目录,并且阐明该目录如何被共享,每一有效行的格式为:共享目录 访问者(选项) 访问者(选项)

访问者为主机或 IP 地址,括号内的选项只对括号前的访问者有效,访问者格式能够为:

指定 IP 地址
指定网段中一切主机,如 192.168.137.0/24
单台主机名,如 pc001
含有通配符的主机名,如 proj*.local.domain,表示 local.domain 域的一切以 proj 开业的主机
常用选项及阐明如表所示

选项 阐明
ro/rw 只读/读写
sync/async 同步/异步写入
secure 只允许 NFS 经过 1024 以前端口衔接(默许)
insecure 允许 NFS 经过 1024 及以上的端口衔接,此选项关闭 secure
secure_locks 运用平安的文件锁
insecure_looks/no_auth_nlm 允许运用不平安的文件锁,此选项关闭 secure_locks
wdelay 延迟写,假如多个用户要写入 NFS 目录,则归组写入(默许)
no_wdelay 同步写入。当运用 async 时,无须此设置
hide 不共享子目录或躲藏子目录
no_hide 共享 NFS 目录的子目录
subtree_check 共享目录树,假如共享目录是一个子目录,将强迫检查父目录权限(默许)
no_subtree_check 与 subtree_check 相对应,不检查父目录权限
root_squash 客户机用 root 用户访问共享文件夹时,将 root 映射为匿名用户
no_root_squash 客户机用 root 用户访问共享文件夹时,不做映射
all_squash 客户机一切用户映射为匿名用户
anonuid=xxx,anongid=xxx 运用 all_squash 选项时,指定 NFS 效劳器 /etc/passwd 文件中用户的 UID 和 GID
no_all_squash 保存共享文件的 UID 和 GID(默许)
在客户端运用 NFS,需求装置支持包

sudo apt-get install nfs-common
运用 mount 命令来将效劳器上的共享目录装置到本地

mount -t nfs [options] server:dir mount_point
其意义是将 server 效劳器上的 dir 目录装置在本地的 mount_point 装置点上,文件系统类型为 nfs

NFS 系统的运用
首先树立一个共享目录,然后向其中添加一些用于共享的文件

sudo mkdir -p /var/nfs_share
sudo /etc/init.d /var/nfs_share
编辑 /etc/exports 文件,参加如下行

/var/nfs_share *(rw,no_root_squash,insecure)
重载 NFS 效劳

sudo systemctl reload nfs-server.service
在恣意一台能够 ping 通效劳器的主机上装置共享目录,这里以 Ubuntu 客户端为例

sudo mkdir -p /mnt/nfs
sudo mount -t nfs 192.168.1.105:/var/nfs_share /mnt/nfs
将 192.168.1.105 上的 /var/nfs_share 目录挂载到本机的 /mnt/nfs 目录下。到此,在客户端能够经过命令查看其中内容了

ls -l /mnt/nfs
NFS 文件系统的拆卸与普通文件的拆卸办法相同

sudo umount /mnt/nfs

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章