sda*_*aau 118 linux command-line partition disk
是否有一个命令可以列出所有分区及其标签?sudo fdisk -l并且sudo parted -l默认不显示标签。
编辑:(根据下面的评论)我说的是 ext2 标签 - 您可以在gparted分区时设置的标签。
EDIT2:目的是列出未安装的分区(所以我知道要安装哪个)。
Mik*_*kov 160
lsblk例如,命令
sudo lsblk -o name,mountpoint,label,size,uuid
Run Code Online (Sandbox Code Playgroud)
输出:
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
Run Code Online (Sandbox Code Playgroud)
您可以按您喜欢的任何顺序指定大量列:
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
Run Code Online (Sandbox Code Playgroud)
小智 106
使用 udev,您可以使用
ls -l /dev/disk/by-label
Run Code Online (Sandbox Code Playgroud)
按标签显示至少一些分区设备节点的符号链接。
不确定包含的逻辑是什么,可能是标签的存在。
小智 30
有一个blkid命令可能正是您要找的。结果类似于以下内容:
$ 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"
Run Code Online (Sandbox Code Playgroud)
另一种选择是使用udevadm命令,它可能会给你带来比你需要的更多:
$ sudo udevadm info --query=all --name=/dev/mapper/vg_rootdisk-lv_var
Run Code Online (Sandbox Code Playgroud)
小智 10
尝试使用mount -l,它对我来说很好用。
在较新版本的 Linux 内核中,现在可以在/dev/disk.
$ 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
Run Code Online (Sandbox Code Playgroud)
所以,你可以找到它by-id,by-label,by-path或by-uuid。
按 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
...
...
Run Code Online (Sandbox Code Playgroud)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
Run Code Online (Sandbox Code Playgroud)
其中xxxxxx将是实际的 UUID,例如5ece678c-1234-5678-12e3-88c06ec11111.
按标签
$ 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
Run Code Online (Sandbox Code Playgroud)
其中LABEL1, LABEL2,... 等是显示实际分区(例如)的符号链接的标签/dev/sda3。
小智 5
这不会列出所有分区,但您可以使用tune2fs.
$ sudo tune2fs -l /dev/sda1
Run Code Online (Sandbox Code Playgroud)
您可以使用这样的命令来获取所有/dev/sda*设备。
$ sudo sh -c 'echo /dev/sda* /dev/mapper/fedora* | xargs -n 1 tune2fs -l'
Run Code Online (Sandbox Code Playgroud)