服务器数量多了以后,对服务器上的文件管理是一个比较让人头疼并浪费时间的事情。于是人们想了很多办法去减少人类的劳动,fusefs便是其中之一。顾名思义便是混合文件系统,但是要首先要明白,这跟ext2,ext3,UFS这种东西不同,这是一个可以将很多种文件系统进行混合使用的工具。sshfs是这个混合工具中的一个,可以理解为fuse的插件。可以让你通过ssh,将远程服务器上的文件用mount命令挂载到本地上进行管理。

如果你的服务器少于10台,并且你每周花在文件管理上的时间不超过10小时,本文可以略过。

以FreeBSD为例:

安装前准备,你至少需要在/usr/src安装freebsd的base和sys源码,因为其中的fuse会以系统驱动的方式编译安装在/boot/kernel下。叫做fuse.ko。所以至少需要保证系统源码和/usr/src下的Makefile的存在。

1.进入/usr/ports/sysutils/fusefs-sshfs,执行make install clean。

2.等待安装完成

freebsd在这方面的优势就是无需你考虑依赖关系,make会自己解决。并且以源码方式编译安装,会更加适合服务器自身的硬件进行编译优化。

完成后,在/etc/rc.conf里加入fusefs_enable="YES"
执行

#sh /etc/rc
#rehash
#sshfs -p 30000 [email protected]:/www/webroot /servers/10.0.0.8

依此类推,可以把很多server的目录挂载到了本地/servers的路径下,任意拷贝,删除,增加。并且通过ssh方式连接,无需担心数据泄密。如果不想挂载,只需执行
umount /servers/10.0.0.8即可。

打sshfs -h命令可获得更多选项帮助信息。

实际上fusefs还有很多类似的插件,比如samba,ntfs,sql,甚至可以把rar文件挂载为目录,功能十分强大。在集群管理中配合webmin使用,更是如虎添翼。