NFS 就是 Network FileSystem 的縮寫,最早之前是由 Sun 這家公司所發展出來的 。 它最大的功能就是可以透過網絡,讓不同的機器、不同的操作系統、可以彼此分享個別的檔案 (share files)。所以,你也可以簡單的將他看做是一個文件服務器 (file server) !這個 NFS 服務器可以讓你的 PC 來將網絡遠程的 NFS 服務器分享的目錄,掛載到本地端的機器當中, 在本地端的機器看起來,那個遠程主機的目錄就好像是自己的一個磁盤分區槽一樣 !使用上面相當的便利!下圖可以清楚的瞭解NFS服務器端和客戶端的關係了。
NFS 服務器的設定
[root@localhost ~]#mkdir /mnt/cdrom
[root@localhost ~]#mount /dev/cdrom /mnt/cdrom
[root@localhost ~]# cd /mnt/cdrom/Server/
一、建立共享的目錄
# mkdir /tmp/abc
# chmod o+wt /tmp/test //更改其他用戶寫入權限 只能由其他用戶刪除
二、主要配置文件:/etc/exports
[root@localhost ~]# vim /etc/exports
/tmp/abc * (rw) 任何用戶都有寫入的權限
三、啓動nfs服務
[root@localhost ~]# service nfs start
NFS 客戶端的設定
[root@localhost ~]# service nfs start 在客戶端啓動NFS
[root@localhost ~]# showmount -e 192.168.10.10
掃瞄 NFS 服務器共享的目錄
手工掛載:
[root@localhost ~]# mkdir /mnt/abc 在客戶端建立掛載點
[root@localhost ~]# mount 192.168.10.10:/tmp/abc /mnt/abc/ mount 掛載到創建的目錄
[root@localhost abc]# cd /mnt/abc/
我們在先前在/etc/exports裏面允許任何用戶寫入,我們怎麼實現只允許某個用戶擁有寫入的權限呢?
[root@localhost ~]# vim /etc/exports 只需要修改下配置文件就可以了
/tmp/etc/abc 192.168.10.10 (rw) 只允許192.168.10.10寫入 其他用戶只有讀取權限
下面我們實現開機自動掛載NFS
方法一:加入開機啓動項
[root@localhost ~]# vim /etc/rc.d/rc.local
方法二:加入開機自動掛載選
[root@localhost ~]# vim /etc/fstab
自動掛載 autofs 的使用
我們知道 NFS 服務器與客戶端的聯機或許不會永遠存在,而 RPC 這個服務又挺討厭的,如果掛載了 NFS 服務器後,任何一方脫機都可能造成另外一方老是在等待逾時~而且,掛載的 NFS 文件系統可能又不是常常被使用,但若不掛載的話,有時候緊急要使用時又得通知系統管理員, 這又很不方便...啊!
所以,讓我們換個思考的角度來討論一下使用 NFS 的情境:
可不可以讓客戶端在有使用到 NFS 文件系統的需求時才讓系統自動掛載?
當 NFS 文件系統使用完畢後,可不可以讓 NFS 自動卸除,以避免可能的 RPC 錯誤?
如果能達到上述的功能,那就太完美啦!有沒有這東西呢?有的,在現在的 Linux 環境下這是可以達成的理想!用的就是 autofs 這個服務啦!
下面通過案例講解下autofs的使用
[root@localhost ~]# vim /etc/auto.master // autofs的配置文件
監控/mnt/abc 實現自動掛載 /etc/auto.nfs掛載的參數 10秒不進行操作自動卸載
我們要設施掛載的參數
[root@localhost abc]# cp /etc/auto.misc /etc/auto.nfs 可以拷貝auto.misc模仿格式進行配置
[root@localhost ~]# fuser -km /mnt/abc/ 卸載掉我們剛剛手工掛載的 實現autofs自動掛載
[root@localhost ~]# umount /mnt/abc/
下面啓動服務(service autofs start)進行測試
[root@localhost abc]# cd server server是我們配置auto.nfs的標識 切換到server即可實現自動掛載
我們再來測試下 自動卸載 我們設置的是10秒都自動卸載
至此已經實現了autofs的自動掛載與 自動卸載