- Q1-4: It's not. Right tool should be used for specific purpose. See below.
- Q5: System using systemd are developed enough to show no difference.
- Q6: In common case - neither. They are both stored in the same place (formatting header or so) and changed by the same mechanism.
- Q7: No. Partition UUID can be only changed directly (see below) or by reformatting (i.e. creating new formatting) the partition.
Assuming we are talking about partition formatting (e.g. file system) UUID and Label.
There are also partition UUID and Label - commonly referred as partUUID and partlabel - if disk partitioning scheme supports them: e.g. GPT, but not MBR. They are also could be used to identify partition and, in some cases (see below), could an only way to do it.
Both UUID and Label are managed using tools specific to partition formatting used:
Please note, both UUID and Label exist only if partition formatting exists (and supported by your kernel) and the formatting supports UUID and/or Label attributes. For example partition encrypted using dm-crypt without LUKS extension does not have UUID and Label as it does not use any header (but file system inside encrypted container could have them both). FAT-family file systems don't support UUID (they have serial number instead), but do support Label.
The main differences between using Label and UUID are:
- UUID is for lower level
- created automatically (always exists)
- managed automatically
- guaranteed to be unique (in the most cases)
- not human friendly
- Label is for higher level
- should be created explicitly
- managed manually
- human friendly (easy to remember and type)
So if you not going to manage labels for partition(s) the choice is obvious - UUID. If you need more flexibility and/or readability for you system configuration - you could use labels.
For example, for cloned or automanaged systems using labels could be more suitable: after system cloned UUID's could change. If not for ext2/3/4 (depends on cloning method), it definitely change for LUKS-encrypted partitions (we need do
luksFormat at least to create new encryption key). So using Label in this case could be convenient.
Also Udev rule mounts removable media to
/media/<user>/<label> if Label exits. If not -
/media/<user>/<UUID> used instead.