freebsd nfs 挂载遇到的问题

在电脑里,安装了FreeBSD的虚拟机器,并且想通过nfs来实现主机与虚拟机之间共享目录。共享的目的是我希望在主机上可以读写FreeBSD上的文件、创建文件,并在FreeBSD上进行编译。

在网上搜索教程和在FreeBSD的手册中,都看到需要进行大致配置,如下:

在 /etc/rc.conf 中增加如下配置:

nfs_server_enable="YES"

nfs_server_flags="-u -t -n 4"

mountd_flags="-r"

rpcbind_enable="YES"

rpcbind_flags="-r"

rpc_lockd_enable="YES"

rpc_statd_enable="YES"

配置中具体用途,可以参见FreeBSD手册的NFS介绍。

http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-nfs.html

同时,需要配置 /etc/exports 文件,我当时配置如下:

/home   -maproot=xxxx -alldirs 10.10.0.100

其中,xxxx 是主机上的用户名,10.10.0.100 上主机IP。FreeBSD 的虚拟机是通过桥模式连接到网络的,与主机同在一个网段,IP 为 10.10.0.101

配置完后,执行命令:

service nfsd restart

service mountd onereload

执行完命令后,在主机上进行挂载:

mount -t nfs 10.10.0.101:/home  ~/nfs

挂载成功后,偿试对/home下文件进行编辑,但失败,原因是文件是只读的,于是通过chmod给文件加上写权限,便可以写文件了。但是创建文件时,发现不能创建,经查找,发现在目录对其他用户没有写权限,所以又给目录加了权限,于是便可以创建文件了。

但是发现通过给文件加写权限是不合适的,会破坏文件原有的权限,不安全。于是为了能够保持良好的权限,我在FreeBSD上创建xxxx的用户,并把/home/xxxx目录通过nfs分享出去。在主机上挂载/home/xxxx后,发现不需要修改权限,就可以进行读写了。

通过此次nfs经验,在配置nfs时,需要注意到三个地方:

  1. exports 文件中-maproot=xxxx的用户名配置,为客户端机器所用的用户名
  2. 客户端用户名要对应-maproot=xxxx
  3. 通过nfs分享出去的目录文件权限,也要使xxxx用户可读写,才能够在客户端自由地进行文件读写与创建。

----

为了实现我的目的:主机上编写文件,FreeBSD上编译执行,通过rsync,ftp 也可以实现,只是每次需要手动同步。而我实际上也搭建了rsync用来同步,只要把rsync命令写到expect文件中并配置好密码,可以直接运行脚本同步了,也挺方便的。

时间: 2025-01-23 05:10:49

freebsd nfs 挂载遇到的问题的相关文章

NFS挂载文件系统出现nfs is not responding,still trying

采用NFS挂载根文件系统启动开发板出现: 1 nfs xxx is not responding,still trying 2 nfs xxx is OK 3 nfs xxx is not responding,still trying 4 ............... 不断的出现没有回应..成功..要很长时间才能启动开发板 解决办法: 修改uboot启动配置 uboot之前的启动配置: 1 setenv bootargs noinitrd console=ttySAC0,115200 ini

nfs 挂载

nfs 挂载试验 172.16.74.105 nfs client 172.16.74.106 nfs server nfs 上 第一步: nfs server 上安装     (nfs  client  上也需要安装) yum install nfs-utils 第二步: nfs配置文件 # cat /etc/exports /tmp *(rw,sync,no_root_squash) 第三步: nfs启动 # /etc/init.d/rpcbind start # /etc/init.d/n

ZYNQ的NFS挂载

好长时间没摸带mmu的ARM处理器了,今天应同学要求,折腾了一下NFS的挂载,因为bootloader是我的兴趣,平常要么使用串口进行数据传输,要么使用dnw进行usb数据传输,NFS也总是在做,就是做了忘,今天特意花了点时间把调试的过程记录一下,以备以后参考. :P首先在虚拟机下确定确定NFS和PORTMAP是否已经打开,并在etc/exports下输入/NFS 218.199.182.*(rw,sync,no_root_squash),网段根据你现在所在网段进行修改,主机和设备一定要是在同一

m283-tftp传输,nfs挂载rootfs

Ubuntu中搭建tftp服务器 第 1  步:安装 tftp 安装 tftp 所需的软件.首先需要安装 tftp-hpa,tftpd-hpa,前者是客户端,后者是服务程序, 在终端下输入 sudo apt-get install tftp-hpa tftpd-hpa ,安装 tftp-hpa 和 tftpd-hpa.然 后还需要安装 xinetd,在终端下输入 sudo apt-get install xinetd ,安装好 xinetd. 第 第 2  步:配置/etc/xinetd.con

AIX上 断开的NFS 挂载点 导致 Oracle instance hang 住

翻译自mos文章:Disconnected NFS Mount Point Causes Instance to Hang on AIX (文档 ID 1445600.1) 适用于: Oracle Server - Enterprise Edition - Version: 10.2.0.1 and later   [Release: 10.2 and later ] IBM AIX on POWER Systems (64-bit) IBM AIX on POWER Systems (32-b

rsync+inotify实时备份加nfs挂载实战

因公司近期业务要求需要搭建一套服务具体要求如下图: 1.基本备份要求 已知 3 台服务器主机名分别为A(web01).B(backup) .C(nfs01) 要求: 每天晚上 0 00 点整在 b Web 服务器 A A 上 打包 备份系统配置文件.网站程序目录及访 问日志并通过 c rsync 命令推送备份服务器 B B 上备份保留(备份思路可以是先在本地按日期 打包,然后再推到备份服务器 B B 上). 具体要求如下: 1)Web 服务器 A 和备份服务器 B 的备份目录必须都为/backu

根文件系统制作、NFS配置与安装及利用NFS挂载根文件系统

最近打算从头开始制作根文件系统,下面是开发过程. 一.根文件系统的制作 0.FHS(Filesystem Hierarchy Standard)标准介绍 该标准规定了根目录下各个子目录的名称及其存放的内容: 目录名 存放的内容 /bin 必备的用户命令,例如ls.cp等 /sbin 必备的系统管理员命令,例如ifconfig.reboot等 /dev 设备文件,例如mtdblock0.tty1等 /etc 系统配置文件,包括启动文件,例如inittab等 /lib 必要的链接库,例如C链接库.内

nfs挂载系列问题解决方案

生成环境下nfs挂载完毕后并不能一帆风顺,nfs时常会出现挂载问题.但只要有方法, 是非常容易解决的. 首先我们需要判断出是nfs服务端问题,还是客户端问题.  如果是单纯的客户端问题,则可以使用fuser命令轻松解决. 具体如下: fuser -mv /mnt 可以查看到当前占用/mnt目录的进程. 使用fuser -mk /mnt 直接杀死这个进程. 如果你不是很明确是否要杀死所有霸占设备的程序,你还可以加一个-i 参数, 这样每杀死一个程序前,都会询问,(如fuser -mv -i -k 

nfs挂载

一 编译arm内核 #make menuconfig ARCH=arm   //编译内核的配置菜单 (1)把general->下的 []initial ...    //  把这项给去掉了.按n. (2)进入file  system 找到network filesystem [*]root filesystem // 选中这项 二配置开发板uboot的环境变量 #setenv bootargs noinitrd console=ttySAC0,115200 init=/init root=/de