最近刚刚学习了这四种服务,刚学完就有点混了,四个不都是文件共享的功能吗?到底有什么区别呢?
都能共享文件是他们的一个共同点,但是在其他方面的侧重点是不同的。现在说一说他们的区别。
一、nfs
nfs==network file system ,中文名叫做网络文件系统,本质是文件系统,是sun公司制定的用于分布式访问的,主要用在unix操作系统上,基于tcp/ip协议,允许网络中的计算机通过tcp/ip网络共享资源,在nfs应用中,本地的nfs客户端可以进行有权限的读写位于远端的nfs服务器上的资源,就如同windows上可以将共享的资源挂载到自己本地磁盘一样,如同访问自己的磁盘
服务端配置:
安装:yum install nfs-utils rpcbind(centos6使用rpcbind)
nfs-utils是nfs服务的软件,rpcbind用于客户端和服务端进行通信,rpc服务是进行统一管理nfs的端口,当客户端要与nfs服务器端连接后,随机安排哪个端口(端口小于1024)去与客户端进行连接。
配置:编辑配置文件/etc/exports
添加如下 /mnt 192.168.2.0/24(rw,sync,root_squash,anonuid=501,anongid=501)
##/mnt是nfs服务器要共享的目录
##IP是可以进行访问的IP段
##括号内是设置权限、读写、同步等
启动:/etc/init.d/rpcbind start /etc/init.d/nfs start
客户端挂载共享目录到本地
安装:yum install -y nfs-utils
挂载:mount -t nfs -onolock,nfsvers=3 192.168.2.222:/mnt /gx #nfsvers=3是设置nfs等级,不设置此项可能会使客户端在目录下创建的文件属主属组是nfsnobody
测试:df -h 查看挂载情况 cd 进入到gx目录下创建文件
二、pure-ftp
pure-ftp是ftp的一种软件。ftp==file transfer protocol 文件传输协议,用于Internet上的文件双向传输,仅仅是为了共享文件而发明的一种协议,基于tcp/ip,不为了文件系统。ftp可以使用户连接到ftp服务器,然后可以从ftp上下载文件或者可以将软件上传到服务器上。
服务端:
(1)编译安装:
wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2
下载后编译安装。
(2)配置文件修改:pureftp的目录下载编译后只有三个文件,另外需要创建一个etc配置文件目录
从解压后的目录中复制配置文件pure-ftpd.conf到etc目录下,修改的脚本参照:http://note.youdao.com/noteshare?id=4c746f72473a20bf5764bf9aeb88768a
(3)启动脚本修改:从解压后的目录中复制pure-config.pl到sbin目录下。设置755权限。
启动服务:/usr/local/pureftpd/sbin/pure-config.pl /user/loca/pureftpd/etc/pure-ftpd.conf
客户端:
(1)新建系统用户user,此用户将作为映射用户
(2)创建要共享的文件目录:mkdir /tmp/gx
(3)设置共享目录的属组主
(4)新建虚拟用户/usr/local/pureftpd/bin/pure-pw useradd ftp_user1 -uuser -d /tmp/gx
(5)生成数据库文件:/usr/local/pureftpd/bin/pure-pw mkdb
(6)需要安装lftp软件进行访问
lftp user1@ftp服务器IP
三、vsftp
vsftp也是ftp服务的一种共享方式。只不过进行安装配置的是不一样的。系统默认自带的ftp软件
服务器端:
安装:yum install -y vsftpd
创建用户user,用于映射到虚拟用户。
创建虚拟用户的密码目录:vim /etc/vsftpd/vsftpd_login,给予600权限
添加虚拟用户和密码
生成库文件:db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
创建虚拟用户的配置目录:mkdir /etc/vsftpd/vsftpd_user_config
添加配置虚拟用户如vim test1,脚本查看:http://note.youdao.com/noteshare?id=0d249574be41b20de41b1f08bebfb7c5
新建虚拟用户的家目录:mkdir /home/user/test1
配置pam.d文件,添加内容参考上面链接
配置全局文件/etc/vsftpd/vsftpd.conf :内容参考链接
启动vsftpd
客户端:
安装lftp
lftp user@ftp服务器IP
四、samba
samba是一款windows和linux之间进行共享文件的软件,由于Windows共享是基于NetBios协议,是基于Ethernet的广播协议,在没有透明网桥的情况下(如VPN)是不能跨网段使用的。它主要用于unix和windows系统进行文件和打印机共享,也可以通过samba套件中的程序挂载到本地使用。
具体安装配置参考:http://blog.csdn.net/wzqzhq/article/details/53426433