校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Linux下NFS網絡文件系統的基本使用教程

Linux下NFS網絡文件系統的基本使用教程

熱門標簽:天地圖標注線 慶陽便宜外呼系統報價 辦理400電話怎么申請 靈圖uu電子服務區地圖標注 高德地圖標注技術 滴滴洗衣店地圖標注 微信地圖標注在哪 大眾點評公寓式酒店地圖標注 如何在地圖標注多個位置

0.什么是NFS(Network FileSystem)
    NFS 就是 Network FileSystem 的縮寫,最早之前是由 Sun 所發展出來的。他最大的功能就是可以透過網絡,讓不同的機器、不同的操作系統、可以彼此分享個別的檔案 ( share file ),所以,也可以簡單的將他看做是一個 file server !這個 NFS Server 可以讓你的 PC 來將網絡遠程的 NFS 主機分享的目錄,掛載到本地端的機器當中,所以,在本地端的機器看起來,那個遠程主機的目錄就好象是自己的 partition 一樣!
雖然 NFS 有屬于自己的協議與使用的 port number ,但是在資料傳送或者其它相關訊息傳遞的時候, NFS 使用的則是一個稱為遠程過程調用( Remote Procedure Call, RPC )的協議來協助 NFS 本身的運作!

1. NFS至少有兩個主要部分:一臺服務器和一臺(或者更多)客戶機。客戶機遠程訪問存放在服務器上的數據。為了正常工作,一些進程需要被配置并運行。
NFS服務器的安裝:
檢查linux系統中是否安裝了nfs-utils和portmap兩個軟件包 
(RHEL4系統默認已經安裝了這兩個軟件包)
命令

復制代碼
代碼如下:
#rpm –q nfs-utils portmap

查看NFS服務器是否啟動:
命令
復制代碼
代碼如下:
#service nfs starus
#service portmap status

如果服務器沒有啟動,則開啟服務(默認服務下nfs沒有完全開啟)
命令
復制代碼
代碼如下:
#service nfs start
#service portmap start

2.RPC
    當我們在使用某些服務來進行遠程聯機的時候,有些信息,例如主機的IP、服務的 port number、與對應到的服務之 PID 等等,都需要管理與對應!這些管理 port 的對應與服務相關性的工作,就是這個 Remote Procedure Call, RPC 的任務了。NFS 本身的服務并沒有提供資料傳遞的協議,但是 NFS 卻能讓我們進行檔案的分享,這其中的原因,就是 NFS 使用到一些其它相關的傳輸協議!而這些傳輸的協議,就是使用到這個所謂的 RPC 的功能啰!這也就是說, NFS 本身就是使用 RPC 的一個 program 就是了!說的更白話一點, NFS 也可以視作是一個 RPC server 啦!同時要注意到的是,在某些狀況中,不但跑 NFS 的 Server 需要激活 RPC 的服務,連帶的,要掛載 NFS partition 的 Client 機器,也需要同步激活 RPC 才行!這樣 Server 端與 Client 端才能藉由 RPC 的協議來進行 program port 的對應喔!NFS 主要在管理分享出來的目錄,而至于資料的傳遞,就直接將他丟給 RPC 的協議來運作就是了!

3.NFS 激活的 RPC daemons
  rpc.nfsd:這個 daemon 主要的功能就是在管理 Client 是否能夠登入主機的權限啦,其中還包含這個登入者的 ID 的判別
  rpc.mountd:這個 daemon 主要的功能,則是在管理 NFS 的檔案系統!當 Client 端順利的通過 rpc.nfsd 而登入主機之后,在他可以使用 NFS server 提供的檔案之前,還會經過檔案使用權限 ( 就是那個 -rwxrwxrwx 與 owner, group 那幾個權限啦 ) 的認證程序!他會去讀 NFS 的設定檔 /etc/exports 來比對 Client 的權限,當通過這一關之后, Client 就可以取得使用 NFS 檔案的權限啦!(注:這個也是我們用來管理 NFS 分享之目錄的使用權限與安全設定的地方哩)

4.NFS需要有兩個套件才行,分別是:
 nfs-utils
 就是提供 rpc.nfsd 及 rpc.mountd 這兩個 NFS daemons 與其它相關 documents 與說明文件、執行檔等的套件!這個就是 NFS 的主要套件
 portmap
 就如同剛剛提的到,我們的 NFS 其實可以被視為一個 RPC server program,而要激活任何一個 RPC server program 之前,我們都需要做好 port 的對應 ( mapping ) 的工作才行,這個工作其實就是『 portmap 』這個服務所負責的!也就是說,在激活任何一個 RPC server 之前,我們都需要激活 portmap 才行呢!那么這個 portmap 到底在干嘛呢?就如同這個服務的名稱,哈哈!就是作 port 的 mapping 啊!舉個例子來說:當 Client 端嘗試來使用 RPC server 所提供的服務時,由于 Client 需要取得一個可以連接的 port 才能夠使用 RPC server 所提供的服務,因此, Client 首先就會去跟 portmap 講『喂!可不可以通知一下,給我個 port number ,好讓我可以跟 RPC 聯絡吧!』這個時候 portmap 就自動的將自己管理的 port mapping 告知 Client ,好讓他可以連接上來 server 呢!所以啰:『激活 NFS 之前,請先激活 portmap !』

5.NFS server端的設定:
 a)/etc/exports
 分享的目錄 主機名稱1或IP1(參數1,參數2) 主機名稱2或IP2(參數3,參數4)
 b).參數
 rw: 可擦寫的權限
 ro: 只讀的權限
 no_root_squash: 登入 NFS 主機使用分享目錄的使用者,如果是 root 的話,那么對于這個分享的目錄來說,他就具有 root 的權限!這個項目『極不安全』,不建議使用!
 root_squash: 在登入 NFS 主機使用分享之目錄的使用者如果是 root 時,那么這個使用者的權限將被壓縮成為匿名使用者,通常他的 UID 與 GID 都會變成 nobody 那個身份;
 all_squash: 不論登入 NFS 的使用者身份為何,他的身份都會被壓縮成為匿名使用者,通常也就是 nobody 啦!
 anonuid: 前面關于 *_squash 提到的匿名使用者的 UID 設定值,通常為 nobody,但是你可以自行設定這個 UID 的值!當然,這個 UID 必需要存在于你的 /etc/passwd 當中!
 anongid: 同 anonuid ,但是變成 group ID 就是了
 sync: 資料同步寫入到內存與硬盤當中
 async: 資料會先暫存于內存當中,而非直接寫入硬盤
 
6.設置的實例:
 a)/tmp *(rw,no_root_squash)  //*號表示所有的IP都可以訪問
 b)/tmp *(rw)
  /home/public 192.168.0.*(rw) *(ro)  //下面兩行作用一樣
  /home/public 192.168.0.0/24(rw) *(ro)
 c)/home/test 192.168.0.100(rw) //只對某部機器設置權限
 d)/home/linux *.linux.org(rw,all_squash,anonuid=40,anongid=40) //當*.linux.org登陸此NFS主機,并且在/home/linux下面寫入檔案時,該檔案的所有人與所有組,就會變成/etc/passwd里面對應的UID為40的那個身份的使用者了.
 
7.權限問題
假設/etc/exports里面的內容為

復制代碼
代碼如下:

#vi /etc/exports
/tmp *(rw,no_root_squash)
/home/public 192.168.0.*(rw) *(ro)
/home/test 192.168.0.100(rw)
/home/linux *.linux.org(rw,all_squash,anonuid=40,anongid=40)

 假設我們在192.168.0.100這個client端登陸此NFS主機(192.168.0.2),那么
 情況一:在192.168.0.100的帳號為test這個身份,同時,NFS主機上也有test這個帳號
  a).由于NFS主機的/tmp權限為-rwxrwxrwt,所以我(test在192.168.0.100上)在/tmp下面具有存取的權限,并且寫入檔案的所有人為test.
  b).在/home/public中,由于我有讀寫的權限,如果NFS主機在/home/public這個目錄的權限對于test開放寫入的話,那么就可以讀寫,并且寫入檔案的所有人是test。如果NFS主機的/home/public對于test這個使用者并沒有開放寫入權限時,那就無法寫入,雖然/etc/exports里面是rw,也不起作用.
  c).在/home/test中,權限與/home/public有相同的狀態,需要NFS主機的/home/test對于test有開放的權限.
  d).在/home/linux當中,不論是何種的user,身份都會被變成UID=40的這個帳號
 情況二:如果我們在192.168.0.100的身份為test2,但是NFS主機卻沒有test2這個帳號時
  a).在/tmp下還是可以寫入,但是寫入的檔案所有人變成nobody.
  b).在/home/public與/home/test里面是否可以寫入,還需要看/home/public的權限而定,不過身份就被變成nobody了
  c)/home/linux下的身份還是變成UID=40的帳號.
 情況三:在192.168.0.100的身份為root
  a).在/tmp里面可以寫入,但是由于no_root_squash的參數,改變了預設的root_squash的設定值,所以在/tmp寫入檔案的所有人為root了.
  b).在/home/public底下的身份被壓縮成了nobody,因為預設的屬性都具有root_squash,所以檔案所有人就變成了nobody.
  c)./home/test情況與/home/public相同.
  d)./home/linux中,root的身份也被壓縮成UID=40的那個使用者了.

8.啟動服務portmap,nfs

復制代碼
代碼如下:

#/etc/rc.d/init.d/portmap start
(or:
復制代碼
代碼如下:
#service portmap start
)

復制代碼
代碼如下:
#/etc/rc.d/init.d/nfs start
  (or:
復制代碼
代碼如下:
#service nfs start
)
 可以到/var/log/messages里面查看是否正確激活

9.exportfs的用法
 如果我們修改了/etc/exports后,并不需要重啟nfs服務,只要用exportfs重新掃描一次/etc/exports,并且重新加載即可
 語法: exportfs [-aruv]
 -a: 全部掛載(或卸載) /etc/exports檔案內的設定
 -r: 重新掛載/etc/exports里面的設定,也同步的更新/etc/exports和/var/lib/nfs/xtab里面的內容
 -u:卸載某一目錄
 -v:在export的時候,將分享的目錄顯示到熒屏上.
 例子
 

復制代碼
代碼如下:

#exportfs -rv //重新export一次
#exportfs -au //全部卸載

10./var/lib/nfs/xtab里面可以查看每個目錄的分享權限(但是我怎么也沒有找到,靠,找到了,原來要有人mount上nfs后才會出現內容),如:
/tmp    node3(ro,sync,wdelay,hide,secure,root_squash,no_all_squash,subtree_check,secure_locks,mapping=identity,anonuid=-2,anongid=-2)
 為什么anonuid=-2呢?呵呵!其實它說的是將 65536 - 2 的值,也就是 65534 的那個 UID 啦!對照一下 /etc/passwd ,你就會發現,哇!原來那就是 nobody 的啦

11.showmount命令
 語法: showmount [-ae] hostname
 -a: 顯示目前主機與client所連上來的使用目錄的狀態
 -e: 顯示hostname的/etc/exports里面共享的目錄

12.查看激活的portnumber

復制代碼
代碼如下:

#netstat -utln

 nfs 自己所開啟的 port ,就是那個 2049 的 port 啦!就是 NFS 主要產生的 port NFS server 在前面我們就提過了,他是 RPC server 的一種,而 NFS 由于提供了多個 program ( 例如 rpc.mountd, rpc.rquotad, rpc.nfsd... ) ,因此就需要激活多個 port 了!而且這些 port 是『隨機產生的』,也就是那個 port number 不會是固定的啦!每次 restart nfs 都會得到不一樣的 port number 呢!那么 Client 端怎么知道要連接上那個 port 來呼叫需要的 program 呢?呵呵!那就是 sunrpc ( port 111 ) 那個 portmap 服務所產生的 port number 的功用啦!Client 會先連接到 sunrpc 那個 port 去知道應該到那個 port 去呼叫所需要的程序!所以啰, rpc.xxxx 等之類的 daemon 自然就不需要有固定的 port number 啰!
 
 NFS客戶端的設定
 
復制代碼
代碼如下:

#mount -t nfs hostname(orIP):/directory /mountpoint
   搞定,就這么簡單
 為了擔心會不小心將 NFS 端掛進來的具有 SUID 權限檔案的程序執行,root可以將NFS 所分享的目錄以較為安全的情況掛載進來,可以
 
復制代碼
代碼如下:
#mount -t nfs -o nosuid,ro hostname:/directory /mountponit

可能出問題的地方:
1.權限的設定不符合
2.忘記了激活portmap,此時會報錯:
 mount: RPC: Port mapper failure - RPC: Unable to receive 或者
 mount: RPC: Program not registered
 那么,啟動portmap,并且重新啟動nfs
 

復制代碼
代碼如下:

#service portmap start
#service nfs restart

3.被防火墻搞掉
 重新設置防火墻,包括iptables與TCP_Wrappers,因為激活了portmap,所以port 111必須提供出去.因此在iptables rules中,要增加:
 
復制代碼
代碼如下:

iptables -A INPUT -p TCP --dport 111 -j ACCEPT
iptables -A INPUT -p UDP --dport 111 -j ACCEPT

 如果還不行,那就是TCP_Wrappers的問題,檢查/etc/hosts.deny,如果有一行是:
 
復制代碼
代碼如下:

ALL: ALL: deny

 那就必須在/etc/hosts.allow中增加:
 
復制代碼
代碼如下:

portmap: ALL: allow

 如果我們的NFS針對內部網絡開發,對于外部網絡只對學術網絡開發(140.0.0.0/8),可以:
 
復制代碼
代碼如下:

iptables -A INPUT -i eth0 -p TCP -s 192.168.0.0/24 --dport 111 -j ACCEPT
iptables -A INPUT -i eth0 -p UDP -s 192.168.0.0/24 --dport 111 -j ACCEPT
iptables -A INPUT -i eth0 -p TCP -s 140.0.0.0/8 --dport 111 -j ACCEPT
iptables -A INPUT -i eth0 -p UDP -s 140.0.0.0/8 --dport 111 -j ACCEPT

 還可以使用TCP_Wrappers,在/etc/hosts.allow里面規定連上 NFS 主機的主機 IP 與名稱,例如
 
復制代碼
代碼如下:

#vi /.etc/hosts.allow
portmap: 192.168.0.0/255.255.255.0 :allow
portmap: 140.113.23.23 :allow
portmap: .sdu.edu.cn :allow

 
RPC Server的相關命令

復制代碼
代碼如下:

rpcinfo
#rpcinfo -p hostname(orIP)

 
要注意的問題:
 需要注意的是,由于 NFS 使用的這個 RPC 在 client 端連上主機時,那么你的主機想要關機,那可就會成為『不可能的任務』!我還不知道正確的原因是什么,但是,如果你的 Server 上面還有 Client 在聯機,那么你要關機,可能得要等到數個鐘頭才能夠正常的關機成功!嗄!真的假的!不相信嗎?不然您自個兒試試看! ^_^!所以啰,建議您的 NFS Server 想要關機之前,能更先『關掉 portmap 與 nfs 』這兩個東西!如果無法正確的將這兩個 daemons 關掉,那么先以 netstat -utlp 找出 PID ,然后以 kill 將他關掉先!這樣才有辦法正常的關機成功喔!這個請特別特別的注意呢!
 
 在TurboLinux8.0 for AMD64 (kernel 2.4.21-4smp),mount NFS時候報錯為:
  portmap: server localhost not responding, timed out
 解決辦法:
 
復制代碼
代碼如下:

mount -t nfs -o nolock node1:/public /public

 即增加-o nolock參數,原因:
 Unfsd doesn't support NLM locking, and it's causing the lockd daemon to be started (which again requires the portmapper to be installed etc.)

標簽:優質穩定 臺州 海東 哈密 九江 孝感 玉樹 昌都

巨人網絡通訊聲明:本文標題《Linux下NFS網絡文件系統的基本使用教程》,本文關鍵詞  Linux,下,NFS,網絡,文件,系統,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux下NFS網絡文件系統的基本使用教程》相關的同類信息!
  • 本頁收集關于Linux下NFS網絡文件系統的基本使用教程的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    欧美mv日韩mv| 老鸭窝一区二区久久精品| 国产精品国产三级国产aⅴ中文| ww亚洲ww在线观看国产| 久久色视频免费观看| 国产三级精品三级在线专区| 中文字幕在线观看一区| 亚洲欧美国产三级| 五月婷婷色综合| 狠狠色丁香婷综合久久| av动漫一区二区| 欧美一区午夜精品| 国产丝袜美腿一区二区三区| 亚洲综合图片区| 精品亚洲欧美一区| 一本色道久久综合精品竹菊| 欧美一区二区在线看| 国产三级精品视频| 日韩激情视频在线观看| 国产精品亚洲专一区二区三区 | 欧美一级理论性理论a| 欧美mv和日韩mv的网站| 国产精品久久久久aaaa| 六月丁香婷婷色狠狠久久| 91在线免费看| 久久中文字幕电影| 亚洲不卡在线观看| 一本大道久久a久久精二百| 久久久欧美精品sm网站| 亚洲午夜免费视频| 波多野结衣在线一区| 欧美一区二区三区思思人| 亚洲欧美成aⅴ人在线观看| 国内一区二区在线| 欧美一区二区日韩| 五月激情丁香一区二区三区| 色综合欧美在线视频区| 亚洲区小说区图片区qvod| 成年人国产精品| 国产欧美日韩视频在线观看| 国产精品69久久久久水密桃| 日韩一区二区麻豆国产| 日本在线不卡一区| 日韩视频中午一区| 免费成人你懂的| 精品国产91乱码一区二区三区 | av亚洲产国偷v产偷v自拍| 久久久精品影视| 国产成人精品1024| 中文字幕免费一区| 91浏览器在线视频| 一区二区三区电影在线播| 91麻豆福利精品推荐| 午夜日韩在线电影| 欧美一级夜夜爽| 久久69国产一区二区蜜臀 | 亚洲国产中文字幕| 欧美一级久久久| 日本免费在线视频不卡一不卡二| 日韩亚洲欧美综合| 不卡av免费在线观看| 亚洲自拍偷拍av| 3d动漫精品啪啪一区二区竹菊 | 欧美午夜电影一区| 国产精品一区久久久久| 国产欧美日韩麻豆91| 91成人在线精品| 久久国产麻豆精品| 亚洲黄色免费网站| 日韩欧美一区二区不卡| 94色蜜桃网一区二区三区| 日韩vs国产vs欧美| 中文字幕在线播放不卡一区| 欧美猛男gaygay网站| 精品一区二区三区日韩| 亚洲三级电影网站| 久久免费美女视频| 欧美精品日韩一本| 色婷婷综合久久久中文一区二区| 麻豆成人综合网| 伊人性伊人情综合网| 久久久精品免费观看| 欧美日韩亚州综合| 99精品一区二区三区| 国产一区二区剧情av在线| 亚洲国产精品久久久久秋霞影院 | 日韩欧美中文字幕制服| 在线亚洲人成电影网站色www| 国产麻豆精品95视频| 日韩成人午夜电影| 日韩精品电影一区亚洲| 一区二区三区日韩精品| 日本一区二区成人| 精品理论电影在线| 欧美zozozo| 久久日一线二线三线suv| 91精品国产一区二区人妖| 欧美在线观看你懂的| 91免费观看在线| 91浏览器打开| 91福利在线看| 精品视频色一区| 欧美精品三级日韩久久| 91精品啪在线观看国产60岁| 91 com成人网| 精品欧美一区二区在线观看| 精品久久久久99| 国产精品天天看| 欧美性高清videossexo| 在线观看日韩电影| 97se亚洲国产综合自在线| 成人精品亚洲人成在线| 色噜噜夜夜夜综合网| 久久综合给合久久狠狠狠97色69| 亚洲三级电影网站| 黑人巨大精品欧美一区| 欧美日韩国产高清一区二区| 国产无遮挡一区二区三区毛片日本| 亚洲午夜久久久久久久久电影网| 成人性生交大片免费看中文| 精品第一国产综合精品aⅴ| 亚洲午夜私人影院| 91美女蜜桃在线| 99久久国产综合精品麻豆| 欧美日韩国产乱码电影| 日韩精品一区二区在线| 久久精品亚洲国产奇米99 | 欧美最新大片在线看| 成人网在线免费视频| 色哟哟日韩精品| 色一情一伦一子一伦一区| 制服丝袜激情欧洲亚洲| 亚洲综合色婷婷| 国产一区二区伦理片| 91在线高清观看| 国产欧美精品区一区二区三区| 亚洲欧洲日韩综合一区二区| 国产精品一二三在| 国产日韩亚洲欧美综合| 日韩有码一区二区三区| 91丨九色丨蝌蚪丨老版| 久久99九九99精品| 亚洲国产精品久久久久秋霞影院| 国产午夜精品在线观看| 91精品国产综合久久精品麻豆 | 色猫猫国产区一区二在线视频| 91一区一区三区| 国产a精品视频| 亚洲国产va精品久久久不卡综合 | 国产精品99久久久久久似苏梦涵| 亚洲一区二区欧美| 国产精品网站一区| 26uuu欧美| 日韩三级中文字幕| 欧美美女一区二区三区| 91美女在线视频| 国产成人亚洲精品青草天美| 蜜臀精品久久久久久蜜臀| 一区二区成人在线观看| 国产精品久久久久9999吃药| 久久久久久麻豆| 欧美成人精品3d动漫h| 91精品婷婷国产综合久久竹菊| 91高清视频免费看| 91麻豆自制传媒国产之光| 国产99久久久久| 国产成人自拍在线| 毛片av一区二区三区| 国产精品午夜春色av| 精品久久99ma| 99久久99久久免费精品蜜臀| 国产精选一区二区三区| 韩国精品久久久| 麻豆成人免费电影| 美女视频网站黄色亚洲| 奇米888四色在线精品| 日韩中文字幕91| 天天免费综合色| 日韩精品一二三| 日本va欧美va精品发布| 美女网站一区二区| 蜜臀a∨国产成人精品| 六月丁香综合在线视频| 精品一区二区在线看| 国产一区中文字幕| 床上的激情91.| 91在线免费看| 欧美在线不卡视频| 69堂精品视频| 精品嫩草影院久久| 久久久久成人黄色影片| 中文字幕av一区二区三区高| 成人欧美一区二区三区白人| 亚洲欧洲综合另类| 亚洲大型综合色站| 蜜臀91精品一区二区三区| 国产在线不卡一卡二卡三卡四卡| 成人永久免费视频| 色www精品视频在线观看| 欧美日韩国产高清一区二区 |