GNU/Linux >> Tutoriales Linux >  >> Linux

Linux:¿cómo configurar la etiqueta de un disco (no de una partición)?

He estado buscando y no puedo encontrar una respuesta clara, o encuentro que la respuesta es "no" cuando mi sistema me muestra lo contrario.

Ejecuto Arch Linux y, al conectar un disco duro nuevo a un grupo de ZFS, noté que la unidad principal de mi sistema SSD tiene una etiqueta LABEL atributo/propiedad (no estoy seguro de cuál es la terminología).

NOTA: Estoy hablando de la unidad , no las particiones dentro de esa unidad.

Realmente me gustaría que mis otros discos tuvieran una LABEL así, pero no sé cómo hacerlo.

¿Alguien tiene idea de cómo lograr esto?

A continuación se muestra una salida limpia de lsblk para ilustrar lo que estoy buscando.
En mi sistema <#LABEL1#> está configurado como se ve en la salida, quiero configurar/cambiar <#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
.
.
.

Editar:después de aceptar la respuesta

Por @frostschutz En mi ejemplo anterior, el FSTYPE en mi caso fue zfs_member , y la etiqueta era en realidad el nombre del zfs-pool (que se nombró exactamente como el nombre de mi sistema, por lo que pensé que podría haberlo nombrado manualmente en el pasado, no lo hice).

El único identificador único relevante que se relaciona con el disco físico es el WWN. , y el que se relaciona con la tabla de particiones GPT es el PTUUID .

Entonces, como con todas las otras respuestas que he encontrado antes, la respuesta es 'NO'.
No hay forma de asignar un nombre a un dispositivo de disco.

De ahora en adelante mi lsblk Las opciones de comando de elección para listar ID relevantes serían:

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

Respuesta aceptada:

Eso depende del contenido del dispositivo. Más concretamente, depende de si existe o no una supermanzana conocida que proporcione una etiqueta.

Puede ser un superbloque de sistema de archivos (como ext4, xfs, fat, iso9660, …), un dispositivo de intercambio, un superbloque de raid (mdadm) o incluso un contenedor de criptas (LUKS2).

En consecuencia, puede especificar una etiqueta cuando mkfs un sistema de archivos, o tal vez cambiarlo más tarde con una herramienta específica del sistema de archivos (para ext4, eso sería tune2fs -L ), en el caso de mdadm es el --name de la matriz y en el caso de LUKS2 el cryptsetup --label opción.

Relacionado:Linux – ¿La línea Shebang con el comando `#!/usr/bin/env –argument` falla en Linux?

Que yo sepa, no hay forma de establecer etiquetas arbitrariamente sin tenerlo conectado a algún sistema de archivos u otros proveedores de superbloques. Lo más cercano que puede obtener es con PARTLABEL en una tabla de particiones GPT (parted name ... ), luego se adjunta a la tabla de particiones en sí, pero luego, una PARTLABEL no es una ETIQUETA. No anula ni reemplaza las etiquetas del sistema de archivos.

No existe un estándar genérico para las etiquetas, todo está tejido a mano, vea por ejemplo esta implementación de formatos de superbloques en util-linux. Si mañana inventa un nuevo sistema de archivos, incluso si tiene una etiqueta, no aparecerá hasta que se agregue soporte.

En tu lsblk salida, si agrega el FSTYPE columna, es posible que tenga una idea de lo que podría haber proporcionado las etiquetas que está viendo. Luego, si desea proporcionar una etiqueta en otro dispositivo de la misma manera, simplemente... tiene que poner el mismo sistema de archivos (o superbloque raid, o lo que sea...) en ese dispositivo también. Al hacerlo, se eliminará de forma natural cualquier otra cosa que haya antes (no se pueden tener dos sistemas de archivos en un dispositivo, no sin antes crear nuevos dispositivos).


Linux
  1. Cómo particionar un disco en Linux

  2. Cómo administrar una partición de intercambio en Linux

  3. Cómo establecer la variable $Path en Linux

  4. ¿Cómo habilitar la partición de intercambio de Linux?

  5. ¿Cómo determino el tamaño de bloque de una partición ext3 en Linux?

Cómo eliminar una partición en Linux

Cómo crear particiones en Linux

Comando set de Linux y cómo usarlo {9 ejemplos}

Cómo configurar o cambiar el nombre de host en Linux

Cómo cifrar la partición en Linux

Cómo encriptar dispositivos de bloque usando LUKS en Linux