Well, I can tell you how I do it (and have done it on Solaris SPARC boxes -- older SPARC boxes). All this is based upon gray hairs, so take it for what it's worth.
Swap space: the old-time rule-of-thumb is 2x RAM. Lots of folks will say that's overkill, others (like, for instance, me) will say it's about right. Much of the choice depends upon how much RAM you've got in the box and what you're doing -- looks like you've got 16G? so 8G ought to be all right but keep an eye on swap usage and be prepared to change it if needed. A good monitoring tool is the
GKrellM utility that puts a display on your screen showing what's going on; see
http://members.dslextreme.com/users/...m/gkrellm.html for particulars (your distribution may already include this utility).
I've never run a separate boot partition, can't really see why to do so. A
/boot is required, certainly, but it's just a part of the root file system and I've traditionally left it that way. Works fine for me.
Root. I have my root partition at 15G.
/boot and
/usr are part of root and I've got 6.3G available. Some additional packages are installed in
/usr although I prefer to install anything I add in
/usr/local.
/home is a 19G partition for user directories (there are three-to-four). Experience has taught me that users will expand to the available space, kind of like gas in an elevator and it's best to give 'em more than you think they'll need to use; pack-rat users are a pain where you sit down.
/usr/local. I try to install add-on software in
/usr/local, a 19G partition that is roughly using about 4G at the moment.
/opt is a 19G partition where all "optional application" packages are kept; i.e.,
FreeCAD,
GMT,
GanttProject,
Moneydance,
Nevitium,
VirtualBox,
LibreOffice and
NetCDF --
GMT and
NetCDF are mapping software (as in maps of the earth). Everything else is what I consider system-wide applications available to all users. It's a 19G partition.
/var/lib/mysql is where my MySQL data bases live, also a 20G partition.
/var/lib/virtual is where my virtual machines live, a 92G partition.
/var/lib/psql is where my PostgreSQL data bases live, a 173G partition (yeah, some BIG data bases in there).
/spares is where my geographic data files live (huge), a 92G partition.
Now the reason I do the above is so that I do not loose things when I upgrade the operating system -- during installation of a new release (I do a clean install rather than a package upgrade) I simply tell installation scripts the partition name of the partition (so it will be entered in
/etc/fstab) and to not format the partition (this is really, really simple to do with Slackware). That way I don't have to back 100s of gigabytes off somewhere the put it back on (ugh!). If you do use virtual machines and have, say Win7 as a virtual guest, it's going to be at least 20G and more likely 30G -- think about backing that off someplace and you get the idea.
Things like
MySQL,
PostgreSQL,
X and other things are installed in your
/usr tree but the data bases go somewhere else (and the somewhere else may need to be pretty big depending on what you're doing). Similarly,
LibreOffice is in
/opt but the documents are in user
/home directories.
Anyway, this works for me.
Hope this helps some.