List partition labels from the command line
Solution 1
With udev, You can use
ls -l /dev/disk/by-label
to show the symlinks by label to at least some partition device nodes.
Not sure what the logic of inclusion is, possibly the existence of a label.
Solution 2
with lsblk
For instance, the command
sudo lsblk -o name,mountpoint,label,size,uuid
outputs:
NAME MOUNTPOINT LABEL SIZE UUID
sda 1.4T
├─sda1 /boot boot 953M f557b9f0-edb5-42bb-94d8-27bc03c3c2c7
├─sda2 46.6G 727fa348-8804-4773-ae3d-f3e176d12dac
│ └─sda2_crypt (dm-0) 46.6G P1kvJI-5iqv-s9gJ-8V2H-2EEO-q4aK-sx4aDi
│ ├─debian_crypt-swap (dm-1) [SWAP] 2G 3f9f24d7-86d1-4e21-93e9-f3c181d05cf0
│ ├─debian_crypt-tmp (dm-2) /tmp tmp 5G 93fc8219-f985-45fb-bd5c-2c7940a7512d
│ ├─debian_crypt-home (dm-3) /home home 6G 12e8566c-8f0f-45ec-8524-6d9d9ee91eae
│ └─debian_crypt-root (dm-4) / root 33.6G 9685570b-4c9e-43ea-815e-49d10dc7a1bf
├─sda3 651.9G d3e0436c-85f6-45c6-9d8f-28b79ee06102
│ └─crypt_gusto (dm-8) /media/Gusto Gusto 651.9G 0c084508-cb8b-4b61-832d-6b85273f33c4
├─sda4 1K
├─sda5 298G 5063da5f-9b68-43de-914c-32b89622bcc8
│ └─crypt_kabi (dm-7) /media/Kabi Kabi 298G e6a0b66c-8fe9-4e7b-9d54-7b2b430e109d
├─sda6 213.6G 5129d860-bb41-4393-b4b1-f8af53d9155d
│ └─crypt_zami (dm-6) /media/Zami Zami 213.6G 19101155-6070-4f37-b39d-19f28867c66b
├─sda7 /media/Server Server 85.6G a9f4dae5-901c-4f49-bb30-592de3000713
└─sda8 100.6G dc7f4586-a33d-4707-98e9-8b55c559b0d2
└─crypt_grafi (dm-5) /media/Grafi Grafi 100.6G 5e3242e1-ec7a-4806-92f7-88a126feea94
sdb 14.5G
├─sdb1 DEBIAN_LIVE 3G 6bf4d915-2b62-444e-a2c8-16307769b5c2
├─sdb2 2G 90ec6f73-8fdb-4c8d-aebd-cadd0f51b412
│ └─crypt_sdb2 (dm-10) /mnt data 2G 91e779dd-0a3f-40b2-8ad0-257d860541a6
└─sdb3 linux 9.5G 14a783a4-96dd-4a85-8de7-6e8eea230594
loop0 1000M a3be80bf-0f2c-44ed-8de5-d60e3b19c01a
└─crypt_dropbox (dm-9) /media/Dropbox Dropbox 998M 8461e2cf-ae17-449b-8ee5-29cc88688b8b
zram0 [SWAP] 250M f8254ae5-5ae6-4fda-b8ef-83f25c405894
zram1 [SWAP] 250M 7e7ed90d-731c-422a-bf9b-828f09b80502
You can specify plenty of columns in whatever order you like:
Available columns:
NAME device name
KNAME internal kernel device name
MAJ:MIN major:minor device number
FSTYPE filesystem type
MOUNTPOINT where the device is mounted
LABEL filesystem LABEL
UUID filesystem UUID
RO read-only device
RM removable device
MODEL device identifier
SIZE size of the device
STATE state of the device
OWNER user name
GROUP group name
MODE device node permissions
ALIGNMENT alignment offset
MIN-IO minimum I/O size
OPT-IO optimal I/O size
PHY-SEC physical sector size
LOG-SEC logical sector size
ROTA rotational device
SCHED I/O scheduler name
RQ-SIZE request queue size
TYPE device type
DISC-ALN discard alignment offset
DISC-GRAN discard granularity
DISC-MAX discard max bytes
DISC-ZERO discard zeroes data
Solution 3
There is a blkid command which may be what you are looking for. Results are similar to the following:
$ sudo blkid /dev/mapper/vg_rootdisk-lv_var
/dev/mapper/vg_rootdisk-lv_var: LABEL="LV_VAR" UUID="08520908-03cd-4e42-a4e4-0f5a771be16c" TYPE="ext4"
One other option is to use the udevadm command, which likely will give you far more than you need:
$ sudo udevadm info --query=all --name=/dev/mapper/vg_rootdisk-lv_var
Solution 4
Try to use this command:
e2label /dev/sda2
Solution 5
/dev/disk
In newer versions of the Linux kernel this info can now be found here under /dev/disk
.
Example
$ ls -l /dev/disk
total 0
drwxr-xr-x 2 root root 300 Mar 4 18:43 by-id
drwxr-xr-x 2 root root 140 Mar 4 18:21 by-label
drwxr-xr-x 2 root root 80 Mar 4 18:18 by-path
drwxr-xr-x 2 root root 200 Mar 4 2015 by-uuid
So you can find it by by-id
, by-label
, by-path
or by by-uuid
.
by-id
$ ls -l /dev/disk/by-id total 0 lrwxrwxrwx. 1 root root 9 Jan 11 17:01 ata-Optiarc_DVD_RW_AD-7930H -> ../../sr0 lrwxrwxrwx. 1 root root 9 Jan 11 17:01 ata-ST95005620AS_5YX1K0Q5 -> ../../sda lrwxrwxrwx. 1 root root 10 Jan 11 17:01 ata-ST95005620AS_5YX1K0Q5-part1 -> ../../sda1 lrwxrwxrwx. 1 root root 10 Jan 11 17:01 ata-ST95005620AS_5YX1K0Q5-part2 -> ../../sda2 ... ...
by-uuid
$ ls -l /dev/disk/by-uuid total 0 lrwxrwxrwx. 1 root root 10 Jan 11 17:01 xxxxxx -> ../../sda1 lrwxrwxrwx. 1 root root 10 Jan 11 17:01 xxxxxx -> ../../dm-1 lrwxrwxrwx. 1 root root 10 Jan 11 17:01 xxxxxx -> ../../dm-0 lrwxrwxrwx. 1 root root 10 Jan 11 17:01 xxxxxx -> ../../dm-2
Where the
xxxxxx
would be an actual UUID such as5ece678c-1234-5678-12e3-88c06ec11111
.by-label
$ ls -l /dev/disk/by-label/ total 0 lrwxrwxrwx 1 root root 10 Mar 4 18:21 LABEL1 -> ../../sda4 lrwxrwxrwx 1 root root 10 Mar 4 18:17 LABEL2 -> ../../sda3 lrwxrwxrwx 1 root root 10 Mar 4 18:21 LABEL3 -> ../../sda6 lrwxrwxrwx 1 root root 10 Mar 4 18:42 LABEL4 -> ../../sda7 lrwxrwxrwx 1 root root 10 Mar 4 18:20 LABEL5 -> ../../sda5
Where
LABEL1
,LABEL2
,... etc are label which shows symbolic links to actual partition (e.g/dev/sda3
).
Related videos on Youtube
sdaau
Updated on September 18, 2022Comments
-
sdaau over 1 year
Is there a command that will list all partitions along with their labels?
sudo fdisk -l
andsudo parted -l
don't show labels by default.EDIT: (as per comment below) I'm talking about ext2 labels - those that you can set in
gparted
upon partitioning.EDIT2: The intent is to list unmounted partitions (so I know which one to mount).
-
Admin about 13 yearsLabels? What's a label? Are you talking about ext2 labels? Those have nothing to do with partition tables per se.
-
Admin about 13 yearsHi @Chris Jester-Young, thanks for your comment! I have tried to clarify above - yes, I believe it is ext2 labels I'm talking about... Cheers!
-
Admin almost 13 yearsPartitions don't have labels, but file systems do. You need a combination of tools to do that. The
blkid
tool can tell you label of a known partition. But to find the partition you would have to loop over the output of fdisk.
-
-
Admin about 13 yearsHi @Alan Kuras - thanks and +1 for the answer! However, I want to list unmounted partitions -
mount -l
seems to show only mounted ones.. Cheers! -
Admin about 13 yearsAt least on my machine, it is indeed only the filesystems with labels that get linked in there, as confirmed(?) by using Alan Kuras'
mount -l
suggestion. -
Admin about 13 yearsHi @Ilkka - thanks for your answer! Indeed,
ls -la /dev/disk/by-label
seems to show labels of unmounted partitions; so that solves my problem, I guess... Although, I really would have preferred an option forfdisk
orparted
instead :) Cheers! -
user689893 almost 10 yearsThanks for showing me this tool! Note, this application works for regular users, but will show some info (including labels) only as root.
-
Godson over 9 yearsWill it show unmounted partitions also? If yes then it solves the question asked.
-
VinoPravin over 9 yearsYes. As you can see sdb1 and sdb3 aren't mounted.
-
LeoR over 9 yearsor easier to remember
lsblk -f
which is equivalent tolsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT
-
don_crissti over 8 years@user689893 - no, that only happens on debian/ubuntu and derivatives. The point of
lsblk
is to be used by regular users so no need to su/sudo. Now, if that doesn't work for you, it's because your distro devs prolly missed something. -
chtenb over 8 yearsFor me, my swap partition and mounted partitions are not shown, but that may just be coincidence. Anyhow,
sudo lsblk -o name,mountpoint,label,size,uuid
worked for me. -
DrBeco over 7 yearsEasier to remember:
lsblk -fo +size
. It will list (or is equivalent to):lsblk -o name,fstype,label,uuid,mountpoint,size
-
tonybka over 7 yearsThis was the only suggestion so far that worked on ddwrt
-
Digger almost 6 yearsTo sort by partition name:
ls -l /dev/disk/by-label/ | sort -k10
-
Dirk over 5 years
sudo
is not necessary. -
loved.by.Jesus about 3 yearsAnother variant:
lsblk -o +label,uuid
which lists more information. By the way, @user689893 , I completely agree with @Dirk. I see no difference at all, with or without usingsudo
with this command (in Ubuntu 16.04.). Consequently, do not use sudo. -
Scrooge McDuck over 2 yearsOn my system
/dev/disk/by-label
is unpopulated when theinitramfs
mounts root fs. -
Scrooge McDuck over 2 yearsthis answer is potentially the more complete
-
J Trana over 2 yearsI needed root to see the LABEL.
-
SuperSandro2000 over 2 yearsThis is perfect for WSL because e2label requires always sudo and there is no
/dev/disk
. -
arielf about 2 yearsAnswer is > 10 years old. Things have changed since? On my system (Ubuntu 20.04) there's no
/dev/disk/by-label
OTOH: there's/dev/disk/by-partlabel
-
Admin almost 2 yearsGave me EXACTLY what I needed to make my external HDD mounts persist across a restart. Depending on the phase of the moon and it's position vis-a-vis Venus, it would show up as sdb, sdg, or anything in between... Since I have 2 migratory external disks, things were always weird and using ls-d /dev/sd* to figure out which was which was annoying.