Install
apt-get install -y cifs-utils samba
Visibility
For visibility get and install wsdd2, then systemctl start/enable it.
Create smb user
Create a smb user with sudo smbpasswd -a john.
Edit conf
Then /etc/samba/smb.conf (note that this is for a personal LAN, and not intended to be secure in any way).
[global]
allow insecure wide links = yes
follow symlinks = yes
wide links = yes
unix extensions = yes
workgroup = WORKGROUP
server string = %h server (Samba, Ubuntu)
log file = /var/log/samba/log.%m
max log size = 1000
logging = file
panic action = /usr/share/samba/panic-action %d
server role = standalone server
obey pam restrictions = yes
unix password sync = no
pam password change = yes
map to guest = bad user
usershare allow guests = yes
#======================= Share Definitions =======================
[homes]
comment = Home Directories
browseable = yes
read only = no
create mask = 0755
directory mask = 0755
valid users = %S
[media]
path = /media/john/
available = yes
valid users = john
force user = john
read only = no
browsable = yes
public = no
writable = yes
[data]
path = /data
available = yes
valid users = john
force user = john
read only = no
browsable = yes
public = yes
writable = yes
[music]
path = /data/music
available = yes
valid users = john
force user = john
read only = no
browsable = yes
public = yes
writable = yes
[root]
path = /
available = yes
valid users = john
force user = john
read only = yes
browsable = yes
public = yes
writable = no
[inc]
path = /incoming
available = yes
valid users = john
force user = john
read only = no
browsable = yes
public = yes
writable = yes