I kind of do a similar thing to what you're doing -- I mount /home, /usr/local, /spares, /opt, /var/lib/mysql, /var/lib/psql and /var/lib/virtual on all my machines. Before installing, I copy /etc to /spares then do a clean install (formatting the root partition but not the others during setup). That way, I don't lose the content of any of those mounted partitions.
After it's up and running, I selectively copy configuration files from /spares/etc along with /spares/etc/passwd, /spares/etc/group and, important!, /spares/etc/shadow to the new /etc. Other things are in /spares/etc/profile.d and /spares/etc/fonts (all my add-on fonts are in /usr/local/share/fonts and the local.conf files is in /etc/fonts). Then there's always httpd.conf, my.cnf to deal with but with everything in /spares/etc it's not too much trouble.
The only sorta trick part is the system name and address (I use fixed IP on all machines); during the installation, I set the machine name, address, gateway and all that to what I want it to be. Now my "main" machine is always named fubar and it's address is always 192.168.1.10 and the other machines are snafu and pita (and a couple of others) and their addresses are 192.1681.20 and 192.168.1.30 and so on. Retiring the old fubar to snafu when I buy a new box means doing a similar install on the old machine giving it a new name and address (I do keep all machines at Slackware stable, so they all get updated). Not real tricky but it can leave a gap for, oh, an hour maybe.
I can't comment about samba, don't use it, but I can't imagine that it would be much different from the above; get your existing set up copied somewhere then carefully bring the configuration files over.
So anyway, it's not difficult but just be sure you've got all your configuration stuff copied off somewhere easy to get at, eh?
Hope this helps some.
Last edited by tronayne; 10-06-2012 at 08:12 AM.