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?


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.

  • 2
    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. 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
  • I suspect that, for quite a few individuals, if the goal is simply a one-off file transfer, the suggestion by @Mat2095 to use python's built-in HTTP server is probably the "easiest".
    – thomp45793
    Sep 20 '19 at 15:47

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.

  • 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. 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


I've had situations where using python3's HTTP-server was the easiest solution. Just cd to the correct folder on the source machine and run python3 -m http.server to open a simple HTTP-server. Then visit the given URL from the target machine and download the file(s).


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.


Use an external hard disk or large USB to do the transfer. Just spent 2 hours try to setup file share and got nothing. Sharing works for Linux to linux or windows to windows, but its cruel if the OS is different on one PC. Just my 2 cent


I would recommend file transfer sites like Flip Transfer or Google Drive. With those you don´t have to setup anything.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.