Linux에서 rpc.statd는 NFS 서버가 비정상적으로 다시 시작될 때 NFS 클라이언트에 알리기 위해 NSM(네트워크 상태 모니터링) RPC 프로토콜을 구현하는 프로세스입니다. 구문은 "/sbin/rpc.statd [-F] [- d] [-?] [-n 이름 ] [-o 포트 ] [-p 포트 ] [-V]". rpc.statd 프로세스는 nfslock 서비스에 의해 자동으로 시작되며 사용자 구성이 필요하지 않습니다.
이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.
다음 RPC 백그라운드 프로세스는 NFS
rpc.mountd
에 대한 서비스를 제공합니다. 이 프로세스는 NFS 클라이언트의 마운트 요청을 수락하고 요청된 파일 시스템이 내보내지고 있는지 확인합니다. 이 프로세스는 NFS 서비스에 의해 자동으로 시작되며 사용자 구성이 필요하지 않습니다. rpc.mountd
:这个进程接受来自NFS客户端的加载请求和验证请求的文件系统正在被输出。这个进程由NFS服务自动启动,不需要用户的配置。
rpc.nfsd
:这个进程是NFS服务器.它和Linux核心一起工作来满足NFS客户端的动态需求,例如提供为每个NFS客户端的每次请求服务器线程。这个进程对应于nfs服务。
rpc.lockd
:一个可选的进程,它允许NFS客户端在服务器上对文件加锁。这个进程对应于nfslock服务。
rpc.statd
:这个进程实现了网络状态监控(NSM)RPC协议,通知NFS客户端什么时候一个NFS服务器非正常重启动。这个进程被nfslock服务自动启动。不需要用户的配置。
rpc.rquotad
:这个进程对于远程用户提供用户配额信息。这个进程被nfs服务自动启动,不需要用户的配置。
rpc.statd 服务实现了 NSM(网络状态监视器)RPC 协议。
这项服务的名称有些错误,因为它实际上并没有像人们怀疑的那样提供主动监控;相反,NSM 实现了重启通知服务。
NFS 文件锁定服务 rpc.lockd 使用它来在 NFS 服务器机器崩溃和重新启动时实现锁定恢复。
使用 rpc.statd
过去,在某些 Linux 发行版上,我们需要在启动 NFS 服务器时单独启动 rpc.statd。
这主要是由于旧的 Sysvinit 系统。
现在,我们会发现启动 NFS 将自动启动 rpc.statd 和服务器正常运行所需的任何其他组件。
systemctl start nfs
或者(取决于发行版)
systemctl start nfs-server
在启动时启用服务器时也是如此。
基于 Debian 的发行版,例如 Ubuntu 和 Linux Mint 将在我们安装后立即启用 NFS,因此无需执行此操作,但启用服务器看起来像这样:
systemctl enable nfs
或者
systemctl enable nfs-server
同样,确切的命令取决于发行版。
“nfs-server”是一个基于 Debian 的系统。
如果我们需要自定义 rpc.statd 的行为,我们可以使用以下选项进行操作。
通常,我们不会希望单独运行该命令。
相反,我们将复制 Systemd 服务文件,创建原始备份和新副本以自由修改。
然后,我们将使用以下选项更改从该服务文件调用服务的方式。
语法
/sbin/rpc.statd [-F] [-d] [-?] [-n name ] [-o port ] [-p port ] [-V]
操作
对于要监视的每个 NFS 客户端或者服务器机器, rpc.statd 在 /var/lib/nfs/statd/sm 中创建一个文件。
启动时,它遍历这些文件并通知这些机器上的 peerrpc.statd。
选项
-F
默认情况下,rpc.statd 在启动时分叉并置于后台。
-F 参数告诉它保持在前台。
此选项主要用于调试目的。
-d
默认情况下,rpc.statd 通过 syslog (3) 将日志消息发送到系统日志。
-d 参数强制它改为将详细输出记录到 stderr。
此选项主要用于调试目的,只能与 -F 参数结合使用。
-n, --name name
为 rpc.statd 指定一个名称以用作本地主机名。
默认情况下,rpc.statd 会调用 gethostname(2) 来获取本地主机名。
指定本地主机名对于具有多个接口的机器可能很有用。
-o, --outgoing-port 端口
为 rpc.statd 指定一个端口,以从中发送传出状态请求。
默认情况下,rpc.statd 会要求 portmap (8) 为其分配一个端口号。
在撰写本文时,还没有 portmap 总是或者通常分配的标准端口号。
在实施防火墙时指定端口可能很有用。
-p, --port 端口
指定 rpc.statd 监听的端口。
默认情况下,rpc.statd 会要求 portmap (8) 为其分配一个端口号。
在撰写本文时,还没有 portmap 总是或者通常分配的标准端口号。
在实施防火墙时指定端口可能很有用。
-?
导致 rpc.statd 打印出命令行帮助并退出。
-V
rpc.nfsd
: 이 프로세스는 NFS 서버입니다. 각 요청에 대해 서버를 제공하는 등 NFS 클라이언트의 동적 요구 사항을 충족하기 위해 Linux 코어와 함께 작동합니다. NFS 클라이언트 스레드. 이 프로세스는 nfs 서비스에 해당합니다. 🎜🎜🎜rpc.lockd
: NFS 클라이언트가 서버의 파일을 잠글 수 있도록 하는 선택적 프로세스입니다. 이 프로세스는 nfslock 서비스에 해당합니다. 🎜🎜🎜rpc.statd
: 이 프로세스는 NSM(Network Status Monitoring) RPC 프로토콜을 구현하여 NFS 서버가 비정상적으로 다시 시작될 때 NFS 클라이언트에 알립니다. 이 프로세스는 nfslock 서비스에 의해 자동으로 시작됩니다. 사용자 구성이 필요하지 않습니다. 🎜🎜🎜rpc.rquotad
: 이 프로세스는 원격 사용자에게 사용자 할당량 정보를 제공합니다. 이 프로세스는 nfs 서비스에 의해 자동으로 시작되며 사용자 구성이 필요하지 않습니다. 🎜statd: .bar.com
-F
🎜🎜기본적으로 rpc.statd는 시작 시 분기되어 백그라운드에 배치됩니다. 🎜🎜-F 매개변수는 전경에 머물도록 지시합니다. 🎜🎜이 옵션은 주로 디버깅 목적으로 사용됩니다. 🎜🎜-d
🎜🎜기본적으로 rpc.statd는 syslog(3)를 통해 시스템 로그에 로그 메시지를 보냅니다. 🎜🎜-d 매개변수는 대신 stderr에 자세한 출력을 기록하도록 강제합니다. 🎜🎜이 옵션은 주로 디버깅 목적으로 사용되며 -F 매개변수와 조합해서만 사용할 수 있습니다. 🎜🎜-n, --name name
🎜🎜로컬 호스트 이름으로 사용할 rpc.statd의 이름을 지정합니다. 🎜🎜기본적으로 rpc.statd는 gethostname(2)을 호출하여 로컬 호스트 이름을 가져옵니다. 🎜🎜로컬 호스트 이름을 지정하면 여러 인터페이스가 있는 컴퓨터에 유용할 수 있습니다. 🎜🎜-o, --outgoing-port port
🎜🎜발신 상태 요청을 보낼 rpc.statd의 포트를 지정합니다. 🎜🎜기본적으로 rpc.statd는 portmap(8)에 포트 번호 할당을 요청합니다. 🎜🎜글 작성 당시에는 portmap이 항상 또는 일반적으로 할당하는 표준 포트 번호가 없습니다. 🎜🎜방화벽을 구현할 때 포트를 지정하면 유용할 수 있습니다. 🎜🎜-p, --port port
🎜🎜rpc.statd가 수신 대기하는 포트를 지정하세요. 🎜🎜기본적으로 rpc.statd는 portmap(8)에 포트 번호 할당을 요청합니다. 🎜🎜글 작성 당시에는 portmap이 항상 또는 일반적으로 할당하는 표준 포트 번호가 없습니다. 🎜🎜방화벽을 구현할 때 포트를 지정하면 유용할 수 있습니다. 🎜🎜-?
🎜🎜는 rpc.statd가 명령줄 도움말을 인쇄하고 종료하도록 합니다. 🎜🎜<코드>-V🎜使 rpc.statd 打印出版本信息并退出。
TCP_WRAPPERS SUPPORT
此 rpc.statd 版本受 tcp_wrapper 库保护。
如果允许客户端使用 rpc.statd,则必须授予客户端访问权限。
要允许来自 .bar.com 域的客户端的连接,我们可以在 /etc/hosts.allow 中使用以下行:
statd: .bar.com
我们必须使用守护程序名称 statd 作为守护程序名称(即使二进制文件具有不同的名称)。
相关推荐:《Linux视频教程》
위 내용은 리눅스 rpc.statd 란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!