两个 UbuntuUbuntuUbuntuUbuntu之间搭建 NFSNFSNFSNFS网络系统
1111、将两台安装了 ubuntuubuntuubuntuubuntu的 pcpcpcpc中的一台设置为 NFSNFSNFSNFS服务器
SudoSudoSudoSudo apt-getapt-getapt-getapt-get installinstallinstallinstall nfs-kernel-servernfs-kernel-servernfs-kernel-servernfs-kernel-server
SudoSudoSudoSudo apt-getapt-getapt-getapt-get installinstallinstallinstall nfs-commonnfs-commonnfs-commonnfs-common
SudoSudoSudoSudo apt-getapt-getapt-getapt-get installinstallinstallinstall portmapportmapportmapportmap
配置:sudosudosudosudo geditgeditgeditgedit /etc/exportfs/etc/exportfs/etc/exportfs/etc/exportfs
在最下面添加
/home/abigail/nfs/home/abigail/nfs/home/abigail/nfs/home/abigail/nfs 192.168.1.*192.168.1.*192.168.1.*192.168.1.*(rwrwrwrw,no_root_squash)qno_root_squash)qno_root_squash)qno_root_squash)q
((((共享的文件夹路径)允许连接到服务器的客户端的 ipipipip,若是****则
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
示这个网段的都可以连
接 权限
将修改过的配置文件重新导入:sudosudosudosudo exportfsexportfsexportfsexportfs -rv-rv-rv-rv
重新启动 potmappotmappotmappotmap服务(端口映射):sudosudosudosudo /etc/init.d/portmap/etc/init.d/portmap/etc/init.d/portmap/etc/init.d/portmap restartrestartrestartrestart
重新启动 nfsnfsnfsnfs服务:sudosudosudosudo /etc/init.d/nfs-kernel-server/etc/init.d/nfs-kernel-server/etc/init.d/nfs-kernel-server/etc/init.d/nfs-kernel-server restartrestartrestartrestart
这样 NFSNFSNFSNFS服务器就配置好了。
2222、NFSNFSNFSNFS客户端
安装 NFSNFSNFSNFS客户端
sudosudosudosudo apt-getapt-getapt-getapt-get installinstallinstallinstall portmapportmapportmapportmap
SudoSudoSudoSudo apt-getapt-getapt-getapt-get installinstallinstallinstall nfs-commonnfs-commonnfs-commonnfs-common
使用 mountmountmountmount命令进行挂载
SudoSudoSudoSudo mountmountmountmount ((((服务器的 ipipipip):(共享的文件目录) ((((挂在到本机的目录)
例: sudosudosudosudo mountmountmountmount 192.168.1.100:/home/abigial/mynfs192.168.1.100:/home/abigial/mynfs192.168.1.100:/home/abigial/mynfs192.168.1.100:/home/abigial/mynfs /mnt/mnt/mnt/mnt
如果本机的/mnt/mnt/mnt/mnt目录下看到服务器的的 mynfsmynfsmynfsmynfs目录中的东西,说明 NFSNFSNFSNFS搭建成功
参考资料:
出致:http://iyubo.blogbus.com/logs/21769098.html
http://www.ubuntugeek.com/nfs-server-and-client-configuration-in-ubuntu.html
安装 NFSNFSNFSNFS服务器
$ sudo apt-get install nfs-kernel-server nfs-common portmap
注意: 当配置 portmap的时候不要绑定 loopback. 你可以使用下面的命令编辑/etc/default/portmap
$ sudo vi /etc/default/portmap
或者
$ sudo dpkg-reconfigure portmap
编辑完后重启 portmap
$ sudo /etc/init.d/portmap restart
NFSNFSNFSNFS服务器配置
NFS的输出是通过/etc/exports这个配置文件控制的. 每一行以要输出的目录的绝对路径开始,后跟允许访
问的客户端,以空白分隔符分开(tab)。
一些 exports文件的 quick examples:
允许一个网段上的所有机器都有完全读写权限
/files 192.168.1.1/24(rw,no_root_squash,async)
只允许单台机器以只读权限访问
/files 192.168.1.2 (ro,async)
客户端可以使用主机明或者 IP地址指定。在主机名中可以使用通配符(*),IP地址后也可以跟掩码段(/24),
但出于安全原因这种情况应该尽量避免。
客户端的说明后可在圆括号中加入一系列参数。注意,很重要的一点,不要在最后一个客户端声明的后面
留下任何空白或者没关闭括号,因为空白都被解释成客户端的分隔符。
常用参数:
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
anongid=xxx:指定 NFS服务器/etc/passwd文件中匿名用户的 GID
重启 nfs服务
$ sudo /etc/init.d/nfs-kernel-server restart
如果在运行 NFS服务的时候修改了/etc/exports,可执行下面命令让配置生效
$ sudo exportfs -a
安装 NFSNFSNFSNFS客户端支持
$ sudo apt-get install portmap nfs-common
这会安装所有 nfs客户端需要的包
手动挂载
举例说明,要挂载 server.mydomain.com:/files到本机的/files文件夹。server.mydomian.com是提供 nfs 共
享服务的服务器名,files是 nfs服务器上共享的文件夹名,挂载点/files必须在客户端机器上存在,如没有
需要手动创建
创建挂载点
$ sudo mkdir files
挂载
$ sudo mount server.mydomain.com:/files /files
完成后即可在客户端访问 nfs服务器上共享的文件夹
重启 nfs服务
$ sudo /etc/init.d/portmap restart
$ sudo /etc/init.d/nfs-common restart
使用/etc/fstab/etc/fstab/etc/fstab/etc/fstab实现自动挂载
$ sudo gedit /etc/fstab
举例:
server.mydomain.com:/files /files nfs rsize=8192,wsize=8192,timeo=14,intr
你可以根据你的实际情况修改nfs服务器共享文件夹“servername.mydomain.com:/files”和在本机的挂载点
“/files”.
nfs常见挂载参数:
timeo: 如果超时,客户端等待的时间,以十分之一秒计算
retrans: 超时尝试的次数。
bg: 后台挂载,很有用
hard: 如果 server端没有响应,那么客户端一直尝试挂载
wsize: 写块大小
rsize: 读块大小
intr: 可以中断不成功的挂载
noatime: 不更新文件的 inode访问时间,可以提高速度
async: 异步读写
NFSNFSNFSNFS防火墙端口
如果你有防火墙,请确保 32771, 111和 2049端口保持开放
测试
$ mount /files
看看挂载成功与否
参考文章
NFS Server and Client Configuration in Ubuntu