Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

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'm trying to share a folder on one Ubuntu machine with another Ubuntu machine on the same home network. When I right click on the folder and choose Sharing Options, it tells me I need to install Windows network sharing services in order to share folders. What does Windows have to do with this? I'm not trying to share with a Windows machine...

share|improve this question
up vote 13 down vote accepted

What does Windows have to do with this? I'm not trying to share with a Windows machine...

You're right, this can be confusing. So let me try to clarify the terms first of all:

The way Windows shares files and printers is called SMB. The people from the SAMBA project have implemented all of Microsoft's protocols and specifications for Linux. Ubuntu therefore supports the same sort of file sharing as Windows, which is called Samba.

  • You can use SAMBA to share files between Linux machines. In fact, you might prefer it in case you have, for example, have a friend over with their Windows computer.

  • Alternatively, you can use The Linux Way of sharing files, which is NFS (Network File System) - This answer to a previous question explains how to do it. (but it's rather technical)

So, when the Sharing Options dialogue asks you to install the packages, you're not actually installing any Microsoft software or anything like that. Go ahead and do it, it's perfectly safe.


You can try to just enable sharing before you follow Salih Emin's instructions; if it doesn't work, you will get a simple warning, you can then do the steps Salih describes if needed. I have tried it on a freshly installed and up-to-date system, and I indeed needed to do this.

share|improve this answer
Thanks for the explanation. Funny that I'm trying to get away from Microsoft, and it turns out that even Linux uses pieces of their work. Ugh. – EmmyS Dec 2 '10 at 17:34
Well, the samba people have implemented Microsoft's protocols much better than Microsoft themselves. Some solace there :-) – Stefano Palazzo Dec 2 '10 at 17:52

At present, there is a small bug in Lucid which is listed in Launchpad: bug #536766. This bug doesn’t prompt the user to install the necessary packages needed to complete the file sharing set-up. Until that is addressed, here is a quick workaround.

You need to install libapache2-mod-dnssd and restart. Click this link to install it, or find libapache2-mod-dnssd in the Software Centre.

Once you have it installed, head over to System → Preferences → Personal file Sharing, and check the 'Share public files on network' box.

alt text

Once that is all done, you should then be able to view all other computers on your network that have allowed public file sharing within the Public folder. Just click on Places → Network, and there you should see all available computers and their shared Public folders.

Double-clicking on the server icon will mount the relevant public folder on your desktop.

Via link text

share|improve this answer
Are those packages associated with the apache web server at all? I already have apache installed as part of a LAMP stack and don't want to break it. – EmmyS Dec 2 '10 at 0:08
great find! (I've edited the answer by the way, this package will install apache2.2-bin as a dependency, seemed easier this way) – Stefano Palazzo Dec 2 '10 at 0:24
@EmmyS, the packages will not break your apache installation. I'm running those and more with no problems. – RolandiXor Dec 2 '10 at 4:25

I believe that's what SAMBA packages are listed under, or it's at lest part of their description. As an alternative, you can try Preferences->File Sharing which I believe uses a different mechanism. Samba is a handy thing to have installed though.

share|improve this answer
I was under the impression (wrongly, apparently) that Samba allowed sharing between Linux and Windows. I don't want to share with Windows, only with another Linux machine. – EmmyS Dec 2 '10 at 0:06
No, you were right. Both machines have to have samba installed of course. – Stefano Palazzo Dec 2 '10 at 0:16
Both machines need to use the SMB protocol. Windows does this one way. Linux machines do it with samba. – demented hedgehog Feb 27 at 9:50

You Can simply run an simpleHTTP server in the linux machine and access the same on the other machine.

Steps :

  1. first start the terminal from the folder to be shared.
  2. run in terminal - python -m SimpleHTTPServer
  3. check your ip using ifconfig.
  4. enter in the browser of the other machine the ip address:8000 (e.g.: if your ip is then in browser you type

You get the required files in the folder to download.

share|improve this answer
Download != share. – EmmyS Feb 28 '14 at 15:46

You can install "qweborf". It will share the directory over HTTP and the other hosts will be able to access with a browser.

It can also enable webdav and enable the directory to be mounted as read/write a filesystem (tested with davfs2,KDE,Gnome2,OsX).

share|improve this answer

If you want seamless integration in Ubuntu, and you aren't interested in Windows compatibility, SSH is your huckleberry.

See How can I share files between two Linux machines over LAN?

You may need to install the SSH server with:

sudo apt-get install openssh-server

From the file-manager app on your client, you can get to your server with:


To access files from a terminal or programmatically, use sshfs to create a mount-point in the client's file system.

share|improve this answer
Other programmatic ways of copying files over SSH include scp, and (even better) rsync. – nobar Nov 20 '15 at 20:42

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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