In my experience, I always tend to go overboard with the size of the root partition. I also tend to assign 40-50 Gb to root, but I'm beginning to doubt that much space is actually necessary (correct me if I'm wrong). I'm currently running Kubuntu 14.04 on a new machine for about 6 months, and have installed as much software as I'll ever need (VirtualBox, wine, Calligra, Krita, etc.), but most apps' user data winds up in /home's hidden folders.
My system is only using about 10 of the 50 Gb...Perhaps the next time I'll try giving only 30 Gb to root, and keep those extra 20 for downloads, movies, etc. Your /home partition should definitely be the biggest, and as to your 16Gb swap...I'd say that's way beyond what you'll be needing. People used to recommend making swap double or triple your RAM capacity, but that was back when ram was measured in MB ;)
You won't be using your swap unless you used up all your RAM, which isn't all that likely. I have 8Gb of RAM, and even with Virtualbox using 4 of them, + tons od¡f apps in the background, (Firefox, Thunderbird, Ktorrent, Libreoffice, etc.), some of them fairly memory hungry, I've never reached anything near 8Gb, so my 4Gb swap aren't particularly being put to good use...
Yes you can. Boot up the CD and go into live mode (try without installing), when the computer has boot up, go to the terminal and enter sudo parted -l
get to partition table for the disk with the 120GB of space (we will continue this process later on). After this, begin the installation process.
When the installation arrives at this screen (GUI updated in recent version but info still the same)
Select Something else
Now, on the next screen
Select the appropriate drive, (the one with 120GB which equates to roughly
122880MB)
Select it and create new partition table (option in the bottom left)
(Continuation...)
BIOS-Boot or EFI partition (required on GPT disks)
If you want to install Ubuntu on a GPT disk (you can check it via the 'sudo parted -l' command as mentioned above), you will need either an EFI partition (if your BIOS is set up in EFI mode) or a BIOS-Boot partition (if your BIOS is set up in Legacy mode).
BIOS-Boot partition:
Mount point: none
Type: no filesystem
Description: the BIOS-boot partition contains GRUB 2's core. It is necessary if you install Ubuntu on a GPT disk, and if the firmware (BIOS) is set up in Legacy (not EFI) mode. It must be located at the start of a GPT disk, and have a "bios_grub" flag.
Size: 1MB.
EFI partition:
Mount point: /boot/efi (no need to set up this mount point as the installer will do it automatically)
Type: FAT (generally FAT32)
Description: the EFI partition (also called ESP) contains some boot files. It is necessary if the firmware (BIOS) is set up to boot the HDD in EFI mode (which is default on more and more modern, > year 2011 computers). It must be located at the start of a GPT disk, and have a "boot" flag.
Size: 100~250MB
Basic recommended install
The most basic and recommended partitioning for a fully functional system, is a swap partition and a root partition / consuming the rest of the diskapce.
More Advanced Install
For this I will recommend;
DiskSpace -The goal of this page is to offer advice and strategy on partitioning a Linux system.
&
Recommended Partitioning Scheme
Best Answer
Moving the edges of partitions can have potentially destructive consequences for data stored on that partition. Have viable backups.
It is easier to move the ending edge of a partition outward than it is to move the beginning edge of the partition, so it would be easier if you were attempting to expand a lower number partition into space formerly held by a higher number partition (given the usual order of partition creation).
Finally, when you expand a partition you expand that partition into unformatted empty space. Thus you would be required to remove the NTFS partition to make that space available for expansion by the EXT partition.
These are likely the most important considerations. With this being said and granting the caveats outlined above, the answer to your question is yes you can expand one partition to take-up the space formerly held by a neighboring partition. (Though given all of this you may discover a different course will prove better for your specific situation.)