= Samba share =

== Samba3 by example ==
 * https://www.samba.org/
Samba is the standard Windows interoperability suite of programs for Linux and Unix.

 * https://www.samba.org/samba/docs/Samba3-ByExample.pdf
 * https://www.samba.org/samba/docs/using_samba/toc.html
 * https://www.samba.org/samba/docs/old/Samba3-ByExample/

== Mount samba share on CentOS 6.3 ==
Adapted from [[http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-samba-connect-share.html]]

{{{#!highlight bash
yum install cifs-utils
mount -t cifs -o username=userx,password=passwordx //<servername>/<sharename> /mnt/point/
}}}

Add entry to /etc/fstab:
{{{#!highlight bash
//<servername>/<sharename> /mnt/point/ cifs  username=userx,password=passwordx,_netdev   0 0
}}}

== Backup all files ==
File backup.sh:
{{{#!highlight bash
#!/bin/bash
logfile=/mnt/point/backups`date '+%F'`.log
datex=`date '+%FT%T'`
hostx=`hostname`
backfile=/mnt/point/"$hostx"_backup.tar.gz

echo "$datex $hostx Log file: $logfile" >> $logfile
echo "$datex $hostx Executing backup on /mnt/point" >> $logfile
cd /
rm $backfile
echo "$datex $hostx Removed $backfile" >> $logfile
tar cpzf $backfile --exclude=/proc --exclude=/dev --exclude=/media --exclude=/mnt --exclude=/lost+found  /  >> $logfile
datex=`date '+%FT%T'`
echo "$datex $hostx Ended backup on /mnt/point" >> $logfile
}}}

Add a crontab entry like '''@daily /home/userx/backup.sh'''.

== smbclient Copy files recursively to share ==
{{{#!highlight sh
smbclient -U userx //192.168.1.1/c$ -c 'cd folderx;recurse;prompt;mput *'

sudo apt install dolphin breeze kwrite
dolphin smb://xyz.bitarus.mooo.com/shared/ &
}}}

== Raspbian samba share ==
{{{#!highlight sh
sudo apt install samba
netstat -at -n | grep 139
sudo service --status-all
sudo service smbd restart
sudo apt install smbclient cifs-utils
mkdir -p /tmp/shared
chown -Rh nobody:nogroup /tmp/shared
smbclient --list xyz.bitarus.mooo.com --no-pass
cd /etc/samba sudo cp smb.conf smb.conf.orig
nano /etc/samba/smb.conf
sudo service smbd restart
testparm # test smb.conf
smbclient  //xyz.bitarus.mooo.com/shared --no-pass
}}}

=== /etc/samba/smb.conf ===
{{{#!highlight sh 
[global]
   workgroup = Bitarus@Fundao
   dns proxy = no
   log file = /var/log/samba/log.%m
   loglevel = 1
   max log size = 1000
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   passdb backend = tdbsam
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
   usershare allow guests = yes
   guest account = nobody
   # chown -Rh nobody:nogroup /tmp/shared

[shared]
   path = /tmp/shared
   read only = no
   guest ok = yes
   writable = yes
   browsable = yes}}}