集群存储非结构化数据时,要么使用Hadoop类似的云存储架构,要么只能使用网络文件系统。
在Win下使用java的io基本可以解决问题,类似于//192.168.1.2/sharefiles/1.txt。
在Linux下可以使用的解决方案有:NFS(使用Java实现的协议),SAMBA(与Win共享,使用java实现的协议),使用映射文件夹
1、NFS:使用WEBNFS。
这个东西 XFileInputStream in = new XFileInputStream(temp)
2、SAMBA:客户端调用使用http://jcifs.samba.org/提供的工具
3、共享文件夹:比较靠谱的解决方案。
(1)安装NFS或者SAMBA并共享:
SAMBA
验证安装:rpm -qa|grep samba
rpm -ivh samba-common-2.2.7a-7.9.0
rpm -ivh samba-2.2.7a-7.9.0
rpm -ivh samba-client-2.2.7a-7.9.0(客户端)
redhat-config-samba-1.0.4-1 //配置工具
samba-swat-2.2.7a-7.9.0
service smb start
设置:
/etc/samba/smb.conf
client code page=936(中文)
encrypt passwords = Yes(加密传输)
参照范例
客户端需要安装tcp/ip netbios ipx
注意防火墙,关于大于1024端口的问题
NFS
貌似需要安装NFS及portmap两个东西
验证安装rpm -qa |grep portmap
rpm -qa |grep nfs
rpm -ivh portmap-4.0-54.i386.rpm
rpm -ivh redhat-config-nfs-1.0.4-5.i386.rpm//配置工具
rpm -ivh nfs-utils-1.0.1-2.9.i386.rpm
共享目录配置:
/etc/exports
目录 客户地址(syna,ro,rw)
启动
service portmap start
service nfs start
服务自启动:
chkconfig --level 35 nfs on
(3)共享:
查看:showmount IP
mount IP/sharefiles /remotefiles