Transfer files from Windows to Linux over the network?

69,911

Solution 1

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.

Solution 2

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 192.168.1.0/24 (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.

Solution 3

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

Solution 4

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

Share:
69,911

Related videos on Youtube

NerNer
Author by

NerNer

Updated on September 18, 2022

Comments

  • NerNer
    NerNer almost 2 years

    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?

  • Thalys
    Thalys almost 13 years
    I'd second SCP but would suggest cyberduck over winscp
  • user3113103
    user3113103 almost 13 years
    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.
  • user3113103
    user3113103 almost 13 years
    Had never heard of cyberduck, thanks and a +1 for the suggestion.
  • uınbɐɥs
    uınbɐɥs over 11 years
    Thanks, this worked for me. However, I had to enable NFS in Windows Features, I used /usr 192.168.1.0/24 *(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.
  • einpoklum
    einpoklum over 10 years
    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.
  • Kaz
    Kaz over 10 years
    SCP is too slow to be of practical use for any large transfers.
  • thomp45793
    thomp45793 almost 5 years
    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".