NFS文件服務安裝與配置

目錄

  1. 安裝NFS服務
  2. 配置NFS服務
  3. 知識擴展

1. 安裝NFS服務

1.1 環境準備

  • 192.168.202.14 文件存儲服務器 存儲位置:/storage/oafiles
  • 192.168.202.118 應用服務器 掛載位置:/storage/oafiles

1.2 安裝應用

  1. 在192.168.202.14服務器上安裝rpcbind應用
yum -y install rpcbind
  1. 在192.168.202.14服務器上安裝nfs應用
yum -y install nfs-utils nfs-utils-li
  1. 添加服務開機自啟動
chkconfig --level 35 nfs on
chkconfig --level 35 rpcbind on

2. 配置NFS服務

  1. 配置NFS服務目錄

在192.168.202.14服務器上, 修改/etc/exports文件

# vi /etc/exports

/storage/oafiles 192.168.202.118(rw,sync,no_root_squash,no_all_squash)
  1. 使NFS服務目錄生效
# exportfs -r
  1. 重啟NFS服務

啟動順序:先啟動rpcbind服務, 再啟動nfs服務,否則會出現clnt_create: RPC: Program not registered錯誤。

/etc/init.d/rpcbind restart
/etc/init.d/nfs restart
  1. 配置防火墻訪問策略
  • 在192.168.202.14服務器上配置NFS的服務端口, 修改配置文件/etc/sysconfig/nfs:
#  vi /etc/sysconfig/nfs
#
# Define which protocol versions mountd 
# will advertise. The values are "no" or "yes"
# with yes being the default
#MOUNTD_NFS_V2="no"
#MOUNTD_NFS_V3="no"
#
#
# Path to remote quota server. See rquotad(8)
#RQUOTAD="/usr/sbin/rpc.rquotad"
# Port rquotad should listen on.
RQUOTAD_PORT=875
# Optinal options passed to rquotad
#RPCRQUOTADOPTS=""
#
#
# Optional arguments passed to in-kernel lockd
#LOCKDARG=
# TCP port rpc.lockd should listen on.
LOCKD_TCPPORT=32803
# UDP port rpc.lockd should listen on.
LOCKD_UDPPORT=32769
#
#
# Optional arguments passed to rpc.nfsd. See rpc.nfsd(8)
# Turn off v2 and v3 protocol support
#RPCNFSDARGS="-N 2 -N 3"
# Turn off v4 protocol support
#RPCNFSDARGS="-N 4"
# Number of nfs server processes to be started.
# The default is 8. 
#RPCNFSDCOUNT=8
# Stop the nfsd module from being pre-loaded
#NFSD_MODULE="noload"
# Set V4 and NLM grace periods in seconds
#
# Warning, NFSD_V4_GRACE should not be less than
# NFSD_V4_LEASE was on the previous boot.
#
# To make NFSD_V4_GRACE shorter, with active v4 clients,
# first make NFSD_V4_LEASE shorter, then restart server. 
# This will make the clients aware of the new value. 
# Then NFSD_V4_GRACE can be decreased with another restart. 
#
# When there are no active clients, changing these values 
# can be done in a single server restart.
#
#NFSD_V4_GRACE=90
#NFSD_V4_LEASE=90
#NLM_GRACE_PERIOD=90
#
#
#
# Optional arguments passed to rpc.mountd. See rpc.mountd(8)
#RPCMOUNTDOPTS=""
# Port rpc.mountd should listen on.
MOUNTD_PORT=892
#
#
# Optional arguments passed to rpc.statd. See rpc.statd(8)
#STATDARG=""
# Port rpc.statd should listen on.
#STATD_PORT=662
# Outgoing port statd should used. The default is port
# is random
#STATD_OUTGOING_PORT=2020
# Specify callout program 
#STATD_HA_CALLOUT="/usr/local/bin/foo"
#
#
# Optional arguments passed to rpc.idmapd. See rpc.idmapd(8)
#RPCIDMAPDARGS=""
#
# Set to turn on Secure NFS mounts. 
#SECURE_NFS="yes"
# Optional arguments passed to rpc.gssd. See rpc.gssd(8)
#RPCGSSDARGS=""
# Optional arguments passed to rpc.svcgssd. See rpc.svcgssd(8)
#RPCSVCGSSDARGS=""
#
# To enable RDMA support on the server by setting this to
# the port the server should listen on
#RDMA_PORT=20049 

打開RQUOTAD_PORT=875、LOCKD_TCPPORT=32803、LOCKD_UDPPORT=32769、MOUNTD_PORT=892端口配置。

  • 配置防火墻

在192.168.202.14服務器上配置防火墻, 打開相應端口的訪問權限。

vi /etc/sysconfig/iptables
# Setting for NFS service
-A INPUT -m state --state NEW -m tcp -p tcp --dport 111 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 111 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1027 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 1027 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 875 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 875 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 892 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 892 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 32803 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 32769 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 2049 -j ACCEPT

保存退出后,重啟防火墻。

  1. 驗證NFS共享服務

在192.168.202.14上驗證NFS共享

# showmount -e

在192.168.202.118上驗證NFS共享

# showmount -e 192.168.202.14
  1. 客戶端掛載NFS目錄

在192.168.202.118服務器上掛載NFS文件服務。

mkdir -p /storage/oafiles
mount -t nfs 192.168.202.14:/storage/oafiles /storage/oafiles
  1. 客戶端測試

在192.168.202.118應用服務器上的掛載目錄下創建文件,然后登錄192.168.202.14的網絡文件服務目錄查看是否存在該文件。

3. 知識擴展

  1. exportfs命令
  • 命令格式

exportfs -r 或 exportfs -a 或 exportfs -u

  • 參數說明如下:

    • -a:全部掛載(或卸載)/etc/exports文件內的設定。
    • -r:重新掛載/etc/exports中的設置,此外同步更新/etc/exports及/var/lib/nfs/xtab中的內容。
    • -u:卸載某一目錄。
    • -v:在export時將共享的目錄顯示在屏幕上。
  1. /etc/exports文件
  • 內容格式

    <共享目錄> [客戶端1 選項(訪問權限,用戶映射,其他)] [客戶端2 選項(訪問權限,用戶映射,其他)]

  • 共享目錄:

    共享目錄是指NFS系統中需要共享給客戶機使用的目錄;

  • 客戶端:

    客戶端是指網絡中可以訪問這個NFS輸出目錄的計算機

    客戶端常用的指定方式

    • 指定ip地址的主機:192.168.0.200
    • 指定子網中的所有主機:192.168.0.0/24 192.168.0.0/255.255.255.0
    • 指定域名的主機:david.bsmart.cn
    • 指定域中的所有主機:*.bsmart.cn
    • 所有主機:*
  • 訪問權限選項

    • 設置輸出目錄只讀:ro
    • 設置輸出目錄讀寫:rw
  • 用戶映射選項

    • all_squash:將遠程訪問的所有普通用戶及所屬組都映射為匿名用戶或用戶組(nfsnobody);
    • no_all_squash:與all_squash取反(默認設置);
    • root_squash:將root用戶及所屬組都映射為匿名用戶或用戶組(默認設置);
    • no_root_squash:與rootsquash取反;
    • anonuid=xxx:將遠程訪問的所有用戶都映射為匿名用戶,并指定該用戶為本地用戶(UID=xxx);
    • anongid=xxx:將遠程訪問的所有用戶組都映射為匿名用戶組賬戶,并指定該匿名用戶組賬戶為本地用戶組賬戶(GID=xxx);
  • 其它選項

    • secure:限制客戶端只能從小于1024的tcp/ip端口連接nfs服務器(默認設置);
    • insecure:允許客戶端從大于1024的tcp/ip端口連接服務器;
    • sync:將數據同步寫入內存緩沖區與磁盤中,效率低,但可以保證數據的一致性;
    • async:將數據先保存在內存緩沖區中,必要時才寫入磁盤;
    • wdelay:檢查是否有相關的寫操作,如果有則將這些寫操作一起執行,這樣可以提高效率(默認設置);
    • no_wdelay:若有寫操作則立即執行,應與sync配合使用;
    • subtree:若輸出目錄是一個子目錄,則nfs服務器將檢查其父目錄的權限(默認設置);
    • no_subtree:即使輸出目錄是一個子目錄,nfs服務器也不檢查其父目錄的權限,這樣可以提高效率。
  1. 關于權限的分析

    1. 客戶端連接時候,對普通用戶的檢查

      • 如果明確設定了普通用戶被壓縮的身份,那么此時客戶端用戶的身份轉換為指定用戶;
      • 如果NFS server上面有同名用戶,那么此時客戶端登錄賬戶的身份轉換為NFS server上面的同名用戶;
      • 如果沒有明確指定,也沒有同名用戶,那么此時 用戶身份被壓縮成nfsnobody;
    2. 客戶端連接的時候,對root的檢查

      • 如果設置no_root_squash,那么此時root用戶的身份被壓縮為NFS server上面的root;
      • 如果設置了all_squash、anonuid、anongid,此時root 身份被壓縮為指定用戶;
      • 如果沒有明確指定,此時root用戶被壓縮為nfsnobody;
      • 如果同時指定no_root_squash與all_squash 用戶將被壓縮為 nfsnobody,如果設置了anonuid、anongid將被壓縮到所指定的用戶與組;

實踐總結

由于部署公司新OA系統測試環境的需要,要在OA系統應用服務器掛載網絡文件服務,在配置過程中查找了相關的材料,這些材料記錄的步驟并不全面,導致了配置錯誤, 在配置過程中, 我將每一步的步驟進行詳細記錄, 最后掛載目錄成功。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,622評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,716評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 178,746評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,991評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,706評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,036評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,029評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,203評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,725評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,451評論 3 361
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,677評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,161評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,857評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,266評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,606評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,407評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,643評論 2 380

推薦閱讀更多精彩內容

  • 1、第八章 Samba服務器2、第八章 NFS服務器3、第十章 Linux下DNS服務器配站點,域名解析概念命令:...
    哈熝少主閱讀 3,768評論 0 10
  • 姓名:張猛 【嵌牛導讀】:NFS是一種分布式的文件系統,用于共享文件和打印機。它允許用戶調用掛載遠端的文件系統或設...
    oliverabc閱讀 931評論 0 0
  • FTP服務概述 簡單FTP構建及訪問 VSFTP服務基礎 用戶禁錮、黑白名單 FTP并發及帶寬限制 一、FTP服務...
    紫_軒閱讀 7,671評論 3 25
  • 上回說到,高跟鞋小姐的母親答應她在她成年這一天可以跟著進城的鄰居南瓜叔叔一家一起去城里玩。 高跟鞋...
    南橘愛北枳閱讀 527評論 0 20
  • 楔子 話說,本上佛自那日受封為旃檀功德佛,日日在西天修習佛法,不知今夕何夕,多少歲月如今倏忽過矣。一日心念忽動,想...
    黎錦棠閱讀 515評論 0 1