Install Samba Server on Ubuntu
If you want to share files between your Ubuntu and Windows computers, your best option is to use Samba file sharing.
To install, first open a terminal window and enter the following command:
sudo apt-get install samba smbfs
We’ve got samba installed, but now we’ll need to configure it to make it accessible. Run the following command to open the configuration file, substituting your editor of choice:
sudo gedit /etc/samba/smb.conf
Find this section in the file:
####### Authentication #######
# “security = user” is always a good idea. This will require a Unix account
# in this server for every user accessing the server. See
# /usr/share/doc/samba-doc/htmldocs/Samba-HOWTO-Collection/ServerType.html
# in the samba-doc package for details.
; security = user
Uncomment the security line, and add another line to make it look like this:
security = user
username map = /etc/samba/smbusers
This will set Samba to use the smbusers file for looking up the user list.
Create a Samba User
There are two steps to creating a user. First we’ll run the smbpasswd utility to create a samba password for the user.
sudo smbpasswd -a <username>
Next, we’ll add that username to the smbusers file.
sudo gedit /etc/samba/smbusers
Add in the following line, substituting the username with the one you want to give access to. The format is <ubuntuusername> = “<samba username>”. You can use a different samba user name to map to an ubuntu account, but that’s not really necessary right now.
<username> = “<username>”
Now you can create samba shares and give access to the users that you listed here.
Daily Email Updates
You can get our how-to articles in your inbox each day for free. Just enter your name and email below:
| Similar Articles | Featured Wiki Articles |
| Latest Software Reviews | Quick Linux Tips |
| Geek Arcade | Popular Forum Threads |


Worked for me setting up a debian server on my slug. Thanks!
Great HOWTO. this worked perfectly. I was debating on using OpenFile but when I saw how easy this was, I chose this. Since Ubuntu is so stable and never needs to be restarted, I really think this was the right choice.
I’m glad it worked for you guys! It took me quite a while to figure it out myself =)
Hi,
I had some problems with this guide. To fix, add the user before creating the password!
Cheers.
The how-to is indeed very helpfull. I have still though a
little problem. I can see either machine on the network but
is seems that I am not permitted to access them. I am running
Ubuntu Edgy (6.10) under VMWare on WinXP. Any ideas ?
Thanks, man! I had SAMBA installed and, for some reason, it just quit working. I uninstalled it and used your instructions and IT WORKS!
Keep up the excellent work!
I just tried Samba Server on the network, It works great.
Why do I have to keep turning off the firewall on my Linux computer? Is there a way so it will work without doing that each time?
Hi, one problem for me – complete newbie – when I type the command – sudo smbpasswd -a – I get this error message – bash: syntax error near unexpected token `newline’ – what’s that about then?
;0)
To reemphasize what hhcv said: I also needed to do
sudo adduser SomeNewUserName
(and give this new user a password)
before I could successfully run
sudo smbpasswd -a SomeNewUserName
The first creates a UNIX user, the second creates an SMB user. I don’t know if the two passwords need to be the same, but I made them the same just in case.
Hi man thx a lot now I slove the samba problem…..
hey if you have the some trick for linux can you send me actualy I have exam for
RHCE in spetember so I need hard study thx
thanks a million, never been able to get it to work till now, really nice help for a newbie like me
This worked for me: http://ubuntuforums.org/archiv.....77926.html
Installing Samba on Opensuse 11.0 is different and I had to use nano as a text editor instead of gedit, but everything after the installation step in this how-to is spot-on.
Anyway, the point I’m trying to make is that this Ubuntu how-to is the most simple answer I found to get Samba working with Opensuse 11.0, imagine that!
Thank you, Geek!
“cannot locate remote server” after install samba what goes wrong??? any idea?
Can any body inform me what is wrong with samba setup. It is showing below logs during installation.
root@BHUWS042:~# sudo apt-get install samba smbfs
Reading package lists… Done
Building dependency tree
Reading state information… Done
Package samba is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
smbclient samba-common
E: Package samba has no installation candidate
root@BHUWS042:~# sudo apt-get install sambaclient smbfs
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Couldn’t find package sambaclient
root@BHUWS042:~# sudo apt-get install samba-common smbfs
Reading package lists… Done
Building dependency tree
Reading state information… Done
samba-common is already the newest version.
Package smbfs is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package smbfs has no installation candidate
root@BHUWS042:~#
I’m new also, can I get more detailed commands like how to save the the part where we change the “security = user
username map = /etc/samba/smbusers”
I can get the recording to come up, but just not sure what keys to press.
Thanks!!
Hi Ambika,
You need to enable the repository for this error. follow the instructions from this web link
“http://www.howtogeek.com/howto/ubuntu/adding-extra-repositories-on-ubuntu/” . After editing the /etc/apt/sources.list file don’t forget to issue the below command
sudo apt-get update
and then try to install the samba software by issuing sudo apt-get install samba smbfs, you will be done.
rgds
george
Ok, Im new on this, I barely have a guess on what uncomment means,,,
I tried this:
sudo gedit /etc/samba/smb.conf
Made this:
####### Authentication #######
“security = user” is always a good idea. This will require a Unix account
in this server for every user accessing the server. See
/usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
in the samba-doc package for details.
; security = user
username map = /etc/samba/smbusers
I saved and closed.
Then tried this on the terminal:
sudo smbpasswd -a
and I got this:
bash: syntax error near unexpected token `newline’
Can’t continue, please help for newbies.
@Roque
a comment is any line that begins with a “#” or a “;”
To ‘uncomment’ a line means to remove the preceding “#” or “;” from the start. In your case, the line
;security = user
should become
security = user
with the “;” at the start removed.
I tried these steps in Ubuntu 9.04 Desktop Edition (32bit). I can succesfuly map a share folder from Windows Desktop via samba user account. But do not have write access to the folder. Don’t know why? I don’t want other people or guest account to access this folder. Can Geek halp on this?