Install Samba if you have not already…
Note
You can check if Samba is already running with:
sudo systemctl status smbd
For Ubuntu, Mint, Pop-OS, PureOS, etc
sudo apt install samba && sudo systemctl enable smbd && sudo systemctl start smbd
For Arch
sudo pacman -S samba && sudo systemctl enable smbd && sudo systemctl start smb
For CentOS/Redhat
sudo yum install samba && sudo systemctl enable smb && sudo systemctl start smb
For Fedora
sudo dnf install samba && sudo systemctl enable smb && sudo systemctl start smb
Add your user to Samba, replacing $USER
with your Linux username.
sudo smbpasswd -a $USERFirst you will be prompted for your Linux password, then you will be asked to create a new SMB password for the user with permission to write to your new backup share. It can be the same password, or it can be different. Keep it somewhere safe, such as Vaultwarden.
Add your user to sambashare group, necessary on some systems.
sudo usermod -a -G sambashare $USERAgain, replacing
$USER
and entering your Linux password when prompted, not your new SMB password.
In case your system is running a firewall by default or due to your own custom configuration, enter this command to allow connections to Samba. If it generates an error, you can safely ignore it:
sudo ufw allow Samba
Create a directory to share or choose an existing one and make note of its location (path). For this example, we will call the share backup-share
and its corresponding shared directory will be located at /home/$USER/start9-backup
. Replace $USER
with your Linux username below.
mkdir -p /home/$USER/start9-backupNote
If you are on Fedora 38+, you need to do an extra step to allow the Samba share in SELinux:
sudo semanage fcontext --add --type "samba_share_t" "/home/$USER/start9-backup(/.*)?" sudo restorecon -R /home/$USER/start9-backup
Configure Samba by adding the following to the end of the /etc/samba/smb.conf
file:
First open the file…
sudo nano /etc/samba/smb.conf
Then add…
[backup-share] path = "/home/$USER/start9-backup" create mask = 0600 directory mask = 0700 read only = no guest ok = no
[backup-share]
in brackets is the Share Name and can be called anything you’d like. We usedbackup-share
in this example.
path
should be the path to the directory you created earlier.
Save/write the file and then exit.
Test the config file with…
testparm
Look for “Loaded services file OK”. You don’t need to do anything else here.
Go to System > Create Backup.
Click “Open”.
Fill in the following fields:
Hostname - This is the hostname of the machine that your shared folder is located on, you can get this with
hostname
orhostnamectl
Path - This is the “Share Name” (name of the share in your samba config) and not the full directory path. In this guide we use
backup-share
.Username - This is your Linux username on the remote machine that you used to create the shared directory
Password - This is the password you set above using
smbpasswd
Click “Save”.
That’s it! You can now Create encrypted, private backups of all your StartOS data to your Linux machine or external drive!!