Ubuntu – SSH vs SMB vs NFS for GUI file transfer

12.04file-sharingnfssambassh

I am using Ubuntu 12.04 on many computers at my school (I am a teacher and the head tech dude). I use Clonezilla to massively clone desktops and laptops. I want to easily share the disk images between computers in order to back things up.

I tried sharing over our wireless network using samba, and I did get it to work, but it was painfully slow trying to transfer 3GB+. It was much faster over the wired network, but I still had connectivity issues. Correct me if I'm wrong but I understand that samba is based on a windows standard, and that SSH is more Linux-native. My experience with samba has not been favorable so far.

NFS seems to have more features than samba. I think this is what Mac OS uses by default.

So, my question is: what is the best GUI way to share files between two Ubuntu machines with the following priorities in descending order:

  1. speed
  2. free and open source
  3. easy setup
  4. compatible with Windows and Mac OS

Best Answer

You are right, SMB is something coming originally from Windows. But nowadays it works great with Linux and Mac as well.

Since speed is important, you have to keep in mind: SSH is a great thing for everything connected to Unix/Linux and networks, but it is really slow compared to NFS, FTP or SMB.

NFS is the fastest, but it is not encrypted. Do not use any unencrypted protocols if you can't fully trust your network (see also this Q&A). NFS should be available for Windows and Mac too, but it might be a bit of work to set it up.

SMB should be easy to set up on Windows, Linux and Mac and it is still reasonable fast compared to SSH. But the same warning about security holds for SMB (see this Q&A).

Some similar questions were discussed here.

There are also [many benchmarks] about the speed of different network protocols out there.

Related Question