ubuntu nfs mount 挂载的经验

来源:互联网 发布:汽车销售网站源码 编辑:程序博客网 时间:2024/05/18 16:54

项目要求,导师让挂载他的机器远程编程,结果因为路径最后一个字符大写没注意,搞了半天,各种尝试,气死了,不过也收获了nfs  mount的一些用法。

首先,nfs:网络文件系统,想要mount远程的机器(上的某一文件夹),就要靠它在中间提供支持。

下面说正题:

1.我的系统时ubuntu 14.04  ,要使用nfs,要装两个东西:

(terminal下: )
sudo apt-get install nfs-kernel-server   # 这是nfs的核心服务

sudo apt-get install nfs-common # 安装nfs的客户端


2.我们使用mount可以将本地的某个文件夹共享到网络上,共别人挂载使用:

实现这个功能只要配置 /etc/exports 这个文件,然后重启nfs服务就可以了

首先:sudo vim /etc/exports   # vim 没装的自己搞定, 访问权限什么的有sudo在,不怕

具体的格式是: 本地路径(空格)可以访问的网段(没有空格)(参数。。。。)

举例子:

(1) /home/jacobxu/nfs-jacoxu  *(rw,sync,no_root_squash,no_subtree_check)

这里就是将本地的 /home/jacobxu/nfs-jacoxu文件夹共享到网络,后面的星号表示全网段的人都可以挂载访问你的文件夹,(前提是知道你的ip)

(2)/home/jacobxu/nfs-jacoxu  192.168.111.*(rw,sync,no_root_squash,no_subtree_check)

这里的网段设置与(1)不同而已,以此类推


关于参数的问题,常见的如下:

rw:挂接此目录的客户端对该共享目录具有读写权限
sync:资料同步写入内存和硬盘
no_root_squash:root用户具有对根目录的完全管理访问权限。
no_subtree_check:不检查父目录的权限。


更具体的参数解释:

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


上面配置好,退出exports,重启nfs服务器:

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

然后,其他的小朋友们就以通过网络访问你挂载的文件夹啦,前提是他们都装了nfs服务,并且知道你挂载的文件夹的载网络上的绝对路径

例子:

sudo   mount   -t      nfs 192.168.0.103:/nfs /mnt/nfs/     /home/xxx(你的主机名)/xxx(你本地的文件夹路径:将远程文件夹映射到这里)

解除挂载:

sudo   umount   -t    nfs   /home/xxx(你的主机名)/xxx(你本地的用于挂载的文件夹路径)

3.当然,你如果闲着无聊,也可以将本地一个文件夹挂载到另一个文件夹下,呵呵,具体方法就不说了,想不出来,上面的内容就不要看了把。。。

关于mount和nfs,这里没有讲的很详细,只是做个笔记,更多的功能以后用到了再更新吧




0 0
原创粉丝点击