国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
NFS的介紹和一些問題的總結(jié)
  1 NFS簡(jiǎn)介

網(wǎng)絡(luò)文件系統(tǒng)(Network File System),通常我們都直接稱呼其名為NFS,它可以在計(jì)算機(jī)間共享文件系統(tǒng)。NFS對(duì)用戶幾乎是透明的,并且是“無(wú)狀態(tài)的”,這意味著當(dāng)NFS服務(wù)器崩潰時(shí)不會(huì)丟失任何信息??蛻魴C(jī)只是等著服務(wù)器恢復(fù)正常,然后就好像什么也沒有發(fā)生過一樣繼續(xù)工作。


2 NFS服務(wù)器 

RPC(NFS服務(wù)需要依賴RPC服務(wù),這個(gè)比較重要)

要想了解NFS,必然要提到RPC這個(gè)服務(wù)。
因?yàn)镹FS支持的功能還是比較多的,并且不同的功能都會(huì)使用不同的程序來(lái)啟動(dòng)。每啟動(dòng)一個(gè)功能就會(huì)啟用一些端口來(lái)傳輸數(shù)據(jù),因此NFS的功能所對(duì)應(yīng)的端口才沒有固定,而是采用隨機(jī)取用一些未被使用的小于1024的端口來(lái)作為傳輸之用。但如此一來(lái)又造成客戶端要連接服務(wù)器時(shí)的困擾,因?yàn)榭蛻舳艘婪?wù)器端的相關(guān)端口才能夠聯(lián)機(jī),此時(shí)我們需要遠(yuǎn)程過程調(diào)用(RPC)的服務(wù)。
RPC最主要的功能就是指定每個(gè)NFS功能所對(duì)應(yīng)的端口號(hào),并且回報(bào)給客戶端,讓客戶端可以連接到正確的端口上。當(dāng)服務(wù)器在啟動(dòng)NFS時(shí)會(huì)隨機(jī)選用數(shù)個(gè)端口,并主動(dòng)地向RPC注冊(cè)。因此RPC可以知道每個(gè)端口對(duì)應(yīng)的NFS功能。然后RPC固定使用端口111來(lái)監(jiān)聽客戶端的請(qǐng)求并回報(bào)客戶端正確的端口,所以可以讓NFS的啟動(dòng)更為容易。
注意,啟動(dòng)NFS之前,要先啟動(dòng)RPC服務(wù);否則NFS無(wú)法向RPC注冊(cè)。另外,重新啟動(dòng)RPC時(shí)原本注冊(cè)的數(shù)據(jù)會(huì)不見,因此RPC重新啟動(dòng)后它管理的所有程序都需要重新啟動(dòng)以重新向RPC注冊(cè),比如NFS服務(wù)。

當(dāng)客戶端有NFS文件要存取請(qǐng)求時(shí),它向服務(wù)器端訪問數(shù)據(jù),有如下幾個(gè)步驟:
(1)客戶端會(huì)向服務(wù)器端的RPC(port 111)發(fā)出NFS文件存取功能的詢問請(qǐng)求。
(2)服務(wù)器端找到對(duì)應(yīng)的已注冊(cè)的NFS daemon端口后會(huì)回報(bào)給客戶端。
(3)客戶端了解正確的端口后,就可以直接與NFS守護(hù)進(jìn)程來(lái)聯(lián)機(jī),然后訪問數(shù)據(jù)。

其實(shí),我們可以簡(jiǎn)單的理解為:NFS當(dāng)作RPC服務(wù)中的一種,同時(shí)將RPC服務(wù)當(dāng)作NFS服務(wù)器與NFS客戶端的中間接口人,就是說(shuō)NFS客戶端訪問NFS服務(wù)器,必須經(jīng)過RPC這個(gè)接口人,才可以去訪問,否則就直接死翹翹了。

注:NFS使用TCP/IP提供的協(xié)議和服務(wù),并且位于OSI模型中的應(yīng)用層,具體如下:
層    數(shù) 名    稱 功    能
1 應(yīng)用層 NFS
2 表示層 XDR
3 會(huì)話層 RPC
4 傳輸層 UDP,TCP
5 網(wǎng)絡(luò)層 IP
6 數(shù)據(jù)鏈路層
7 物理層 Ethernet

3 安裝和配置NFS服務(wù)(只介紹SUSE版本的NFS的安裝)
3.1.1 安裝NFS服務(wù)
此步驟就直接跳過了,具體需要哪些包,可以到已經(jīng)安裝NFS服務(wù)的環(huán)境上面查看。
執(zhí)行命令即可查看:rpm -qa | grep nfs
 
配置NFS服務(wù),分為客戶端和服務(wù)端配置。
3.1.2 服務(wù)端配置,設(shè)定10.137.21.166為NFS服務(wù)器:
步驟如下:
1)服務(wù)端主要配置/etc/exports文件。
我們將需要共享出去的文件系統(tǒng)直接編輯到/etc/exports文件中,這樣當(dāng)NFS服務(wù)器重新啟動(dòng)時(shí),系統(tǒng)就會(huì)自動(dòng)讀取/etc/exports文件,從而告訴內(nèi)核要輸出的文件系統(tǒng)和相關(guān)的存取權(quán)限。

查看一個(gè)已經(jīng)配置好的exports文件,如下:
i2ksvr:~ # cat /etc/exports
/home/cabtimer/sharedisk/index/share 10.137.17.154(rw,async)
/home/impidx/sharedisk/searchidx *(rw,sync,anonuid=2900,all_squash)

注:下面介紹一些配置文件中常用的參數(shù)含義,以及客戶端的IP地址的格式。
rw:可讀寫權(quán)限。
ro:只讀權(quán)限。
no_root_squash:當(dāng)?shù)卿汵FS服務(wù)器主機(jī)使用共享目錄的使用者是root時(shí),其權(quán)限將被轉(zhuǎn)換成為匿名使用者,通常它的UID與GID都會(huì)變成nobody身份。
root_squash;如果登錄NFS主機(jī)使用共享目錄的使用者是root,那么對(duì)于這個(gè)共享的目錄來(lái)說(shuō),它具有root的權(quán)限,這樣會(huì)涉及到安全性的問題。
all_squash:忽略登錄NFS使用者的身份,其身份都會(huì)被轉(zhuǎn)換為匿名使用者,通常即nobody。
anonuid:通常為nobody,也可以自行設(shè)定這個(gè)UID的值,UID必須存在于/etc/passwd中。 
anongid:同anonuid,但是變?yōu)镚roup ID。
sync:同步寫入資料到內(nèi)存與硬盤中。
async:資料會(huì)先暫存于內(nèi)存中,而非直接寫入硬盤。

共享給客戶端的主機(jī)的IP地址可以使用以下格式。
單個(gè)機(jī)器:一個(gè)全限定域名(能夠被服務(wù)器解析)、主機(jī)名(能夠被服務(wù)器解析)或IP地址。 
使用通配符來(lái)指定的主機(jī)名或域名,使用 * 或 ?字符來(lái)指定一個(gè)字符串匹配。IP地址中不使用通配符。

IP網(wǎng)絡(luò):使用a.b.c.d/z,a.b.c.d是網(wǎng)絡(luò),z是子網(wǎng)掩碼中的位數(shù)(如192.168.0.0/24)。另一種可以接受的格式是a.b.c.d/netmask,a.b.c.d是網(wǎng)絡(luò),netmask是子網(wǎng)掩碼(如192.168.70.8/255.255.255.0)。
一般常用的是IP地址,或直接用*代替,共享給所有的機(jī)器。
如上面舉例的配置,一個(gè)指定了共享給固定IP的機(jī)器,另一個(gè)共享給所有的機(jī)器。

2)啟動(dòng)RPC服務(wù)
用法: /etc/init.d/portmap {start|stop|restart|force-reload|reload|status}

i2ksvr:~ # /etc/init.d/portmap start
Starting RPC portmap daemon                                         done
   (或直接執(zhí)行rcportmap start)

查看狀態(tài)
i2ksvr:~ # /etc/init.d/portmap status
Checking for RPC portmap daemon:                                  running
   
   查看111號(hào)端口是否處于監(jiān)聽狀態(tài)和詳細(xì)信息
i2ksvr:~ # netstat -utln | grep 111
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      
udp        0      0 0.0.0.0:111             0.0.0.0:*     

i2ksvr:~ # lsof -i :111
COMMAND   PID   USER   FD   TYPE    DEVICE SIZE NODE NAME
portmap 23048 nobody    3u  IPv4 398290132       UDP *:sunrpc 
portmap 23048 nobody    4u  IPv4 398290133       TCP *:sunrpc (LISTEN)   
  
  可以看到會(huì)有TCP和UDP兩個(gè)協(xié)議,之前NFS一直使用UDP協(xié)議,后來(lái)默認(rèn)采用TCP協(xié)議了。

注:以上版本是SuSe 10或之前的版本,而SuSe 11版本開始有點(diǎn)不同,SuSe 11版本啟動(dòng)RPC服務(wù)的方式為/etc/init.d/rpcbind start

3)啟動(dòng)NFS Server服務(wù)
用法:/etc/init.d/nfsserver {start|stop|status|try-restart|restart|force-reload|reload}


   i2ksvr:~ # /etc/init.d/nfsserver start
Starting kernel based NFS server                                      done
  (或直接執(zhí)行rcnfsserver start)

   查看狀態(tài):
i2ksvr:~ # /etc/init.d/nfsserver status
Checking for kernel based NFS server:                                running

4)查看共享出去的文件
執(zhí)行showmount –e命令,查看共享的信息。查看本機(jī)時(shí),不需要指定IP地址,此命令主要用在NFS客戶端,用來(lái)查看NFS服務(wù)器共享出來(lái)的目錄資源:

i2ksvr:~ # showmount –e 
Export list for i2ksvr:
/home/impidx/sharedisk/searchidx     *
/home/cabtimer/sharedisk/index/share 10.137.17.154

或執(zhí)行
i2ksvr:~ # showmount -e 10.137.21.166
Export list for 10.137.21.166:
/home/impidx/sharedisk/searchidx     *
/home/cabtimer/sharedisk/index/share 10.137.17.154

以上都說(shuō)明NFS服務(wù)器共享成功了。

5)介紹其他一些常用的命令和文件,有的很重要。
   exportfs命令
exportfs [-aruv]
參數(shù)說(shuō)明如下:
-a:全部掛載(或卸載)/etc/exports文件內(nèi)的內(nèi)容。
-r:重新掛載/etc/exports中的設(shè)置,此外同步更新/var/lib/nfs/xtab文件中的內(nèi)容。
-u:卸載某一目錄。
-v:在export時(shí)將共享的目錄顯示在屏幕上。
   比較常用的命令是:
   exportfs –rv  使配置重新生效


   如果修改了/etc/exports文件,執(zhí)行該exportfs命令重新讀取/etc/exports文件,從而就不需要重啟NFS服務(wù)了。
   


showmount命令:
 showmount [-ae] hostname
參數(shù)說(shuō)明如下:
-a或-all:顯示客戶主機(jī)名和掛載點(diǎn)目錄。
-d或-directories:僅顯示被客戶掛載的目錄名。
-e或-exports:顯示NFS服務(wù)器的輸出清單。
-h或-help:顯示幫助信息。
-v或-version:顯示版本信息。
–no-headers:禁止輸出描述頭部的信息。


當(dāng)要掃描某一主機(jī)所提供的NFS共享的目錄時(shí),使用showmount -e IP(或主機(jī)名稱hostname)即可。


 /var/lib/nfs/xtab和/var/lib/nfs/etab文件:
/var/lib/nfs/etab,主要記錄了NFS所分享出來(lái)的目錄的完整權(quán)限設(shè)定值;
/var/lib/nfs/xtab,記錄曾經(jīng)連接到此NFS主機(jī)的相關(guān)客戶端數(shù)據(jù)。


6)設(shè)置NFS Server開機(jī)自啟動(dòng)
  查看nfsserver服務(wù)的開機(jī)自啟動(dòng)狀態(tài),默認(rèn)是任何啟動(dòng)狀態(tài)都沒有啟動(dòng)nfsserver的。
i2ksvr:~ # chkconfig --list nfsserver
nfsserver                 0:off  1:off  2:off  3:off  4:off  5:off  6:off
 
  設(shè)置nfsserver在開機(jī)為多用戶模式和圖形界面模式時(shí),自啟動(dòng)nfsserver服務(wù)
i2ksvr:~ # chkconfig --level 35  nfsserver on
i2ksvr:~ # chkconfig --list nfsserver
nfsserver                 0:off  1:off  2:off  3:on   4:off  5:on   6:off




3.1.3 客戶端配置,設(shè)定10.137.17.154為NFS客戶端:


推薦客戶端使用mount命令來(lái)掛載,也可以直接編輯/etc/fstab文件的方法。
下面會(huì)介紹這兩種方法:


1)使用mount命令掛載
mount命令的格式如下:
mount[-t vfstype] [-o  options] device dir
mount命令參數(shù)非常多,下面就只列些常用的參數(shù),紅色標(biāo)注的為重要部分:
(1)-a:把/etc/fstab中列出的路徑全部掛載。
(2)-t:需要mount的類型,如nfs等。
(3)-r:將mount的路徑定為read only。
(4)-v mount:過程的每一個(gè)操作都有message傳回到屏幕上。
(5)rsize=n:在NFS服務(wù)器讀取文件時(shí)NFS使用的字節(jié)數(shù),默認(rèn)值是1 024個(gè)字節(jié)。
(6)wsize=n:向NFS服務(wù)器寫文件時(shí)NFS使用的字節(jié)數(shù),默認(rèn)值是1 024個(gè)字節(jié)。
(7)timeo=n:從超時(shí)后到第1次重新傳送占用的1/7秒的數(shù)目,默認(rèn)值是7/7秒。
(8)retry=n:在放棄后臺(tái)mount操作之前可以嘗試的次數(shù),默認(rèn)值是7 000次。
(9)soft:使用軟掛載的方式掛載系統(tǒng),若Client的請(qǐng)求得不到回應(yīng),則重新請(qǐng)求并傳
錯(cuò)誤信息。
(10)hard:使用硬掛載的方式掛載系統(tǒng),該值是默認(rèn)值,重復(fù)請(qǐng)求直到NFS服務(wù)器回應(yīng)。
(11)intr:允許NFS中斷文件操作和向調(diào)用它的程序返回值,默認(rèn)不允許文件操作被中斷。
(12)fg:一直在提示符下執(zhí)行重復(fù)掛載,即前臺(tái)繼續(xù)執(zhí)行掛載。
(13)bg:如果第1次掛載文件系統(tǒng)失敗,繼續(xù)在后臺(tái)嘗試執(zhí)行掛載。
(14)tcp:對(duì)文件系統(tǒng)的掛載使用TCP,而不是默認(rèn)的UDP。
(15)-w:將mount的路徑定為read/write,這個(gè)是默認(rèn)的配置參數(shù)。
  
   重點(diǎn)說(shuō)明一下軟掛載和硬掛載方式的不同:


對(duì)硬掛載文件系統(tǒng)來(lái)說(shuō),如果因?yàn)槟撤N原因遠(yuǎn)程系統(tǒng)的響應(yīng)失敗,比如NFS服務(wù)端掛掉等,則NFS客戶端將會(huì)持續(xù)地嘗試建立連接,這樣可能導(dǎo)致執(zhí)行df等命令出現(xiàn)掛死的現(xiàn)象。
而對(duì)軟掛載文件系統(tǒng)來(lái)說(shuō),同樣情況下,在指定的時(shí)間間隔后NFS客戶端將會(huì)放棄嘗試建立連接而發(fā)送一個(gè)錯(cuò)誤消息。
默認(rèn)采用硬掛載文件系統(tǒng),系統(tǒng)硬掛載嘗試失敗時(shí),對(duì)用戶輸入的響應(yīng)也會(huì)停止。正是因?yàn)檫@樣,有的用戶更喜歡采用軟掛載,它會(huì)使系統(tǒng)在嘗試掛載失敗后停止嘗試。


其實(shí),使用hard還是soft主要取決于訪問的信息。例如,要查看NFS服務(wù)器的視頻文件,不會(huì)希望由于一些意外的情況(如網(wǎng)絡(luò)速度變得很慢)而使系統(tǒng)輸出大量的錯(cuò)誤信息。如果此時(shí)使用hard方式,系統(tǒng)就會(huì)等待,直到能夠重新與NFS服務(wù)器建立連接傳輸信息。另外,如果是非關(guān)鍵數(shù)據(jù),也可以使用hard方式,如FTP一些數(shù)據(jù)等,這樣在遠(yuǎn)程機(jī)器暫時(shí)連接不上或關(guān)閉時(shí)就不會(huì)掛起會(huì)話過程。


mount掛載的示例:
mount -t nfs -o rw,soft,timeo=1,retry=1  
10.137.21.166:/home/cabtimer/sharedisk/index/share /test
將NFS服務(wù)端的/home/cabtimer/sharedisk/index/share掛載到本地的/test目錄下。


umount命令執(zhí)行卸載的示例:
umount /test


注:如果umount掛載點(diǎn)時(shí),出現(xiàn)長(zhǎng)時(shí)間不返回,掛死的情況,如下解決:
通過lsof | grep /test找出哪個(gè)進(jìn)程在訪問掛載點(diǎn);
確定該掛載目錄不再訪問的情況下,使用kill -9命令清理前面找出的訪問掛載點(diǎn)的進(jìn)程,再重新執(zhí)行umount命令就可以了;


2)直接配置/etc/fstab文件
   (1)編輯/etc/fstab文件,加入掛載NFS服務(wù)端的共享的目錄到本地目錄上,如下,加入了最下面的兩行共享內(nèi)容。


  rcs_solution:~ # cat /etc/fstab
/dev/sda2          /                    reiserfs   acl,user_xattr        1 1
/dev/sda5          /home                reiserfs   acl,user_xattr        1 2
/dev/sda6          /opt                 reiserfs   acl,user_xattr        1 2
/dev/sda7          /var                 reiserfs   acl,user_xattr        1 2
/dev/sda1          swap                 swap       defaults              0 0
proc               /proc                proc       defaults              0 0
sysfs              /sys                 sysfs      noauto                0 0
debugfs            /sys/kernel/debug    debugfs    noauto                0 0
usbfs              /proc/bus/usb        usbfs      noauto                0 0
devpts             /dev/pts             devpts     mode=0620,gid=5       0 0
shm              /dev/shm             tmpfs      size=16348644K        0 0
10.137.21.166:/home/cabtimer/sharedisk/index/share /test nfs soft,timeo=1 0 0
  
(2)配置/etc/fstab文件后,直接啟動(dòng)NFS客戶端,即可掛載NFS服務(wù)器共享的目錄。
     啟動(dòng)NFS Client:
     /etc/init.d/nfs start
     (或直接執(zhí)行rcnfs start啟動(dòng))
   
(3)執(zhí)行df -h查看掛載的信息:
rcs_solution:~ # df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              61G   14G   47G  24% /
udev                   16G  140K   16G   1% /dev
/dev/sda5              41G   21G   20G  51% /home
/dev/sda6              41G   35G  5.9G  86% /opt
/dev/sda7              11G  878M  9.2G   9% /var
shm                    16G  6.3G  9.4G  41% /dev/shm
/dev/sda8             387G   25G  363G   7% /home1
10.137.21.166:/home/cabtimer/sharedisk/index/share
                         41G   21G   20G   51% /test
 
4 NFS的常見故障的解決方案
4.1.1 NFS如果出現(xiàn)了問題,可以從以下幾個(gè)方面去考慮:
(1)/etc/exports文件配置是否正確
(2)RPC和NFS服務(wù)是否啟動(dòng)正常
(3)mount命令和/etc/fstab中的參數(shù)是否正確
(4)服務(wù)端的IP地址是否正常,能否ping通。
(5)執(zhí)行rpcinfo命令查看系統(tǒng)的RPC相關(guān)的信息。
在服務(wù)端執(zhí)行命令,可以看到如下的信息:
2ksvr:~ # rpcinfo -p
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100024    1   udp  45347  status
    100021    1   udp  45347  nlockmgr
    100021    3   udp  45347  nlockmgr
    100021    4   udp  45347  nlockmgr
    100024    1   tcp  38193  status
    100021    1   tcp  38193  nlockmgr
    100021    3   tcp  38193  nlockmgr
    100021    4   tcp  38193  nlockmgr
    100005    1   udp    785  mountd
    100005    1   tcp    786  mountd
    100005    2   udp    785  mountd
    100005    2   tcp    786  mountd
    100005    3   udp    785  mountd
    100005    3   tcp    786  mountd
在NFS客戶端,至少應(yīng)該有portmapper。




4.1.2 NFS中的一些錯(cuò)誤信息的具體含義:
錯(cuò)誤信息 具體描述
Too many levels of remote in path 試圖掛載一個(gè)存在的文件系統(tǒng)
Permission denied                             客戶端沒有權(quán)限去掛載NFS服務(wù)器的共享目錄,也可能是因?yàn)橛脩粼诜?wù)器上不存在
No such file or directory 通常是訪問的目錄不存在
NFS server is not responding 通常是NFS已經(jīng)超過負(fù)載或者NFS已經(jīng)停止工作
Stale file handle 在NFS客戶端關(guān)閉之前客戶端訪問的文件被刪除


解決問題如下:
(1)如果啟動(dòng)NFS服務(wù)器失敗,如下
i2ksvr:~ # /etc/init.d/nfsserver start
Starting kernel based NFS serverCannot register service: RPC: Unable to receive; errno = Connection refused
startproc:  exit status of parent of /usr/sbin/rpc.mountd: 1
                                                                      failed
則說(shuō)明,RPC服務(wù)沒有啟動(dòng)。如果已經(jīng)啟動(dòng),則可能是被防火墻所屏蔽。
解決方案是:執(zhí)行/etc/init.d/portmap start后,再啟動(dòng)nfsserver即可。或者關(guān)閉防火墻。


(2)如果執(zhí)行如下的mount命令失敗,如下
i2ksvr:~# mount -t nfs 10.137.21.166:/home/cabtimer/sharedisk/index/share /test
rpcbind: server localhost not responding, timed out
RPC: failed to contact local rpcbind server (errno 5).
rpcbind: server localhost not responding, timed out
RPC: failed to contact local rpcbind server (errno 5).


解決方案是:在mount命令中加入-o nolock選項(xiàng)就可以了。


 (3)當(dāng)在客戶端執(zhí)行mount掛載NFS服務(wù)器共享目錄時(shí),如果錯(cuò)誤信息是“Permission denied”,則表示NFS服務(wù)器不允許客戶機(jī)掛載。


解決方案是:更改服務(wù)端上的/etc/exports文件來(lái)解決問題,并使用exportfs-rv命令重新導(dǎo)出共享目錄。


  (4)如果出現(xiàn)的錯(cuò)誤是“Program not registed”,則是NFS服務(wù)可能沒有啟動(dòng)或者運(yùn)行不正常。
解決方案是:重新啟動(dòng)NFS服務(wù)。


(5)掛載共享目錄的時(shí)候,如果客戶端沒有任何反應(yīng),則可能為客戶端沒有啟動(dòng)RPC服務(wù)。
解決方案是:?jiǎn)?dòng)portmap服務(wù),然后再執(zhí)行掛載的操作。


(6)顯示“設(shè)備正忙”無(wú)法卸載。
在使用umount命令卸載共享目錄時(shí),出現(xiàn)“device is busy”等卸載失敗消息。通??赡艿脑蚴怯幸粋€(gè)進(jìn)程仍然在使用這個(gè)目錄。
解決方案是:可以使用lsof命令來(lái)查看是否有進(jìn)程正在使用該共享目錄,然后執(zhí)行kill -9操作,殺掉這些進(jìn)程,最后再執(zhí)行umount操作。


(7)NFS請(qǐng)求掛起
如果客戶端正在執(zhí)行寫操作,而此時(shí)服務(wù)器無(wú)法響應(yīng)或者在網(wǎng)絡(luò)上變得不可訪問,那么在默認(rèn)情況下(使用hard選項(xiàng)進(jìn)行掛載)客戶端進(jìn)程將掛起直到寫操作完成。如果不中止寫操作,進(jìn)程就不能從請(qǐng)求中退出。
解決方案是:這個(gè)需要根據(jù)實(shí)際的應(yīng)用場(chǎng)合來(lái)考慮。一般情況下,為了避免NFS請(qǐng)求掛起,在網(wǎng)絡(luò)狀況不穩(wěn)定情況下可以在掛載目錄時(shí)指定soft選項(xiàng)以允許操作因超時(shí)而退出,或者指定intr選項(xiàng)以允許用戶在命令行上通過按下Ctrl+C組合鍵退出掛起的操作。


(8)NFS掛載在引導(dǎo)時(shí)掛起。
如果在/etc/fstab文件中設(shè)置了自動(dòng)掛載NFS,但在系統(tǒng)引導(dǎo)時(shí)NFS共享目錄暫時(shí)不可用,那么默認(rèn)情況下引導(dǎo)進(jìn)程將進(jìn)入等待狀態(tài),直到NFS目錄變得可用為止。如果所需等待的NFS目錄是系統(tǒng)必須的,那么這種等待可能還可以接受。然而在很多情況下,用戶只想讓系統(tǒng)把掛載請(qǐng)求放在后臺(tái)并繼續(xù)引導(dǎo)系統(tǒng)??梢园裝g選項(xiàng)添加到/etc/fstab文件中,這樣在首次掛載請(qǐng)求超時(shí)之后,掛載請(qǐng)求會(huì)轉(zhuǎn)入后臺(tái),系統(tǒng)繼續(xù)引導(dǎo)。當(dāng)需要在前臺(tái)掛載NFS共享目錄時(shí)可以將fg選項(xiàng)添加到/etc/fstab文件的掛載選項(xiàng)中。




5 NFS客戶端參數(shù)的優(yōu)化
在一些業(yè)務(wù)當(dāng)中,出現(xiàn)過因?yàn)镹FS服務(wù)器的IP地址down掉,或者異常等情況,導(dǎo)致了NFS客戶端訪問進(jìn)程的長(zhǎng)時(shí)間處于掛死的狀態(tài),沒有響應(yīng)。


查看了NFS的官方網(wǎng)站,里面介紹了一些優(yōu)化的參數(shù),比如說(shuō),客戶端需要加入
參數(shù):soft,timeo=1,retry=1,tcp(默認(rèn)就是采用tcp協(xié)議),其實(shí)就是采用軟連接的方式去掛載NFS服務(wù)器共享的目錄,這樣NFS客戶端就不會(huì)出現(xiàn)掛死的現(xiàn)象。


舉例:
mount -t nfs -o rw,soft,timeo=1,retry=1 
10.137.21.166: /home/cabtimer/sharedisk/index/share /test




6 附錄:設(shè)置系統(tǒng)防火墻,開放portmap端口號(hào)
打開portmap的端口號(hào)
iptables -A INPUT -p TCP --dport 111 -j ACCEPT
iptables -A INPUT -P UDP --dport 111 -j ACCEPT
iptables-save > /etc/sysconfig/iptables


在文件/etc/hosts.allow文件中加入如下內(nèi)容,允許這些服務(wù)訪問:
portmap:ALL
nfsserver:ALL
nfs:ALL  
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
關(guān)于NFS端口的配置
ChinaUnix.net
CentOS 8.2上部署NFS服務(wù)器和客戶端
Linux下實(shí)現(xiàn)文件共享nfs服務(wù)實(shí)踐
處理Centos5.5 x64 配置NFS服務(wù)過程中nfsnobody用戶造成的問題
NFS & Automount
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服