探し回っていますが、明確な答えが見つかりません。または、システムが別の方法で表示したときに、答えが「いいえ」であることがわかりました。
Arch Linuxを実行していて、新しいHDDをzfsプールに接続しているときに、メインのSSDシステムドライブに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
.
.
.
Per @ frostschutz 上記の例では、私の場合のFSTYPE
はzfs_member
、そしてラベルは実際にはzfs-poolの名前でした(これは私のシステム名とまったく同じ名前だったので、過去に手動で名前を付けたかもしれないと思いました-私はしませんでした)。
物理ディスクに関連付けられている1つの関連する一意の識別子はWWN
であり、GPTパーティションテーブルに関連付けられているのはPTUUIDです。
したがって、私が以前に見つけた他のすべての答えと同様に、答えは「いいえ」です。
ディスクデバイスに名前を割り当てる方法はありません。
これから、関連するIDを一覧表示するために選択するlsblkコマンドオプションは次のようになります。
$ lsblk --output=NAME,SIZE,RO,TYPE,WWN,PTTYPE,PTUUID,MODEL,SUBSYSTEMS,LABEL,PARTLABEL,PARTUUID,MOUNTPOINT
それはデバイスの内容によって異なります。より具体的には、ラベルを提供する既知のスーパーブロックがあるかどうかによって異なります。
これは、ファイルシステムスーパーブロック(ext4、xfs、fat、iso9660など)、スワップデバイス、レイドスーパーブロック(mdadm)、または暗号化コンテナー(LUKS2)の場合があります。
したがって、ファイルシステムをmkfs
するときにラベルを指定するか、後でファイルシステム固有のツール(ext4の場合はtune2fs -L
)、mdadmの場合は--name
配列の、LUKS2の場合はcryptsetup --label
オプション。
私の知る限り、ラベルをファイルシステムや他のスーパーブロックプロバイダーに添付せずに任意に設定する方法はありません。最も近いのは、GPTパーティションテーブルのPARTLABELを使用することです(parted name ...
)、パーティションテーブル自体にアタッチされますが、PARTLABELはLABELではありません。ファイルシステムのラベルを上書きしたり置き換えたりすることはありません。
ラベルの一般的な標準はありません。すべて手編みです。たとえば、 til-linuxでのスーパーブロック形式のこの実装 を参照してください。明日新しいファイルシステムを発明した場合、ラベルが付いていても、サポートが追加されるまで表示されません。
lsblk
出力で、FSTYPE
列を追加すると、表示されているラベルに何が提供されているのかがわかる場合があります。次に、別のデバイスに同じ方法でラベルを付けたい場合は、そのデバイスにも同じファイルシステム(またはレイドスーパーブロック、またはそれが何であれ...)を配置する必要があります。そうすることで、以前にそこにあったものはすべて自然に削除されます(最初に新しいデバイスを作成しない限り、1つのデバイスに2つのファイルシステムを置くことはできません)。