简单而言:
samba是混合型网络中的共享服务,也就是既有linux也有windows
nfs只面向unix、linux间的共享
具体细节:
samba是DEC开始开发的,用于在不同的Unix机器间进行资源共享,采用udp协议。后来基于tcp重新开发后,效率有了很大提高。它使用的协议是SMB。微软不愿意交License费,在windows系统中对该协议重新进行了实现。既然samba和windows中的网络邻居都使用SMB协议。那么,samba自然主要用于在windows和unix之间共享资源。资源包括文件、打印机等等。
NFS是SUN开发的,用于UNIX机器之间的资源共享。其设置相当容易,主要是配置/etc/exports文件,然后运行exportfs -a来共享出来。现在NFS已经成为UNIX/LINUX上的标配。
两者的文档都说自己的效率高一些:)从我的经验来看,nfs的效率要稍微高一些,只是差别不是太大。
从配置来看,samba比较复杂,nfs比较简单。但是复杂有复杂的道理,它让我们能够灵活的配置。
顺便说一句,SUN公司是一个很有意思的公司,它以技术创新而著称。其产品和技术为全世界广泛享用,以至于大家都忘记了它是该技术的发明者,比如说vi/csh/nfs/pam等等等等。对了,还有tcp/ip协议,也是Sun的Bill Joy首先移植到BSD中的。不过大家毕竟都知道,它是JAVA的创始者:)