【arm-linux之旅】掛載NFS根文件目錄

爲了加快應用的開發速度,比較推薦的方式是在引導kernel以後經過網絡掛載到主機設置的nfs文件夾中。減小了來回拷貝的麻煩

開發環境linux

  • 主機:ubuntu 16.04 x64
  • 開發板:NUC980 linux-4.4內核

NFS服務器配置

sudo apt install nfs-kernel-server    // 安裝NFS服務器
sudo vim /etc/exports    // 配置NFS文件夾
exportfs -r    // 檢查NFS配置
sudo /etc/init.d/nfs-kernel-server restart    // 重啓服務器
sudo ufw disable    // 關閉防火牆

NFS文件夾配置

配置文件位置爲 /etc/exports,寫完後經過exportfs -r檢查

/NFS_ROOT_NAME  (rw,sync,insecure,all_squash)

ro 該主機對該共享目錄有隻讀權限
rw 該主機對該共享目錄有讀寫權限
root_squash 客戶機用root用戶訪問該共享文件夾時,將root用戶映射成匿名用戶
no_root_squash 客戶機用root訪問該共享文件夾時,不映射root用戶
sync 資料同步寫入到內存與硬盤中
async 資料會先暫存於內存中,而非直接寫入硬盤
insecure 容許從這臺機器過來的非受權訪問

all_squash 客戶機上的任何用戶訪問該共享目錄時都映射成匿名用戶
anonuid 將客戶機上的用戶映射成指定的本地用戶ID的用戶
anongid 將客戶機上的用戶映射成屬於指定的本地用戶組ID

內核配置

在內核的menuconfig中,打開如下選項ubuntu

  1. 打開網絡相關選項vim

    Networking support  --->
        Networking options  --->
            [*] TCP/IP networking
            [*]   IP: kernel level autoconfiguration
            [*]     IP: DHCP support
            [*]     IP: BOOTP support
            [*]     IP: RARP support
  2. 打開NFS文件系統相關選項服務器

    File systems  --->
        [*] Network File Systems  --->
            <*>   NFS client support
            <*>     NFS client support for NFS version 2
            <*>     NFS client support for NFS version 3
            [*]   Root file system on NFS
  3. 內核引導參數網絡

    root=/dev/nfs
    nfsroot=s.s.s.s/path
    ip=localAddress:serverAddress:gateway:netmask
相關文章
相關標籤/搜索