新聞中心
Remote Procedure Call (RPC)是一種在分布式系統(tǒng)中實現(xiàn)進程間通信的技術。在Linux系統(tǒng)中,RPC服務通常是用于網絡文件系統(tǒng)(NFS)服務的遠程訪問。在本文中,我們將介紹。

成都創(chuàng)新互聯(lián)主要從事網站制作、網站建設、網頁設計、企業(yè)做網站、公司建網站等業(yè)務。立足成都服務泰州,10年網站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108
1. 安裝必要的軟件包
在開始配置RPC服務之前,首先需要安裝必要的軟件包。打開終端,運行以下命令:
“`
sudo apt-get install nfs-common rpcbind
“`
該命令將安裝NFS客戶端軟件包和RPC綁定服務。
2. 配置RPC服務
下一步是配置RPC服務。打開終端,運行以下命令:
“`
sudo nano /etc/default/rpcbind
“`
該命令將打開rpcbind配置文件。在該文件中,找到以下行:
“`
# RPCBIND_ARGS=””
“`
將其注釋掉,并添加以下行:
“`
RPCBIND_ARGS=”-h 127.0.0.1″
“`
該行將使rpcbind服務只監(jiān)聽本地IP地址。保存并關閉文件。
3. 啟動RPC服務
現(xiàn)在,我們可以啟動RPC服務了。運行以下命令:
“`
sudo systemctl start rpcbind
“`
該命令將啟動rpcbind服務,并將其設置為在系統(tǒng)啟動時自動啟動。
4. 檢查RPC服務狀態(tài)
為了確保RPC服務已成功配置和啟動,可以運行以下命令來檢查其狀態(tài):
“`
sudo systemctl status rpcbind
“`
如果服務正在運行,則輸出應如下所示:
“`
● rpcbind.service – RPC bind service
Loaded: loaded (/lib/systemd/system/rpcbind.service; enabled; vendor preset:
Active: active (running) since Fri 2023-07-16 10:34:20 IST; 5h 55min ago
Mn PID: 1783 (rpcbind)
Tasks: 1 (limit: 4652)
Memory: 1.1M
CGroup: /system.slice/rpcbind.service
└─1783 /in/rpcbind -h 127.0.0.1
“`
如果出現(xiàn)錯誤,請檢查配置和啟動步驟,并確保所有軟件包已正確安裝。
結論
通過以上步驟,在Linux系統(tǒng)中配置RPC服務應該是相對簡單的。RPC服務的配置為分布式系統(tǒng)中的進程通信提供了方便的機制。因此,這些步驟的掌握是任何Linux系統(tǒng)管理員必備的技能。
成都網站建設公司-創(chuàng)新互聯(lián),建站經驗豐富以策略為先導10多年以來專注數字化網站建設,提供企業(yè)網站建設,高端網站設計,響應式網站制作,設計師量身打造品牌風格,熱線:028-86922220linux配置nfs步驟
NFS的配置過程很簡單。在服務器端中編輯
/etc/exports
文件,添加如下內容: /home/nfs-share.168.1.122 (rw,sync)
之一項是要共享的目錄,后者為共享的配置參數一般為: (rw,sync,no_root_squash,no_all_squash,no_subtree_check)
然后開啟NFS和portmap服務:
/etc/init.d/nfs start//用service nfs start也可以 /etc/init.d/portmap start//用service portmap stasrt也可以
在centos6.5中portmap已經改為rpcbind 在客戶端,用mount –t nfs 192.168.123:/home/nfs-share /home/remote_file掛載服務器端的共享目錄到本地的/home/remote-file掛載點,然后我們就可以在客戶端上應用到遠程主機上的/home/nfs-share目錄了。想要系統(tǒng)在開機時自動掛載,修改/etc/fstab文件,把NFS服務器的共享目錄添加進去就可以了,這個不用多說。
如何知道遠程主機上的共享目錄情況呢?使用showmount命令,這個命令需要root權限。它有三個選項(記住這三個選項代表的含義: showmount –a IP 顯示指定NFS服務器的客戶端以及服務器端在客戶端的掛載點 showmount –d IP 顯示指定NFS服務器在客戶端的掛載點 showmount –e IP 顯示指定NFS服務器上的共享目錄列表(或者叫輸出列表) 我們輸入命令showmount –a 192.168.1.123:
圖片盯團客戶端中出現(xiàn)的mount clntudp_create: RPC: Program not registered錯誤是怎么回事?噢,我剛才重啟了一下服務器端,重啟后NFS服務沒有開啟。 我們開啟服務器端的NFS服務,再從客戶端上查看一下NFS服務器的情況凱歷橘:
Showmount –a顯示出NFS服務器192.168.1.123的共享目錄被客戶端192.168.122掛載到/home中;
在showmount -e IP,出現(xiàn)clnt_create: RPC: Port mapper failure – Timed out報錯
解決方案:
被訪問的NFS服務器上的防火墻沒有添加規(guī)則,向iptables里面添加以下查看的所有端口即可(目前解決的方法,當然你也可以關閉防火墻,不過這樣是比較不安全的,如果你的nfs作用不大,建議你另選別的應用來替代吧!畢竟開那么多的端口,爛激比較不安全呀?。?/p>
通過#rpcinfo -p 10.10.209.148
# rpcinfo -p 10.10.209.148program vers proto port servicetcp 111 portmappertcp 111 portmappertcp 111 portmapperudp 111 portmapperudp 111 portmapperudp 111 portmapperudpstatustcpstatusudp 875 rquotadudp 875 rquotadtcp 875 rquotadtcp 875 rquotadtcp 2023 nfstcp 2023 nfstcp 2023 nfstcp 2023 nfs_acltcp 2023 nfs_acludp 2023 nfsudp 2023 nfsudp 2023 nfsudp 2023 nfs_acludp 2023 nfs_acludpnlockmgrudpnlockmgrudpnlockmgrtcpnlockmgrtcpnlockmgrtcpnlockmgrudpmountdtcpmountdudpmountdtcpmountdudpmountdtcpmountd
#
剛才在重啟NFS服務的時候,細心的話可以注意到,我們在輸入命令/etc/init.d/nfs start開啟nfs服務時,系統(tǒng)還自作主張地開啟了NFS quotas等其它3個服務。
怎么回事?我們只輸入了一條啟動NFS服務的命令,它怎么額外的啟動了3個服務?后面的啟動portmap服務又是怎么回事? 我們首先要了解一點:NFS文件系統(tǒng)要提供服務單靠本身的NFS服務是不夠的,還需要調用其它服務,這個其它服務就是RPC(remote procedure call,遠程過程調用)服務和portmap服務。由于NFS服務本身不提供文件傳輸功能,我們要遠程使用NFS文件系統(tǒng)就需要RPC服務的支持;而portmap服務用來為RPC服務進行動態(tài)端口分配和映射,所以portmap服務也是NFS服務所必須的。
我們查看一下服務的啟動情況:
所遇錯誤:
/etc/init.d/nfs-kernel-server: 沒有那個文件或目錄
解決方案:
沒有配置、安裝NFS
Linux 下配置NFS服務
1、安裝
2、配置
3、客戶端
所遇問題:centos6.5
portmap: 未被識別的服務
解決方案:
由于在6系列里面,portmap已經改名了 ,6系列需要使用 service rpcbind start啟動# service portmap start
portmap: 未被識別的服務
# service rpcbind status
rpcbind (pid 1312) is running…
#
好文共賞:
linux nfs文件共享
◆一、概念
NFS是網絡文件系統(tǒng)(Network File System)的簡稱,是分布式計算機系統(tǒng)的一個組成部分,可實現(xiàn)在異構網絡上共享和裝配遠程文件系統(tǒng)。
NFS由SUN公司開發(fā),目前已成為文件服務的一種標準(RFC1904,RFC1813)。其更大的功能就是可以通過網絡,讓不同 操作系統(tǒng) 的計算機可以共享數據,所以也可以看作是一個文件服務器。NFS是除了SAMBA之外Windows與Linux及Unix與Linux之間通信的方法。
理想條件下的NFS 網絡拓撲結構
1、設置Linux系統(tǒng)之間的文件共享(Linux與Windows中間文件共享采用SAMBA服務);
2、NFS只是一種文件系統(tǒng),本身沒有傳輸功能,是基于RPC協(xié)議實現(xiàn)的,才能達到兩個Linux系統(tǒng)之間的文件目錄共享;
3、NFS為C/S 架構 ;
◆二、服務器配置
1、配置文件
主要配置文件為:/etc/exports
格式為: 共享目錄 可mount主機IP(參數1,參數2,……)
如:/var/nfs 172.20. . (rw,sync,no_rootl_squash)
說明:必須注意nfs/目錄的訪問權限,必須設置成777權限;父目錄/var權限無要求,普通的755即可;
2、啟動相關服務
然后依次啟動相關服務:portmap,nfslock,nfs
service portmap start
service nfslock start
service nfs start
關閉順序相反。
3、檢查共享目錄
隨后可以采用showmount –e查看一下,看看共享的目錄情況:
# showmount -e
Export list for ns.osserver:
/var/nfs 172.20. .
OK,到此為止,NFS服務器搭建完畢;
◆三、客戶端配置
1、確保portmap運行
客戶端必須確保RPC協(xié)議相應的portmap正常運行,否則mount將失?。?/p>
2、掛載/var/nfs目錄(本地掛載點為/mnt/nfs)
mount -t nfs 172.20.65.16:/var/nfs /mnt/nfs
成功mount以后,即可同本地目錄一樣隨意操作;
◆四、其它相關命令
1、當修改了/etc/exports文件后,可以不用重新啟動nfs服務,直接采用exports –rv 即可重新導出共享目錄;
該命令格式如下:
exportfs
-a :全部mount或者unmount /etc/exports中的內容
-r :重新mount /etc/exports中分享出來的目錄
-u :umount 目錄
-v :在 export 的時候,將詳細的信息輸出到屏幕上。
具體例子:
# showmount -e
Export list for ns.osserver:
/var/nfs 172.20. .
# exportfs –au #全部卸載
# showmount -e
Export list for ns.osserver:
# exportfs –rv #全部重新 export 一次
exporting 172.20. . :/var/nfs
#
2、showmout命令對于NFS的操作和查錯有很大的幫助,所以我們先來看一下showmount的用法
showmout
-a :這個參數是一般在NFS SERVER上使用,是用來顯示已經mount上本機nfs目錄的cline機器。
-e :顯示指定的NFS SERVER上export出來的目錄。
例如:
# showmount -e 172.20.16.139
Export list for 172.20.16.139 :/root/share 172.20.16.137
# showmount -a
All mount points on localhost.localdomain: :/root/share,172.20. . :/root/share,172.20.16. :/root/share,172.20.16.139:/nfsshare,172.20.16.139:/root/share172.20.16.137: 172.20.16.137:,172.20. . 172.20.16.137:,172.20.16. 172.20.16.137:/root/share172.20.16.139: 172.20.16.139:,172.20. . 172.20.16.139:,172.20.16. 172.20.16.139:,172.20.16.139172.20.16.139:DEFAULT
◆五、常見問題解答
1、提示:mount to NFS server ‘172.20.67.203’ failed: server is down.
解決方案:可能是NFS服務器的防火墻有問題;
2、提示:mount: RPC: Timed out
解決方案:由于RPC協(xié)議沒運行;啟動portmap服務;
Linux 環(huán)境下搭建NFS服務
NFS(Network File System),網絡文件存儲系統(tǒng),它最早是由 Sun 公司開發(fā)的,也是 FreeBSD 支持的文件系統(tǒng)中的一個,它允許網絡中的計算機之間通過TCP/IP 網絡共享資源。通過 NFS 協(xié)議,我們本地 NFS 的客戶端應用可以透明的讀寫位于服務端 NFS 服務器上的文件,就像訪問本地文件一樣方便。簡單的理解,NFS 就是可以透過網絡,讓不同的主機,不同的操作系統(tǒng)可以共享存儲的服務。
NFS 在文件傳送或信息傳送過程中依賴 RPC(Remote Procedure Call)協(xié)議,即遠程過程調用,NFS的各項功能都必須向 RPC 來注冊,如此一來 RPC 才能了解 NFS 這服務的各項功能 Port,PID,NFS 在服務器所監(jiān)聽的 IP 等,而客戶端才能透過 RPC 的詢問找到正確對應的端口,所以 NFS 必須要有 RPC 存在是才能成功的提供服務,簡單的理解二者關系:NFS 是一個文件存儲系統(tǒng),而 RPC 是負責信息的傳輸。
通過上面的簡介,我們知道 NFS 服務需要依賴 RPC 服務,所以這里 NFS 服務端需要安裝 rpcbind 和 nfs-utils ,客戶端只需要安裝 nfs-utils 即可,由于我們選用 CentOS 系統(tǒng),所以可以使用 yum 快速的安裝。
然后安裝 NFS 服務
另:Ubuntu 16.04 安裝命令
我們在服務端創(chuàng)建一個共享目頃困錄 /data/share ,作為客戶端掛載在遠端入口,然后設置權限
然后,修改 NFS 配置文件 /etx/exports
說明一下,這里配置后邊有很多參數,每個參數有殲陸不同的含義,具體可以參考下邊。此處,我配置了將 /data/share 文件目錄設置為允許IP為 192.168.0.0/24 區(qū)間的客戶端掛載。然后,如果客戶端IP不在該區(qū)間也想要掛載的話,可以設置IP區(qū)間更大或者設置為 * 即允許所有客戶端掛載,例如: /home *(ro, sync,insecure,no_root_squash) 設置 /home 目錄允許所有客戶端只讀掛載。
接下來,我們先啟動 RPC 服務
我們發(fā)現(xiàn),啟動了 NFS 服務后,RPC 注冊的端口列表明顯增多。現(xiàn)在服務端都啟動起來了,在服務端看下是否正確加載了設置的 /etc/exports 配置
最后,在另一臺Linux虛擬機上測試一下,是否能夠正確掛載。首先,我們可以在客戶端查看下NFS服務端設置可共享的目錄信息
然后,在客戶端創(chuàng)建掛載目錄/share
最后,掛載遠端目錄到本地 /share 目錄
可以看到,可以正確將遠端 NFS 目錄掛載到本地。注意:掛載點 /share 目錄必須已經存在,而且目錄中沒有文件或子目錄
最后,我們在 NFS 服務端 /data/share 目錄下創(chuàng)建一個文件,看下客戶端能否正確讀取并修改
都可以了,這里因為上面設置了 NFS 遠端目錄權限為 rw 擁有讀寫權限,如果設置為 ro ,那么客戶端只能讀取,不能寫入。根據實際應用場景合理配置。
NFS 默認使用 UDP協(xié)議進行掛載,為了提供 NFS 的穩(wěn)定性,可以使用 TCP 協(xié)議掛載,那么客戶端掛載氏乎頃命令如下:
最后,卸載命令
關于linux系統(tǒng)配置rpc的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都網站建設選創(chuàng)新互聯(lián)(?:028-86922220),專業(yè)從事成都網站制作設計,高端小程序APP定制開發(fā),成都網絡營銷推廣等一站式服務。
本文題目:如何在Linux系統(tǒng)中配置RPC服務(linux系統(tǒng)配置rpc)
網站鏈接:http://www.5511xx.com/article/cdojoeg.html


咨詢
建站咨詢
