1. Docker - for container, primarily immich
  2. Transmission - for torrenting
  3. Jellyfin - As media server
  4. Tailscale - For vpn
  5. Copilot and copilot pcp - For web-based access to server info
  6. Syncthing - For synchronising Folders in different machines
  7. Samba - For file sharing

Samba

sudo apt update
sudo apt install samba -y
sudo smbpasswd -a $USER #for setting up the password
sudo vim /etc/samba/smb.conf #For setting up the shared directory
[Data]
   path = /mnt/data/shared/
   read only = no
   browsable = yes
   guest ok = no
   valid users = %U
   create mask = 0664
   directory mask = 0775

What this means:

  • [Media]: The name of the share you’ll see on the network.

  • path = /mnt/media: The local folder it points to.

  • read only = no: Makes the share writeable.

  • guest ok = no: Requires a login (using the password you just set).

  • valid users = %U: A special variable that means “only the user who is logging in (%U) is allowed.”

sudo systemctl restart smbd #Start the Samba service