Ubuntu 18.04 固定 NFS 端口

2022-09-14 15:41:48 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

NFS 本身是没有提供信息传输的协议和功能的,它使用的是 RPC (Remote Procedure Call)协议。

通过rpcinfo命令可以查看 NFS 相关的端口:

代码语言:javascript复制
linux@linux-virtual-machine:~$ rpcinfo -p localhost
   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
    100005    1   udp  42754  mountd
    100005    1   tcp  41379  mountd
    100005    2   udp  35253  mountd
    100005    2   tcp  38577  mountd
    100005    3   udp  54781  mountd
    100005    3   tcp  38547  mountd
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049
    100003    3   udp   2049  nfs
    100227    3   udp   2049
    100021    1   udp  33454  nlockmgr
    100021    3   udp  33454  nlockmgr
    100021    4   udp  33454  nlockmgr
    100021    1   tcp  39595  nlockmgr
    100021    3   tcp  39595  nlockmgr
    100021    4   tcp  39595  nlockmgr

以上这些端口中,2049 和 111 端口是固定端口,mountdnlockmgr 对应的端口是随机分配的。正常情况下,应该还有 status服务占用端口,不知道为啥老王的系统上没有。算了,这不重要。

mountdnlockmgr、和status服务默认情况下是随机分配端口的,但这样搞不好配置防火墙或者端口映射啥的。

修改/etc/default/nfs-common文件,配置status服务端口为40000:

代码语言:javascript复制
STATDOPTS="--port 40000"

修改/etc/default/nfs-kernel-server文件,配置mountd服务端口为40001:

代码语言:javascript复制
RPCMOUNTDOPTS="--manage-gids -p 40001"

创建/etc/modprobe.d/options.conf文件,添加如下内容,配置nlockmgr端口为40002:

代码语言:javascript复制
options lockd nlm_udpport=40002 nlm_tcpport=40002

然后在/etc/modules文件中添加lockd

代码语言:javascript复制
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
lockd

重启 PC 使配置生效。重启后,查看配置效果:

代码语言:javascript复制
linux@linux-virtual-machine:~$ rpcinfo -p localhost
   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
    100005    1   udp  40001  mountd
    100005    1   tcp  40001  mountd
    100005    2   udp  40001  mountd
    100005    2   tcp  40001  mountd
    100005    3   udp  40001  mountd
    100005    3   tcp  40001  mountd
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049
    100003    3   udp   2049  nfs
    100227    3   udp   2049
    100021    1   udp  40002  nlockmgr
    100021    3   udp  40002  nlockmgr
    100021    4   udp  40002  nlockmgr
    100021    1   tcp  40002  nlockmgr
    100021    3   tcp  40002  nlockmgr
    100021    4   tcp  40002  nlockmgr

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/153570.html原文链接:https://javaforall.cn

0 人点赞