CREEPINGNET'S WORLD
Various notes on SAMBA for various *nix Operating Systems
How to Network to Windows Clients from Linux and whatnot
Samba is a network software for *nix operating systems that allows Server Message Block (SMB) communication protocol to be used on a *nix operating system - for communication with Windows Clients mainley (though you can also use it to communicate to/from Linux clients as well).

How to Install SAMBA on your Unix Machine...

Below is the installation command in a terminal (as super user - hence "sudo") for my RedHat derived CentOS 8 based server. TBH, Samba is usually installed on most Linux systems by default that I've used to make it easier for a beginner to use.

sudo yum install samba

Below is the Ubuntu/Debian based command for installing Samba from the terminal...

Sudo apt install samba

Once it's installed - you'll have to do some configuration. In linux - one reason I ADORE linux actually, is it works much like Windows 3.1 high level configuration - plaintext configuration files, in this case /etc/samba/smb.conf. THis is where ALL of the samba parameters are configured - including your File Shares, Printer Shares, Workgroups, Domains, etc.

[global]
workgroup = CNWKGRP
encrypt passwords = yes
wins support = yes
log level = 1
max log size = 1000
read only = no

[homes]
browsable = no
map archive = yes

[printers]
path = /var/tmp
printable = yes
min print space = 2000

[sharename]
browsable = yes
read only = yes
path = /usr/local/samba/sharename

First thing to change is the workgroup = part. You will need to determine, if you have not already, the name of the workgroup your Windows PCs are to be attached to. By default, Microsoft Windows usually sets this value to Workgroup - but I suggest, in the interest of security and personalization, to change this name to something you can remember and more personal to what your network is about. This workgroup name is used to generate a "folder" of sorts in the network neighborhood of the Windows PCs, and the "Network" heading in GUI based Linux file managers - ie Nemo in the case of Linux Mint - that contains all of the "resources" (PC's, Printers, etc...) that share that workgroup name.

The next thing to determine, is your file shares. Each of these have their own [HEADING] type section followed up with the lines that determine if it can be anonymously browsed, if it's read-only, or can be written to, and what the path is. Remember, in Linux, forward slashes are used for everything - ie - //fileshare/shared folder/a whole buncha' crap/ - and that is how you can also navigate to them.