(1)把rstatd文件解壓到要監控的機器上。bash
(2)打開終端,定位到rstatd文件夾下:查看文件夾中的內容以下:app
[root@localhost rpc.rstatd]# ls aclocal.m4 COPYING Makefile.am README rstat_proc.c rup.1 config.h.in CVS Makefile.in rpc.rstatd.8 rstat.x rup.c configure INSTALL missing rstatd.8 rsysinfo.1 stamp-h.in configure.in install-sh mkinstalldirs rstat_main.c rsysinfo.c
[root@localhost rpc.rstatd]# ./configure creating cache ./config.cache checking for a BSD compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking whether make sets ${MAKE}... yes checking for working aclocal... found checking for working autoconf... found checking for working automake... found checking for working autoheader... found checking for working makeinfo... found checking for gawk... gawk checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking for a BSD compatible install... /usr/bin/install -c checking whether ln -s works... yes checking whether make sets ${MAKE}... (cached) yes checking how to run the C preprocessor... gcc -E checking for sys/ioctl.h... yes checking for syslog.h... yes checking whether time.h and sys/time.h may both be included... yes checking whether gcc needs -traditional... no checking for ANSI C header files... yes checking return type of signal handlers... void updating cache ./config.cache creating ./config.status kcreating Makefile creating config.h
[root@localhost rpc.rstatd]# make rm -f rstat.h rpcgen -h -o rstat.h rstat.x gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c rup.c rup.c: In function 'ointopoint_v5': rup.c:256: warning: passing argument 6 of 'client->cl_ops->cl_call'?from incompatible pointer type rup.c: In function 'ointopoint_v3'? rup.c:292: warning: passing argument 6 of 'client->cl_ops->cl_call'?from incompatible pointer type rup.c: In function 'main'? rup.c:317: warning: return type of 'main'?is not 'int'?rm -f rstat_xdr.c rpcgen -c -o rstat_xdr.c rstat.x gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c rstat_xdr.c rm -f rstat_clnt.c rpcgen -l -o rstat_clnt.c rstat.x gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c rstat_clnt.c gcc -g -O2 -o rup rup.o rstat_xdr.o rstat_clnt.o gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c rsysinfo.c rsysinfo.c: In function 'ointopoint_v3'? rsysinfo.c:136: warning: passing argument 6 of 'client->cl_ops->cl_call'?from incompatible pointer type rsysinfo.c: In function 'main'? rsysinfo.c:160: warning: return type of 'main'?is not 'int'?gcc -g -O2 -o rsysinfo rsysinfo.o rstat_xdr.o rstat_clnt.o rm -f rstat_svc.c rpcgen -m -o rstat_svc.c rstat.x gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c rstat_svc.c gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c rstat_proc.c gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -c rstat_main.c rstat_main.c: In function 'main'? rstat_main.c:82: warning: return type of 'main'?is not 'int'?gcc -g -O2 -o rpc.rstatd rstat_svc.o rstat_xdr.o rstat_proc.o rstat_main.o
這以後能夠執行:make check檢查一下。tcp
[root@localhost rpc.rstatd]# make install make[1]: Entering directory `/opt/rpc.rstatd' /bin/sh ./mkinstalldirs /usr/local/bin /usr/bin/install -c rup /usr/local/bin/rup /usr/bin/install -c rsysinfo /usr/local/bin/rsysinfo /bin/sh ./mkinstalldirs /usr/local/sbin /usr/bin/install -c rpc.rstatd /usr/local/sbin/rpc.rstatd make[1]: Nothing to be done for `install-data-am'. make[1]: Leaving directory `/opt/rpc.rstatd'
啓動rpc服務。ui
[root@localhost rpc.rstatd]# ./rpc.rstatd
執行完成後沒有回顯信息,說明啓動成功。this
檢查rpc服務的狀態.spa
[root@localhost rpc.rstatd]# rpcinfo -p program vers proto port 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100024 1 udp 797 status 100024 1 tcp 800 status 100001 5 udp 900 rstatd 100001 3 udp 900 rstatd 100001 2 udp 900 rstatd 100001 1 udp 900 rstatd [root@localhost rpc.rstatd]#
(1)若RPC服務沒有成功啓動。code
(2)若目標主機上開啓了防火牆,阻擋了RPC服務。server
在LR中添加時可能會出現以下錯誤:ci
Monitor name :UNIX Resources. Cannot initialize the monitoring on 10.1.200.65. Error while creating the RPC client. Ensure that the machine can be connected and that it runs the rstat daemon (use rpcinfo utility for this verification). Detailed error: RPC: Failed to create RPC client. RPC-TCP: Failed to establish RPC server address. RPC-TCP: RPC Server <100001, 3, 17> is not registered on host '10.1.200.65'. (entry point: CFactory::Initialize). [MsgId: MMSG-47190]
Monitor name :UNIX Resources. Internal rpc error (error code:2). Machine: 10.1.200.65. Hint: Check that RPC on this machine is up and running. Check that rstat daemon on this machine is up and running (use rpcinfo utility for this verification). Details: RPC: RPC call failed. RPC-TCP: recv()/recvfrom() failed. RPC-TCP: Timeout reached. (entry point: Factory::CollectData). [MsgId: MMSG-47197]