Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a Windows machine and a Linux machine both hooked up to the router via Ethernet cables.

What is the easiest way for me to transfer files from the Windows machine to the Linux one?

share|improve this question

Easiest method is probably going to be SFTP/SCP. You can grab a copy of WinSCP or the Portable version for your windows machine. Then in WinSCP, put the linux machine name as the server (or IP if you can't connect via name). Once connected, navigate to preferred/necessary directories and drag and drop as desired.

For more "permanent" solution, you could install samba on your linux machine and then connect from the windows machine, but that would require learning how to configure samba so that the two systems can connect to each other.

share|improve this answer
I'd second SCP but would suggest cyberduck over winscp – Journeyman Geek Jul 27 '11 at 2:04
Had never heard of cyberduck, thanks and a +1 for the suggestion. – Matrix Mole Jul 27 '11 at 3:47
SCP is too slow to be of practical use for any large transfers. – Kaz Jan 30 '14 at 15:34

Another method would be to use a NFS system. Assuming that you have a windows 7 install that is pro or better.

To start you would need to install a couple packages on the linux machine assuming root access. "aptitude install nfs-kernel-server nfs-common portmap" That command would install what you need.

Now you need to edit the file "/etc/exports" to list what you would like to share

/home (rw, async, insecure)

Would be a possible entry. The IP address would need to be changed to point to your networks subnet address. The location "/home" would also need to point to the location that you would like to share. Once done with editing the file you will need to save it and run

/etc/exportfs -a

This updates the NFS systems to start sharing the locations listed in the export file.

Now to set Windows to see the share. going to -> run -> cmd should bring up a command prompt.

mount [options] //nfs-server-unc-name/share-name [drive letter]

Replacing nfs-server-unc-name to the ip address of the linux machine and "share-name" to the name of the directory that you are sharing. "drive letter" would be a letter that you would like the linux machine mounted to.

share|improve this answer
Windows 7 only allows NFS connectivity on Professional edition or better, anything less can not perform NFS connectivity. Spent a lot of time looking into it unfortunately even premium (my version) doesn't have NFS capabilities. – Matrix Mole Jul 27 '11 at 3:45
Interesting. Was not aware of that until a bit ago. After trying to do it on my windows install I am questioning the ability to do that in professional. I believe it starts the level above pro, ultimate I think. – Sion Jul 28 '11 at 1:12
Thanks, this worked for me. However, I had to enable NFS in Windows Features, I used /usr *(sync,rw,insecure) in /etc/exports, and in Windows I used the command mount \\192.169.1.x\share-name x: to mount the share. – uınbɐɥs Nov 9 '12 at 5:08
I think it's a bit overkill to start an NFS server just to transfer a bunch of files. Also, this suggestion makes the Linux box 'pull' the files rather than the Windows box 'pushing' them. – einpoklum Nov 23 '13 at 19:05

If you're using Linux for this task, I'd recommend using Samba

share|improve this answer

I'd strongly recommend setting up a Samba server on the Linux box, then you can have a file share that you can access from windows.

I've done it several times and it's generally quite easy.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .