Ubuntu 16 Samba server with Windows 10 client - Tutorial/Howto
Solution 1:
First, if you made any changes to an existing samba configuration, revert them, or delete the /etc/samba/smb.con
and uninstall samba.
I assume your Ubuntu server username is peterlustig
and the Ubuntu server IP is 192.168.2.42
.
sudo apt-get install samba
-
sudo cp -pf /etc/samba/smb.conf /etc/samba/smb.conf.bak
Just backup your config -
sudo mkdir /myshares
- what you want to share via Samba sudo chown peterlustig:peterlustig /myshares
-
sudo chmod 777 /myshares
or experiment with lower rights, I havn't done that yet -
sudo smbpasswd -a peterlustig
Adds the user peterlustig to the Samba database and activates it. (Usually different password than peterlustig in Ubuntu itself. The password is what you need to enter later when connecting with the Windows 10 client to the server, step 10) -
sudo nano /etc/samba/smb.conf
And add the following to the bottom of the file:# Samba share for Windows clients [my-shared-folder-name] path = /myshares available = yes valid users = peterlustig read only = no browseable = yes public = yes writable = yes
sudo /etc/init.d/samba restart
restart your server and reload the config- If you use the
ufw
Firewall, you need to configure it. E.g. I allow only 192.xxx.xxx.xxx hosts to access my Samba shares, so I entered:sudo ufw allow from 192.0.0.0/8 to any app Samba
- In the Windows 10 client, open a Windows Explorer and enter the IP address of your host:
\\192.168.2.42
. Now you should see your shared folder namedmy-shared-folder-name
from step 8 in the[]
brackets. Open it. Now you need to enter your credentials, i.e. usernamepeterlustig
and the password you entered in step 6.
You can even map it as Windows network drive. Address will be \\192.168.2.42\my-shared-folder-name
, and don't forget to enable using different credentials (than your Windows 10 user provides) and enter peterlustig
and password from step 6 there.
Hope this helped anyone. Happy sharing!
Solution 2:
Restart Ubuntu after fresh installation and add user
$ sudo smbpasswd -a username (username should be without space eg "sudo smbpasswd -a alamjitsingh")
New SMB password:*********
Retype new SMB password:*********
Added user alamjitsingh.
smb.conf
required settings
sudo -H gedit /usr/share/samba/smb.conf
[global]
workgroup = WORKGROUP
passdb backend = tdbsam
security = user
In authentication section turn "map to guest = bad user" off by adding # at starting of code (Must)
#map to guest = bad user
You can try adding this line if it's not working (replace with your username):
force user = alamjitsingh
Add your personal code at the end
[Shared_drive_Name]
path = /media/alamjitsingh/Shared_drive_Name (alamjitsingh is my ubuntu username)
comment = HD Share
read only = yes
available = yes
browseable = yes
writable = no
guest ok = no
public = yes
printable = no
locking = no
strict locking = no