편집: 답변을 수락한 후

편집: 답변을 수락한 후

주변을 둘러보았지만 명확한 답변을 찾을 수 없거나 시스템에서 다른 정보를 표시할 때 대답이 '아니요'라는 것을 알게 되었습니다.

저는 Arch Linux를 실행 중이고 새 HDD를 ZFS 풀에 연결하는 동안 기본 SSD 시스템 드라이브에 LABEL속성/속성이 있다는 것을 발견했습니다(용어가 무엇인지 확실하지 않음).

노트:내가 말한 건운전하다, 해당 드라이브 내의 파티션이 아닙니다.

다른 디스크 LABEL에도 이 기능을 적용하고 싶지만 어떻게 해야 할지 모르겠습니다.

누구든지 이것을 달성하는 방법을 알고 있습니까?

lsblk아래는 내가 찾고 있는 것을 설명하기 위해 정리된 출력입니다 . 내 시스템에서는 <#LABEL1#>출력에 표시된 대로 설정되어 있으며 이를 설정/변경하고 싶습니다 <#WANTTHIS#>.

NAME      SIZE TYPE LABEL        PTTYPE PTUUID                               MODEL                 SUBSYSTEMS
loop0   ###.#M loop                                                                                block
loop1   ###.#M loop                                                                                block
loop2   ###.#M loop                                                                                block
loop3   ###.#M loop                                                                                block
sda     ###.#G disk <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa SomeModelString1      block:scsi:pci
├─sda1  ###.#M part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda2  ###.#M part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda3  ###.#M part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda4  ###.#G part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda5  ###.#M part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda6  ###.#M part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda7  ###.#G part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda8  ###.#G part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda9  ###.#G part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
├─sda10 ###.#G part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
└─sda11 ###.#G part <#LABEL1#>   gpt    aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa                       block:scsi:pci
.
.
.
sdg     ###.#G disk              dos    xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx SomeModelString2      block:scsi:pci
└─sdg1  ###.#G part <#LABEL2#>   dos    xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx                       block:scsi:pci
sdh     ###.#T disk <#WANTTHIS#> gpt    bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb SomeModelString3      block:scsi:usb:pci
sdi     ###.#T disk <#WANTTHIS#> gpt    cccccccc-cccc-cccc-cccc-cccccccccccc SomeModelString3      block:scsi:usb:pci
├─sdi1  ###.#T part some-part    gpt    cccccccc-cccc-cccc-cccc-cccccccccccc                       block:scsi:usb:pci
└─sdi9  ###.#M part              gpt    cccccccc-cccc-cccc-cccc-cccccccccccc                       block:scsi:usb:pci
.
.
.

편집: 답변을 수락한 후

모든@프로스트슈츠위의 예에서 FSTYPE제 경우에는 zfs_member레이블이 실제로 zfs-pool의 이름이었습니다(내 시스템과 이름이 똑같기 때문에 과거에 수동으로 이름을 지정했을 수도 있다고 생각했지만 그렇지 않았습니다).

물리적 디스크와 연관된 유일한 관련 식별자는 이고 WWN, GPT 파티션 테이블과 연관된 고유 식별자는 입니다 PTUUID.

따라서 이전에 찾은 다른 모든 답변과 마찬가지로 대답은 '아니오'입니다.
디스크 장치에 이름을 할당할 수 없습니다.

이제부터 lsblk관련 ID를 나열하기 위해 선택하는 명령 옵션은 다음과 같습니다.

$ lsblk --output=NAME,SIZE,RO,TYPE,WWN,PTTYPE,PTUUID,MODEL,SUBSYSTEMS,LABEL,PARTLABEL,PARTUUID,MOUNTPOINT

답변1

장치의 내용에 따라 다릅니다. 보다 구체적으로 말하면 레이블을 제공하는 알려진 슈퍼블록이 있는지 여부에 따라 달라집니다.

이는 파일 시스템 슈퍼블록(예: ext4, xfs, fat, iso9660 등), 스왑 장치, raid 슈퍼블록(mdadm) 또는 심지어 crypt 컨테이너(LUKS2)일 수 있습니다.

따라서 파일 시스템 시간에 레이블을 지정 mkfs하거나 나중에 파일 시스템별 도구를 사용하여 변경할 수 있습니다(ext4의 경우 tune2fs -L). mdadm의 경우 --name배열의 레이블이고 LUKS2의 경우 cryptsetup --label옵션입니다.

내가 아는 한, 일부 파일 시스템이나 다른 슈퍼블록 제공자에 라벨을 첨부하지 않고 임의로 라벨을 설정할 수 있는 방법은 없습니다. 가장 가까운 것은 GPT 파티션 테이블( )의 PARTLABEL이며 parted name ..., 이는 파티션 테이블 자체에 추가되지만 PARTLABEL은 LABEL이 아닙니다. 파일 시스템 레이블을 덮어쓰거나 바꾸지 않습니다.

라벨에 대한 보편적인 표준은 없으며 모두 손으로 짠 것입니다. 예를 참조하세요.util-linux에서 슈퍼 블록 형식 구현. 내일 새로운 파일 시스템을 개발한다면 레이블이 있더라도 지원이 추가될 때까지 표시되지 않습니다.

lsblk출력 에 해당 FSTYPE열을 추가하면 현재 표시되는 레이블을 제공하는 항목에 대한 아이디어를 얻을 수 있습니다. 그런 다음 다른 장치에서 동일한 방식으로 태그를 제공하려면... 해당 장치에도 동일한 파일 시스템(또는 raid 슈퍼 블록 등...)을 배치해야 합니다... . 그렇게 하면 이전에 존재했던 다른 모든 항목이 자연스럽게 삭제됩니다(먼저 새 파일 시스템을 만들지 않으면 한 장치에 두 개의 파일 시스템을 가질 수 없습니다).

관련 정보