目前,越来越多的项目不再是单机,而是趋向于分布式部署,所以在分布式部署就需要文件共享,例如A服务器上传的图片,希望在B服务器上也可以访问。因此就需要跨机器共享文件,在这里就简单的采用nfs+rpcbind实现跨机器的文件共享。 1、安装nfs和rpcbind 检查自己的电脑是否已经默认安装了nfs和rpcbind: # rpm -aq | grep nfs nfs-utils-1.2.3-54.el6.x86_64 nfs4-acl-tools-0.3.3-6.el6.x86_64 nfs-utils-lib-1.1.5-9.el6.x86_64 # rpm -aq | grep rpcbind rpcbind-0.2.0-11.el6.x86_64 这表示系统已经默认安装。如果没有安装也没事,可以采用下面的命令安装 # yum install nfs-utils rpcbind 2、配置nfs的配置文件和hosts文件 创建需要共享的目录:默认用/mnt 配置nfs的配置文件: vim /etc/exports
在这个文件中添加需要输出的目录,如: /usr/local/static 192.168.0.2(rw) /usr/local/static:表示的是nfs服务器需要共享给其他客户端服务器的文件夹 192.168.0.2:表示可以挂载服务器目录的客户端ip (rw):表示该客户端对共享的文件具有读写权限 配置hosts文件:vim /etc/hosts 192.168.10.1 hostname 192.168.10.1:表示服务器本机的ip地址 hostname:表示服务器的机器名 3、启动nfs和rpcbind服务、检测服务状态、已经设置服务开机启动 启动服务: #service rpcbind start #service nfs start 检查启动状态: #service rpcbind status #service nfs status 4、检测服务器的nfs状态 # showmount -e //查看自己共享的服务 Export list forhostname: /usr/local/static 192.168.10.2 注意:在执行这个命令的时候如果出现错误,说明DNS不能解析当前的服务器,那就是hosts文件没有配置。 5、客户端挂载NFS中共享的目录 客户端服务器也需要安装nfs 和 rpcbind 服务。 首先是启动nfs和rpcbind服务。 查询服务端共享的文件目录: # showmount -e 192.168.10.1 Export list for192.168.10.1: /usr/local/static 192.168.10.2 创建挂载目录: #cd /mnt #mkdir static 挂载服务端的共享目录: # mount -t nfs -o nolock,nfsvers=3,vers=3 192.168.10.1:/usr/local/static /mnt/static 查看挂载的状态: # mount | grep nfs nfsd on /proc/fs/nfsd type nfsd (rw,relatime) 6、测试共享 服务器创建文件: #cd /usr/local/static #touch test123 客户端查看文件: #cd /mnt/static #ll 总用量 0 -rw-r--r-- 1 root root 0 May 3 11:44 rest123 |
|
来自: 昵称25533110 > 《待分类1》