Introdução
Neste laboratório, exploraremos o comando Linux lsblk, que exibe informações sobre todos os dispositivos de bloco disponíveis no seu sistema. Dispositivos de bloco incluem discos rígidos, SSDs, unidades USB e outras mídias de armazenamento. O comando lsblk apresenta esta informação em um formato claro, semelhante a uma árvore, que facilita a compreensão da relação entre diferentes dispositivos de armazenamento e suas partições.
Compreender os dispositivos de armazenamento é essencial para qualquer pessoa que trabalhe com sistemas Linux. Seja para identificar o armazenamento disponível, verificar os tamanhos das partições ou verificar os pontos de montagem, o comando lsblk fornece uma maneira rápida e eficiente de reunir essa informação.
Ao final deste laboratório, você será capaz de usar o comando lsblk com várias opções para obter informações detalhadas sobre os dispositivos de armazenamento em seu sistema Linux.
Uso Básico do Comando lsblk
O comando lsblk significa "list block devices" (listar dispositivos de bloco) e é usado para exibir informações sobre todos os dispositivos de bloco disponíveis no seu sistema Linux. Dispositivos de bloco são dispositivos de armazenamento, como discos rígidos, SSDs e unidades USB.
Vamos começar executando o comando lsblk básico no terminal:
Abra seu terminal, se ainda não estiver aberto.
Digite o seguinte comando e pressione Enter:
lsblk
Você deve ver uma saída semelhante a esta:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 55.5M 1 loop /snap/core18/2128
loop1 7:1 0 55.4M 1 loop /snap/core18/2284
loop2 7:2 0 43.6M 1 loop /snap/snapd/15534
loop3 7:3 0 61.9M 1 loop /snap/gtk-common-themes/1535
loop4 7:4 0 31.1M 1 loop /snap/snapd/16292
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 49G 0 part /
└─sda2 8:2 0 976M 0 part [SWAP]
Esta saída mostra todos os dispositivos de bloco no seu sistema, com as seguintes colunas:
NAME: O nome do dispositivoMAJ:MIN: Números de dispositivo major e minorRM: Flag de removível (1 significa removível, 0 significa não removível)SIZE: O tamanho do dispositivoRO: Flag de somente leitura (1 significa somente leitura, 0 significa leitura-escrita)TYPE: Tipo de dispositivo (disco, partição, loop, etc.)MOUNTPOINT: Onde o dispositivo está montado (se aplicável)
No exemplo acima, você pode ver:
- Vários dispositivos
loopusados por pacotes snap - Um dispositivo de armazenamento principal
sda(que é um disco de 50GB) - Duas partições em
sda:sda1(montada na raiz/) esda2(usada como espaço de swap)
A estrutura em árvore na saída facilita a visualização de quais partições pertencem a quais discos. Por exemplo, você pode ver que tanto sda1 quanto sda2 são partições do disco sda.
Agora que você entende a saída básica do comando lsblk, vamos explorar algumas opções úteis nos próximos passos.
Exibindo Informações Adicionais com lsblk
Nesta etapa, aprenderemos como usar o comando lsblk com diferentes opções para exibir informações mais detalhadas sobre os dispositivos de bloco.
Usando a Opção -f para Mostrar Informações do Sistema de Arquivos
A opção -f mostra informações do sistema de arquivos, incluindo o tipo de sistema de arquivos, rótulo, UUID e ponto de montagem. Isso é particularmente útil quando você precisa identificar dispositivos por seu UUID ou verificar quais tipos de sistema de arquivos estão em uso.
Execute o seguinte comando no seu terminal:
lsblk -f
Você deve ver uma saída semelhante a esta:
NAME FSTYPE LABEL UUID MOUNTPOINT
loop0 squashfs /snap/core18/2128
loop1 squashfs /snap/core18/2284
loop2 squashfs /snap/snapd/15534
loop3 squashfs /snap/gtk-common-themes/1535
loop4 squashfs /snap/snapd/16292
sda
├─sda1 ext4 5fbb8eed-12a3-4b5c-9d67-9594ff4e2d1c /
└─sda2 swap b409ae25-7589-44eb-a909-b56f1d42c5ab [SWAP]
A saída agora inclui colunas adicionais:
FSTYPE: O tipo de sistema de arquivos (ext4, swap, squashfs, etc.)LABEL: Qualquer rótulo do sistema de arquivos que tenha sido atribuídoUUID: O Identificador Único Universal (UUID - Universal Unique Identifier) para o sistema de arquivos
Usando a Opção -m para Mostrar Informações do Proprietário e Modo do Dispositivo
A opção -m exibe permissões e informações do proprietário para os dispositivos de bloco. Isso é útil ao solucionar problemas relacionados a permissões.
Execute o seguinte comando:
lsblk -m
Você deve ver uma saída como esta:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT OWNER GROUP MODE
loop0 7:0 0 55.5M 1 loop /snap/core18/2128 root disk brw-rw----
loop1 7:1 0 55.4M 1 loop /snap/core18/2284 root disk brw-rw----
loop2 7:2 0 43.6M 1 loop /snap/snapd/15534 root disk brw-rw----
loop3 7:3 0 61.9M 1 loop /snap/gtk-common-themes/1535 root disk brw-rw----
loop4 7:4 0 31.1M 1 loop /snap/snapd/16292 root disk brw-rw----
sda 8:0 0 50G 0 disk root disk brw-rw----
├─sda1 8:1 0 49G 0 part / root disk brw-rw----
└─sda2 8:2 0 976M 0 part [SWAP] root disk brw-rw----
As novas colunas mostram:
OWNER: O usuário que possui o dispositivo (normalmente root)GROUP: O grupo proprietário do dispositivo (normalmente disk)MODE: O modo de permissão do dispositivo
Usando a Opção -o para Selecionar Colunas Específicas de Saída
A opção -o permite que você especifique quais colunas exibir. Isso é útil quando você só precisa de certas informações e deseja uma saída mais limpa e focada.
Vamos exibir apenas as colunas name, size e mountpoint:
lsblk -o NAME,SIZE,MOUNTPOINT
A saída será muito mais simples:
NAME SIZE MOUNTPOINT
loop0 55.5M /snap/core18/2128
loop1 55.4M /snap/core18/2284
loop2 43.6M /snap/snapd/15534
loop3 61.9M /snap/gtk-common-themes/1535
loop4 31.1M /snap/snapd/16292
sda 50G
├─sda1 49G /
└─sda2 976M [SWAP]
Esta saída personalizada facilita o foco apenas nas informações de que você precisa. Você pode combinar várias opções para obter exatamente as informações desejadas no formato que melhor se adapta às suas necessidades.
Filtrando Dispositivos de Bloco com lsblk
Nesta etapa, aprenderemos como filtrar a saída do comando lsblk para focar em tipos específicos de dispositivos de bloco ou exibir informações em diferentes formatos.
Filtrando por Tipo de Dispositivo
O comando lsblk permite que você filtre dispositivos por seu tipo usando a opção --type ou -t. Os tipos de dispositivo comuns incluem:
disk: Discos físicospart: Partiçõesloop: Dispositivos looplvm: Volumes Lógicos (Logical Volumes)
Para exibir apenas dispositivos de disco, execute o seguinte comando:
lsblk --type disk
A saída mostrará apenas os discos principais, sem suas partições:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
Da mesma forma, para exibir apenas dispositivos de partição, execute:
lsblk --type part
A saída mostrará apenas as partições:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda1 8:1 0 49G 0 part /
sda2 8:2 0 976M 0 part [SWAP]
Exibindo Caminhos de Dispositivos
A opção --paths exibe os caminhos completos dos dispositivos em vez de apenas os nomes dos dispositivos. Isso é útil quando você precisa referenciar os dispositivos em scripts ou comandos.
Execute o seguinte comando:
lsblk --paths
A saída incluirá os caminhos completos dos dispositivos:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
/dev/loop0 7:0 0 55.5M 1 loop /snap/core18/2128
/dev/loop1 7:1 0 55.4M 1 loop /snap/core18/2284
/dev/loop2 7:2 0 43.6M 1 loop /snap/snapd/15534
/dev/loop3 7:3 0 61.9M 1 loop /snap/gtk-common-themes/1535
/dev/loop4 7:4 0 31.1M 1 loop /snap/snapd/16292
/dev/sda 8:0 0 50G 0 disk
├─/dev/sda1 8:1 0 49G 0 part /
└─/dev/sda2 8:2 0 976M 0 part [SWAP]
Exibindo a Saída em Formato JSON
A opção --json gera a saída das informações em formato JSON, o que é útil para processamento programático ou ao integrar com outras ferramentas.
Execute o seguinte comando:
lsblk --json
A saída estará em formato JSON:
{
"blockdevices": [
{
"name": "loop0",
"maj:min": "7:0",
"rm": false,
"size": "55.5M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/core18/2128"
},
{
"name": "loop1",
"maj:min": "7:1",
"rm": false,
"size": "55.4M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/core18/2284"
},
{
"name": "loop2",
"maj:min": "7:2",
"rm": false,
"size": "43.6M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/snapd/15534"
},
{
"name": "loop3",
"maj:min": "7:3",
"rm": false,
"size": "61.9M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/gtk-common-themes/1535"
},
{
"name": "loop4",
"maj:min": "7:4",
"rm": false,
"size": "31.1M",
"ro": true,
"type": "loop",
"mountpoint": "/snap/snapd/16292"
},
{
"name": "sda",
"maj:min": "8:0",
"rm": false,
"size": "50G",
"ro": false,
"type": "disk",
"children": [
{
"name": "sda1",
"maj:min": "8:1",
"rm": false,
"size": "49G",
"ro": false,
"type": "part",
"mountpoint": "/"
},
{
"name": "sda2",
"maj:min": "8:2",
"rm": false,
"size": "976M",
"ro": false,
"type": "part",
"mountpoint": "[SWAP]"
}
]
}
]
}
Combinando Opções para Controle Preciso
Você pode combinar várias opções para obter exatamente as informações de que precisa. Por exemplo, para exibir apenas dispositivos de disco com seus caminhos completos em formato JSON:
lsblk --type disk --paths --json
A saída será uma representação JSON de apenas os dispositivos de disco com seus caminhos completos:
{
"blockdevices": [
{
"name": "/dev/sda",
"maj:min": "8:0",
"rm": false,
"size": "50G",
"ro": false,
"type": "disk"
}
]
}
Essas opções de filtragem tornam o comando lsblk muito flexível e permitem que você obtenha precisamente as informações de que precisa sobre os dispositivos de bloco no seu sistema.
Uso Avançado de lsblk para Cenários Práticos
Nesta etapa, exploraremos cenários práticos onde o comando lsblk se mostra valioso para tarefas de administração e solução de problemas do sistema.
Verificando o Uso do Disco e o Espaço Disponível
Para verificar o uso do disco e o espaço disponível, você pode combinar lsblk com a opção -b (para mostrar os tamanhos em bytes) e selecionar colunas específicas:
lsblk -b -o NAME,SIZE,FSAVAIL,FSUSE%,MOUNTPOINT
A saída mostrará informações de uso do disco:
NAME SIZE FSAVAIL FSUSE% MOUNTPOINT
loop0 58195968 0 - /snap/core18/2128
loop1 58130432 0 - /snap/core18/2284
loop2 45719552 0 - /snap/snapd/15534
loop3 64897024 0 - /snap/gtk-common-themes/1535
loop4 32604160 0 - /snap/snapd/16292
sda 53687091200 - -
├─sda1 52613349376 39128932352 26% /
└─sda2 1023410176 0 - [SWAP]
As colunas mostram:
SIZE: O tamanho total em bytesFSAVAIL: Espaço disponível no sistema de arquivosFSUSE%: Porcentagem do sistema de arquivos usadoMOUNTPOINT: Onde o dispositivo está montado
Identificando Unidades USB
Ao conectar uma unidade USB, você pode usar lsblk para identificá-la rapidamente procurando por dispositivos removíveis:
lsblk -o NAME,SIZE,TYPE,RM,MOUNTPOINT
Na saída, procure por dispositivos com o valor RM (removível) de 1:
NAME SIZE TYPE RM MOUNTPOINT
loop0 55.5M loop 0 /snap/core18/2128
loop1 55.4M loop 0 /snap/core18/2284
loop2 43.6M loop 0 /snap/snapd/15534
loop3 61.9M loop 0 /snap/gtk-common-themes/1535
loop4 31.1M loop 0 /snap/snapd/16292
sda 50G disk 0
├─sda1 49G part 0 /
└─sda2 976M part 0 [SWAP]
Se você tivesse uma unidade USB conectada, ela normalmente apareceria como um disco adicional (como sdb) com o valor RM de 1.
Encontrando Números de Série de Dispositivos
Para inventário de hardware ou solução de problemas, você pode precisar encontrar números de série de dispositivos. O comando lsblk pode exibir essa informação:
lsblk -o NAME,SIZE,TYPE,SERIAL
A saída incluirá números de série para dispositivos que fornecem essa informação:
NAME SIZE TYPE SERIAL
loop0 55.5M loop
loop1 55.4M loop
loop2 43.6M loop
loop3 61.9M loop
loop4 31.1M loop
sda 50G disk ABCD1234
├─sda1 49G part
└─sda2 976M part
Observe que nem todos os dispositivos relatam números de série, e dispositivos virtuais como dispositivos loop normalmente não têm números de série.
Analisando Atributos de Desempenho do Disco
Para visualizar os atributos de desempenho do disco, você pode usar a opção --topology ou -t:
lsblk --topology
A saída inclui informações de topologia como alinhamento e tamanho ideal de I/O:
NAME ALIGNMENT MIN-IO OPT-IO PHY-SEC LOG-SEC ROTA SCHED RQ-SIZE RA WSAME
loop0 0 512 0 512 512 1 mq-deadline 256 128 0B
loop1 0 512 0 512 512 1 mq-deadline 256 128 0B
loop2 0 512 0 512 512 1 mq-deadline 256 128 0B
loop3 0 512 0 512 512 1 mq-deadline 256 128 0B
loop4 0 512 0 512 512 1 mq-deadline 256 128 0B
sda 0 512 0 512 512 1 mq-deadline 256 128 0B
├─sda1 0 512 0 512 512 1 mq-deadline 256 128 0B
└─sda2 0 512 0 512 512 1 mq-deadline 256 128 0B
Esta informação pode ser útil para ajuste de desempenho e solução de problemas relacionados a I/O.
Esses exemplos práticos demonstram como o comando lsblk é versátil para tarefas diárias de administração do sistema. Ao dominar essas técnicas, você pode reunir rapidamente informações importantes sobre dispositivos de armazenamento em seu sistema Linux.
Resumo
Neste laboratório, exploramos o comando lsblk do Linux, uma ferramenta poderosa para listar e exibir informações sobre dispositivos de bloco em seu sistema. Cobrimos vários aspectos importantes do comando:
- Uso básico de
lsblkpara exibir uma listagem em formato de árvore de todos os dispositivos de bloco - Como exibir informações adicionais, incluindo detalhes do sistema de arquivos, proprietário/permissões e seleções de colunas personalizadas
- Técnicas de filtragem para focar em tipos de dispositivos específicos ou formatos de exibição
- Cenários de uso avançado para tarefas de administração do sistema
O comando lsblk é uma ferramenta essencial para administradores e usuários de sistemas Linux que precisam gerenciar dispositivos de armazenamento. Suas opções flexíveis permitem que você obtenha rapidamente as informações exatas de que precisa sobre discos, partições e outros dispositivos de bloco em seu sistema.
Ao dominar o comando lsblk, você pode efetivamente:
- Identificar e gerenciar dispositivos de armazenamento
- Monitorar o uso do disco e o espaço disponível
- Solucionar problemas relacionados ao armazenamento
- Documentar a configuração de armazenamento do seu sistema
Essas habilidades formam uma base importante para tarefas de administração de sistemas Linux mais avançadas relacionadas ao gerenciamento de armazenamento.



