43 lines
933 B
Bash
43 lines
933 B
Bash
#!/usr/bin/env bash
|
|
# description: setup samba for logged in user and creat shared folder "shared"
|
|
|
|
# update package indexes
|
|
sudo apt update -y
|
|
# install samba
|
|
sudo apt install samba -y
|
|
|
|
# create a folder on local directory to share
|
|
mkdir -p /home/$USER/shared && chmod 777 /home/$USER/shared
|
|
|
|
# back up samba conf
|
|
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
|
|
|
|
# edit smb.conf to add new folder to its shared list
|
|
cat >> /etc/samba/smb.conf <<EOF
|
|
[Shared]
|
|
path = /home/$USER/shared
|
|
available = yes
|
|
valid users = $USER
|
|
read only = no
|
|
browsable = yes
|
|
public = yes
|
|
writable = yes
|
|
EOF
|
|
|
|
# add samba user
|
|
sudo smbpasswd -a $USER
|
|
|
|
# restart services to pick up new changes
|
|
sudo systemctl restart smbd
|
|
sudo systemctl restart nmbd
|
|
|
|
# allow external access through firewall
|
|
sudo ufw allow samba
|
|
|
|
|
|
cat <<EOF
|
|
use smb://ip-address/Shared to access folder on filemanager on linux or
|
|
\\ip-address\Shared on file explorer in windows
|
|
EOF
|
|
|