linux 中NFS環境配置

 
建立的目的:可以直接在開發板上掛載開發主機上的文件系統,減少程序的燒寫次數,提高程序開發速度。

NFS(Network File System, 網絡文件系統)可以通過NFS把遠程主機的目錄掛載到本機,使得訪問遠程主機的目錄就像訪問本地目
錄一樣方便快捷。
NFS一般是實現linux系統之間實現共享.當然和unix之間也應該可以使用它來實現共享。但如果需要在linux和windows系統之間共
享, 就得使用samba了!,
NFS是一個RPC服務程序,所以在使用它之前, 先要映射好端口——通過portmap設定. 比如: 某個NFS client發起NFS服務請求時, 
它需要先得到一個端口(port).所以它先通過portmap得到port number.所以在啓動NFS之前, 需要啓動portmap服務!

安裝NFS服務程序:

Ubuntu上默認是沒有安裝NFS服務器的,首先要安裝NFS服務程序:

sudo apt-get install nfs-kernel-server
(安裝nfs-kernel-server時,apt會自動安裝nfs-common和portmap)
這樣,宿主機就相當於NFS Server。

與NFS相關的幾個文件, 命令
1、/etc/exports 對共享目錄的管理都是在這個文件中實現的
2、/sbin/exportfs 維護NFS的資源共享.通過它可以使修改後的/etc/exports中的的共享目錄生效關於這個命令的使用方法如下:

 exportfs [-aruv]

 -a :全部mount或者unmount /etc/exports中的內容

 -r :重新mount /etc/exports中分享出來的目錄

 -u :umount 目錄

 -v :在 export 的?r候,將詳細的信息輸出到屏幕上。

3、/usr/sbin/showmount 用在 NFS Server 端。主要用查看 RPC共享的連接

4、/var/lib/nfs/xtab NFS的記錄文檔:通過它可以查看有哪些Client 連接到NFS主機的記錄.

下面這幾個文件並不直接負責NFS, 實際上它們負責所有的RPC

5、/etc/default/portmap 實際上, portmap負責映射所有的RPC服務端口

6、/etc/hosts.deny 設定拒絕portmap服務的主機

7、/etc/hosts.allow 設定允許portmap服務的主機

添加共享目錄:

1.修改/etc/exports。/etc/exports是nfs服務器的核心配置文件。在/etc/exports中添加一個共享目錄。

/var/nfs/ *(rw,sync)
/var/nfs/是要共享的文件夾,*是表示所有用戶都可以掛載這個共享文件夾。這裏也可以替換成ip地址,網段(192.168.1.0/24)
或是主機名。(rw,sync)表示以讀寫方式掛載,並且遠程主機同步,sync是NFS的默認選項。關於括號內的參數還有以下幾種:
rw:可讀寫的權限;
ro:只讀的權限;
no_root_squash:登入到NFS主機的用戶如果是ROOT用戶,他就擁有ROOT的權限,此參數很不安全,建議不要使用。
root_squash:all_squash:不管登陸NFS主機的用戶是什麼都會被重新設定爲nobody。
anonuid:將登入NFS主機的用戶都設定成指定的user id,此ID必須存在於/etc/passwd中。
anongid:同 anonuid ,但是?成 group ID 就是了!
sync:資料同步寫入存儲器中。
async:資料會先暫時存放在內存中,不會直接寫入硬盤。insecure 允許從這臺機器過來的非授權訪問。

2 使用命令sudo exportfs -r 更新

3.重新啓動portmap服務和nfs-kernel-server服務

命令分別爲:

/etc/init.d/portmap start

/etc/init.d/nfs-kernel-server restart

uclinux端的配置:

在uclinux端在還需作一些配置纔可以使用mount來掛載遠程主機的NFS共享目錄.配置修改如下:

1)配置內核

選中ramdisk驅動,加入ext2文件系統

Networking options --> (缺省)

Network device support --> (缺省)

File systems --> Network File Systems --> NFS file system support

Provide NFSv3 client support

2)用戶程序配置(ramdisk中)

Network Applications --> portmap

BusyBox --> mount(mount nfs support)

測試使用NFS:

測試NFS啓動客戶端uclinux輸入命令:

mount -t nfs 192.168.1.242:/var/nfs /mnt -o nolock

可以使用ls /mnt查看掛載過來的文件。在uclinux下掛載遠程主機的共享文件主要是爲了實現遠程調試。在遠程主機上進行交叉編譯
之後,在uclinux下直接運行編譯好的程序。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章