Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Welche Funktion hat rpc.statd unter Linux?

Welche Funktion hat rpc.statd unter Linux?

PHPz
PHPznach vorne
2023-06-01 20:37:371753Durchsuche

Unter Linux ist rpc.statd ein Prozess, der das RPC-Protokoll Network Status Monitoring (NSM) implementiert, um den NFS-Client zu benachrichtigen, wenn ein NFS-Server abnormal neu startet. Die Syntax lautet „/sbin/rpc.statd [- F]“. [-d] [-?] [-n Name] [-o Port] [-p Port] [-V]". Der nfslock-Dienst startet automatisch den Prozess rpc.statd und erfordert keine Benutzerkonfiguration.

Der folgende RPC-Hintergrundprozess dient der Bereitstellung von NFS

  • rpc.mountd: Dieser Prozess akzeptiert Mount-Anfragen von NFS-Clients und überprüft, ob das angeforderte Dateisystem ausgegeben wird. Dieser Prozess wird automatisch vom NFS-Dienst gestartet und erfordert keine Benutzerkonfiguration. 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服务自动启动,不需要用户的配置。

Linux 命令 rpc.statd

rpc.statd 服务实现了 NSM(网络状态监视器)RPC 协议。

这项服务的名称有些错误,因为它实际上并没有像人们怀疑的那样提供主动监控;相反,NSM 实现了重启通知服务。

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.statd 打印出版本信息并退出。

TCP_WRAPPERS SUPPORT

rpc.nfsd: Dieser Prozess ist der NFS-Server. Er arbeitet mit dem Linux-Kern zusammen, um die dynamischen Anforderungen von NFS-Clients zu erfüllen, z. B. die Bereitstellung eines Servers für jede Anfrage NFS-Client-Thread. Dieser Prozess entspricht dem NFS-Dienst.

🎜🎜rpc.lockd: Ein optionaler Prozess, der es NFS-Clients ermöglicht, Dateien auf dem Server zu sperren. Dieser Prozess entspricht dem NFSlock-Dienst. 🎜🎜🎜rpc.statd: Dieser Prozess implementiert das Network Status Monitoring (NSM) RPC-Protokoll, um den NFS-Client zu benachrichtigen, wenn ein NFS-Server abnormal neu startet. Dieser Vorgang wird automatisch vom NFSlock-Dienst gestartet. Es ist keine Benutzerkonfiguration erforderlich. 🎜🎜🎜rpc.rquotad: Dieser Prozess stellt Benutzerkontingentinformationen für Remotebenutzer bereit. Dieser Prozess wird automatisch vom NFS-Dienst gestartet und erfordert keine Benutzerkonfiguration. 🎜

Linux-Befehl rpc.statd

🎜 Der Dienst rpc.statd implementiert das NSM-RPC-Protokoll (Network Status Monitor). 🎜🎜Dieser Dienst ist etwas falsch benannt, da er, wie man vielleicht vermuten könnte, keine proaktive Überwachung bietet. Stattdessen implementiert NSM einen Neustart-Benachrichtigungsdienst. 🎜🎜rpc.lockd ist ein Dateidienst, der zum Wiederherstellen gesperrter Dateien verwendet wird, wenn ein NFS-Server abstürzt und neu startet. 🎜🎜Verwendung von rpc.statd 🎜🎜In der Vergangenheit mussten wir bei einigen Linux-Distributionen rpc.statd beim Starten des NFS-Servers separat starten. 🎜🎜Das liegt vor allem am alten Sysvinit-System. 🎜🎜Jetzt werden wir feststellen, dass beim Starten von NFS automatisch rpc.statd und alle anderen Komponenten gestartet werden, die für die ordnungsgemäße Funktion des Servers erforderlich sind. Das Gleiche gilt für 🎜
statd: .bar.com
🎜 oder (abhängig von der Distribution) 🎜rrreee🎜, wenn der Server beim Booten aktiviert wird. 🎜🎜 Debian-basierte Distributionen wie Ubuntu und Linux Mint aktivieren NFS, sobald wir es installieren. Es ist also nicht nötig, dies zu tun, aber die Aktivierung des Servers sieht so aus: 🎜rrreee🎜 oder 🎜rrreee🎜 Nochmals der genaue Befehl hängt von der Veröffentlichung ab. 🎜🎜 „nfs-server“ ist ein Debian-basiertes System. 🎜🎜🎜🎜Wenn wir das Verhalten von rpc.statd anpassen müssen, können wir dies mit den folgenden Optionen tun. 🎜🎜🎜Normalerweise möchten wir diesen Befehl nicht alleine ausführen. 🎜🎜🎜Stattdessen kopieren wir die Systemd-Dienstdatei und erstellen ein Backup des Originals und eine neue Kopie zur freien Änderung. 🎜🎜🎜Wir werden dann die folgenden Optionen verwenden, um zu ändern, wie der Dienst aus dieser Dienstdatei aufgerufen wird. 🎜🎜Syntax🎜rrreee🎜Operations🎜🎜Für jeden zu überwachenden NFS-Client oder -Server-Computer befindet sich rpc.statd in /var Create eine Datei in /lib/nfs/statd/sm. 🎜🎜Beim Start durchläuft es diese Dateien und benachrichtigt peerrpc.statd auf diesen Maschinen. 🎜🎜Optionen🎜🎜-F🎜🎜Standardmäßig wird rpc.statd beim Start geforkt und im Hintergrund platziert. Der Parameter 🎜🎜-F weist es an, im Vordergrund zu bleiben. 🎜🎜Diese Option wird hauptsächlich für Debugging-Zwecke verwendet. 🎜🎜-d🎜🎜Standardmäßig sendet rpc.statd Protokollmeldungen über Syslog (3) an das Systemprotokoll. Der Parameter 🎜🎜-d zwingt ihn, die ausführliche Ausgabe stattdessen in stderr zu protokollieren. 🎜🎜Diese Option wird hauptsächlich zu Debugzwecken verwendet und kann nur in Kombination mit dem Parameter -F verwendet werden. 🎜🎜-n, --name name🎜🎜Geben Sie einen Namen für rpc.statd an, der als lokaler Hostname verwendet werden soll. 🎜🎜Standardmäßig ruft rpc.statd gethostname(2) auf, um den lokalen Hostnamen abzurufen. 🎜🎜Die Angabe des lokalen Hostnamens kann für Maschinen mit mehreren Schnittstellen nützlich sein. 🎜🎜-o, --outgoing-port port🎜🎜Geben Sie einen Port an, von dem rpc.statd ausgehende Statusanfragen senden soll. 🎜🎜Standardmäßig fordert rpc.statd Portmap (8) auf, ihm eine Portnummer zuzuweisen. 🎜🎜Zum Zeitpunkt des Schreibens gibt es keine Standard-Portnummer, die Portmap immer oder normalerweise zuweist. 🎜🎜Die Angabe von Ports kann bei der Implementierung einer Firewall hilfreich sein. 🎜🎜-p, --port port🎜🎜Geben Sie den Port an, den rpc.statd überwacht. 🎜🎜Standardmäßig fordert rpc.statd Portmap (8) auf, ihm eine Portnummer zuzuweisen. 🎜🎜Zum Zeitpunkt des Schreibens gibt es keine Standard-Portnummer, die Portmap immer oder normalerweise zuweist. 🎜🎜Die Angabe von Ports kann bei der Implementierung einer Firewall hilfreich sein. 🎜🎜-?🎜🎜 bewirkt, dass rpc.statd die Befehlszeilenhilfe ausgibt und beendet wird. 🎜🎜-V🎜🎜 bewirkt, dass rpc.statd Versionsinformationen ausgibt und beendet wird. 🎜🎜TCP_WRAPPERS SUPPORT🎜🎜Diese Version von rpc.statd ist durch die tcp_wrapper-Bibliothek geschützt. 🎜

如果允许客户端使用 rpc.statd,则必须授予客户端访问权限。

要允许来自 .bar.com 域的客户端的连接,我们可以在 /etc/hosts.allow 中使用以下行:

statd: .bar.com

我们必须使用守护程序名称 statd 作为守护程序名称(即使二进制文件具有不同的名称)。

Das obige ist der detaillierte Inhalt vonWelche Funktion hat rpc.statd unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen