명령 행에서 파티션 레이블 나열


91

레이블과 함께 모든 파티션을 나열하는 명령이 있습니까? sudo fdisk -l그리고 sudo parted -l기본적으로 라벨을 표시하지 않습니다.

편집 : (아래 의견에 따라) 나는 ext2 레이블에 대해 이야기하고 있습니다- gparted파티셔닝시 설정할 수있는 레이블 .

EDIT2 : 의도하지 않은 파티션 을 나열 하는 것입니다 (따라서 마운트 할 파티션을 알고 있습니다).


1
라벨? 라벨이란? ext2 라벨에 대해 이야기하고 있습니까? 그것들은 파티션 테이블 자체와는 아무런 관련이 없습니다.
Chris Jester-Young

@Chris Jester-Young 님, 댓글 주셔서 감사합니다! 나는 위에서 명확히하려고 노력했다-그렇다, 나는 그것이 내가 말하고있는 ext2 레이블이라고 믿는다 ... 건배!

4
파티션에는 레이블이 없지만 파일 시스템에는 레이블이 있습니다. 그렇게하려면 도구 조합이 필요합니다. 이 blkid도구는 알려진 파티션의 레이블을 알려줍니다. 그러나 파티션을 찾으려면 fdisk의 출력을 반복해야합니다.
Keith

2
@Keith는 부수적으로 새 GPT 파티션 에 파일 시스템 레이블과 유사한 이름 필드 가 있다고 덧붙이고 싶습니다 .
Cristian Ciupitu

답변:


84

udev를 사용하면

ls -l /dev/disk/by-label

적어도 일부 파티션 장치 노드 에 레이블로 심볼릭 링크를 표시합니다 .

포함의 논리가 무엇인지, 레이블이 있는지 확실하지 않습니다.


2
적어도 내 컴퓨터에서는 Alan Kuras의 mount -l제안 을 사용하여 확인 된 것처럼 레이블이 연결된 파일 시스템 만 있습니다.

3
안녕하세요 @Ilkka-답변 주셔서 감사합니다! 실제로 ls -la /dev/disk/by-label마운트 해제 된 파티션의 레이블을 표시하는 것 같습니다. 그래서 내 문제를 해결, 내가 ...하지만, 난 정말에 대한 옵션을 선호하는 것 같아요 fdiskparted대신 :) 건배!

2
저에게는 스왑 파티션과 마운트 된 파티션이 표시되지 않지만 우연의 일치 일 수 있습니다. 어쨌든, sudo lsblk -o name,mountpoint,label,size,uuid나를 위해 일했습니다.
Chiel ten Brinke

128

lsblk

예를 들어

sudo lsblk -o name,mountpoint,label,size,uuid

출력 :

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

원하는 순서대로 많은 열을 지정할 수 있습니다.

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

4
이 도구를 보여 주셔서 감사합니다! 이 응용 프로그램은 일반 사용자를 위해 작동하지만 일부 정보 (라벨 포함)는 루트로만 표시됩니다.
user689893

1
마운트되지 않은 파티션도 표시됩니까? 그렇다면 질문이 해결됩니다.
Ravi

1
예. 보시다시피 sdb1 및 sdb3은 마운트되지 않았습니다.
Mikhail Morfikov

14
또는 다음 lsblk -f과 같은 것을 기억 하기 lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT
쉬움

@ user689893-아니오. 데비안 / 우분투 및 파생 상품에서만 발생합니다. 요점은 lsblk일반 사용자가 사용하므로 su / sudo가 필요하지 않습니다. 그것이 효과가 없다면, 배포판 개발자가 무언가를 놓친 것이기 때문입니다.
don_crissti

26

당신이 찾고 있는 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"

다른 옵션 중 하나는 udevadm 명령 을 사용 하는 것입니다.

$ sudo udevadm info --query=all --name=/dev/mapper/vg_rootdisk-lv_var

1
이것은 ddwrt에서 작동 한 유일한 제안이었습니다
Karthik T


9

사용하려고하면 mount -l괜찮습니다.


2
안녕 @Alan Kuras-답변 감사합니다 +1! 그러나 마운트 해제 된 파티션을 나열하고 싶습니다. 마운트 된 파티션 mount -l만 표시하는 것 같습니다.

7

/ dev / disk

최신 버전의 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

그래서 당신은에 의해 찾을 수 있습니다 by-id, by-label, by-path또는으로 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
    

    어디이 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
    

    여기서 LABEL1,, LABEL2... 등은 실제 파티션에 대한 기호 링크를 표시 하는 레이블 입니다 (예 :) /dev/sda3.


파티션 이름으로 정렬하려면 :ls -l /dev/disk/by-label/ | sort -k10
Digger

4

이것은 모든 파티션을 나열하지는 않지만 원하는 것을보고 변경할 수 있습니다 tune2fs.

$ sudo tune2fs -l /dev/sda1

이와 같은 명령을 사용하여 모든 /dev/sda*장치 를 가져올 수 있습니다.

$ sudo sh -c 'echo /dev/sda* /dev/mapper/fedora* | xargs -n 1 tune2fs -l'

2

이 명령을 사용할 수도 있습니다.

$ sudo udevadm info --query all --path /sys/block/sdb/sdb1 \
     | grep ID_PART_ENTRY_NAME

위의 내용을 사용하여 모든 블록 장치 정보를 인쇄 할 수 있습니다.

$ echo /sys/block/* | xargs -n 1 udevadm info --query all --path

1

e2label은 UDF 파일 시스템 레이블에서 작동하지 않습니다. 블리 키드;

blkid -s LABEL -o value /dev/sdg1

1

원하는 경우 해당 목적으로 내 bash 스크립트를 사용할 수 있습니다. 실제로 필요한 것보다 약간 더 많은 작업을 수행합니다. 즉, 사용 된 공간의 양도 보여줍니다. 당신이 그것을 좋아하기를 바랍니다 :) 그리고 나는 또한 내 리눅스 상자 에서처럼 출력이 깔끔해지기를 바랍니다 ... (참고 : HDD 및 DVD-ROM과 같은 실제 하드웨어 만 표시 하지만 내 목적으로는 충분합니다.)

중요 사항 :이 스크립트는로sudo 인해 ONCE에서 실행해야 할 수도 있습니다blkid . 적어도 내 배포판에서 bootup 후 일반 사용자로 실행하면 nilblkid -o export출력 됩니다 . 의 "일반 사용자 변환" 에서 데이터는 실제로 캐시 파일 (일반적으로 ) 에서 검색되기 때문에 쓰기 만 가능 하므로 현재 데이터로 채워지기 위해 실행이 필요 합니다.blkid/run/blkid/blkid.tabrootsudo

#!/bin/bash
# LICENSE: GPL

if [[ $(id -u) -ne 0 ]]; then
  if [[ ! -s /run/blkid/blkid.tab ]]; then
   # no cache file found when run as regular user
   # this will require one run under sudo to populate cache file
   echo -e "Cache file does not exist or is empty.\nPlease give your root password to continue:\n\n"   
   sudo blkid >/dev/null
  fi
fi

df -P |
sort  |
awk 'BEGIN {
             fmthdr = "%-12s%-22s%-10s\t%-5s\n"

         # since we want to use single quotes for showing label names, we had better
         # replace the problematic single quote character by its hex representation, "\x27"
             fmtlin_w_qu = "%-12s\x27%-17s\x27\t   %-10s\t%4s used\n"
             fmtlin_wo_qu = "%-12s%-17s\t   %-10s\t%4s used\n"

             printf fmthdr, " Device ",  "Volume Label", "File System", "Storage usage"
             printf fmthdr, "---------", "------------", "-----------", "-------------"
           }    
           /^\/dev\/[sh]/{
              lab = ""      # CLEAR lab w/every run (very important!)
              ("blkid -o export "$1" | grep LABEL | cut -f2 -d=") | getline lab
              ("blkid -o export "$1" | grep TYPE | cut -f2 -d=") | getline fs
              if (lab == "") {
                lab = "<none>"
                fmtlin = fmtlin_wo_qu
              }
              else
                fmtlin = fmtlin_w_qu

              printf fmtlin, $1, lab, fs, $5
           }'

1

Linux 터미널 (콘솔)에서 다음을 입력하십시오.

blkid

뒤에 Enter

결과는 각각 LABEL 및 TYPE이있는 블록 장치 목록입니다.


0

또한 사용하십시오 lsblk위에서 언급 한, 그러나 나는 다음과 같은 옵션이 더 양복지 찾을 수 있습니다 :

sudo lsblk -o name,mountpoint,tran,fstype,label,size
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.