基於SUSE Linux做NFS文件掛載
linux文件掛載其實和windows文件共享原理差不多,由主機配置一個共享目錄,客戶端機器可以通過網絡訪問該共享目錄。
下面以SUSE11為例子,簡要描述下NFS文件掛載過程:
一、主機端(主機IP192.168.0.100)
1、准備工作,主機需要完成NFS環境搭建
安裝:portmap-6.0+git20070716-31.16.x86_64.rpm (用作端口映射,把RPC程序號轉化為Internet的端口號)
安裝:nfs-kernel-server-1.2.1-2.6.6.x86_64.rpm (NFS服務)
2 設置共享目錄
mkdir /opt/share
3、編輯exports文件 vi /etc/exports
後面追加
/opt/share 192.168.0.*(rw,no_root_squash)
這裡可以配置單個IP,也可設置整個網段都可以訪問(192.168.0.*),還可以設置多個網段(192.168.0.0/2)
下面是一些NFS共享的常用參數:
ro 只讀訪問
rw 讀寫訪問
sync 所有數據在請求時寫入共享
async NFS在寫入數據前可以相應請求
secure NFS通過1024以下的安全TCP/IP端口發送
insecure NFS通過1024以上的端口發送
wdelay 如果多個用戶要寫入NFS目錄,則歸組寫入(默認)
no_wdelay 如果多個用戶要寫入NFS目錄,則立即寫入,當使用async時,無需此設置。
hide 在NFS共享目錄中不共享其子目錄
no_hide 共享NFS目錄的子目錄
subtree_check 如果共享/usr/bin之類的子目錄時,強制NFS檢查父目錄的權限(默認)
no_subtree_check 和上面相對,不檢查父目錄權限
all_squash 共享文件的UID和GID映射匿名用戶anonymous,適合公用目錄。
no_all_squash 保留共享文件的UID和GID(默認)
root_squash root用戶的所有請求映射成如anonymous用戶一樣的權限(默認)
no_root_squas root用戶具有根目錄的完全管理訪問權限
anonuid=xxx 指定NFS服務器/etc/passwd文件中匿名用戶的UID
4、啟動服務
service rpcbind start
service nfsserver start
如果已經啟動了服務,修改配置後需要重啟
service rpcbind restart
service nfsserver restart
二、客戶端
1、啟動rpcbind服務
service rpcbind start
2、創建共享目錄
mkdir /opt/getShare
3、掛載共享目錄
mount -t nfs 192.168.0.100:/opt/share /opt/getShare