This is an old revision of the document!
Table of Contents
UUID Information
Be aware of UUID
UUID stands for Universally Unique IDentifier of a partition. This ID is used in few different places to identify the partition. Most commonly this would be /etc/fstab.
UUID vs PARTUUID
- UUID is a filesystem-level UUID, which is retrieved from the filesystem metadata inside the partition. It can only be read if the filesystem type is known and readable.
- PARTUUID is a partition-table-level UUID for the partition, a standard feature for all partitions on GPT-partitioned disks.
You can get a few hints about the difference between UUID and PARTUUID by specifying the -p option.
blkid -p /dev/sda1
UUIDs are not hardware-specific but stored in the partition's filesystem. That means cloning a disk or partition with dd will result in the same UUID. However recreating the partitions manually on the new disk (e.g. smaller disk), will result in new UUID. This could result in problems when booting the new disk uses UUID in fstab.
cat /etc/fstab # /etc/fstab: static file system information. # <file system> <mount point> <type> <options> <dump> <pass> # / was on /dev/sda3 during installation UUID=b2fa29ee-670f-4d44-becc-d9ec368d4a41 / ext4 noatime,nodiratime,errors=remount-ro 0 1
This can be solved by either changing the entries in fstab to the old style: /dev/dbX, Or by getting the new UUID and update fstab accordingy:
# blkid /dev/sdb1 /dev/sdb1: UUID="34628ffd-58e6-4a58-9b4d-533719305931" TYPE="ext4" PARTUUID="fa64ccff-01"
Assign UUID to partition using tune2fs.
$ sudo tune2fs /dev/sdb1 -U 39ea80c4-e748-47eb-835c-64025de53e26 tune2fs 1.44.6 (5-Mar-2019) Setting the UUID on this filesystem could take some time. Proceed anyway (or wait 5 seconds to proceed) ? (y,N) y
Check if UUID is properly assigned to the partition.
$ sudo blkid /dev/sdb1 /dev/sdb1: UUID=“39ea80c4-e748-47eb-835c-64025de53e26” TYPE=“ext4” PARTUUID=“2c6a7a3a-01”
How to Change UUID of Your Filesystems
Changing UUID of a filesystem is fairly easy. To do this, we are going to use tune2fs. For the purpose of this tutorial, I will change the UUID on my second partition /dev/sdb1, yours may vary, thus make sure you are changing the UUID of the desired filesystem.
The partition has to be unmounted prior apply the new UUID:
# umount /dev/sdb1 # tune2fs -U random /dev/sdb1 # blkid | grep sdb1
Check the current UUID of the filesystem
1. To find of the current UUID of the filesystem you can use either of the below commands.
# blkid /dev/sdc1 /dev/sdc1: UUID=“94ddf54e-53f7-4a1a-bd2f-d0a01ee448d1” TYPE=“ext4”
# dumpe2fs /dev/sdc1 | grep UUID dumpe2fs 1.42.9 (28-Dec-2013) Filesystem UUID: 94ddf54e-53f7-4a1a-bd2f-d0a01ee448d1
You can also view the UUID in the file /etc/fstab, if there is an entry done manually for the filesyste.
# grep data /etc/fstab UUID=“94ddf54e-53f7-4a1a-bd2f-d0a01ee448d1” /data ext4 defaults 0 2
