Como usar o comando findmnt no Linux

Ilustração de um sistema de gerenciamento de documentos flutuando sobre um laptop aberto
NicoElNino/Shutterstock.com

findmntDescubra tudo sobre os pontos de montagem do seu sistema de arquivos com o comando Linux . É uma ferramenta completa com uma sintaxe muito fácil. Nós mostramos a você como usá-lo.

Pontos de montagem

O sistema de arquivos Linux é uma grande árvore. Dependendo das escolhas que você fez quando instalou o Linux, diferentes discos rígidos dentro de seu computador podem ter diferentes sistemas de arquivos neles. Se você usar snappacotes, também terá squashfssistemas de pseudo-arquivos em seu sistema. Dispositivos como cartões de memória USB terão sistemas de arquivos variados, especialmente se você também os usar em computadores Windows.

Independentemente do tipo de sistema de arquivos, todos eles precisam ser enxertados na árvore do sistema de arquivos em um processo chamado  montagem . A montagem é um passo crucial na obtenção de um sistema de trabalho. Costumamos pensar em montar um dispositivo como um disco rígido, mas na verdade o que está sendo montado é o sistema de arquivos desse dispositivo. E sem acesso a todos esses vários sistemas de arquivos, seu computador pode nem inicializar ou você não poderá acessar aplicativos ou dados.

Os sistemas de arquivos são montados em pontos de montagem. Estes são apenas diretórios vazios. Depois que o sistema de arquivos estiver montado, entrar nesse diretório o colocará nesse sistema de arquivos. Isso dá uma grande flexibilidade. A raiz da árvore do sistema de arquivos deve ser montada em “ /“, mas você pode montar outros sistemas de arquivos sempre que fizer mais sentido em suas circunstâncias particulares.

Essa flexibilidade significa que pode ser difícil acompanhar todos os diferentes pontos de montagem, especialmente aqueles que foram criados automaticamente e foram criados sem o seu envolvimento. O Linux fornece uma variedade de ferramentas de linha de comando para permitir que você revise a configuração e o estado de seus pontos de montagem. De todos eles,  findmnté o mais fácil de usar e tem alguns truques próprios.

Recomendado:  cURL vs. wget no Linux: Qual é a diferença?

O comando findmnt

O findmntcomando já estava instalado nas compilações do Ubuntu, Manjaro e Fedora que verificamos. Se não estiver instalado em seu computador Linux, você poderá encontrá-lo facilmente usando o gerenciador de pacotes da sua distribuição.

A ferramenta de linha de comando que você usa para montar sistemas de arquivos é chamada mount. Os sistemas de arquivos que são montados no momento da inicialização são definidos no arquivo “/etc/fstab”. Você pode usar o mountcomando para obter um dump de todos os pontos de montagem configurados em seu arquivo “/etc/fstab”.

montar

O comando de montagem

A saída é detalhada, mas formatada em uma parede densa de texto.

O dump bruto de informações do comando mount

Com um pouco de esforço, você pode escolher seu caminho através dele ou canalizá-lo através de utilitários, como greppara extrair os bits de seu interesse. A saída findmnté muito mais acessível.

encontrar

O comando findmnt

Por outro lado, a saída padrão de findmnté tabulada e contém uma árvore mostrando a hierarquia dos pontos de montagem.

A saída tabulada de findmnt

As colunas são:

  • Target : O local do ponto de montagem no sistema de arquivos
  • Source : O dispositivo de origem que contém o sistema de arquivos. Observe que isso pode ser um pseudodispositivo como um dispositivo de loopback.
  • Fstype : O tipo de sistema de arquivos.
  • Opções : As opções que foram usadas com o comando de montagem da linha de comando ou no arquivo “/etc/fstab” para montar o sistema de arquivos.

Para ver a saída sem a árvore, use a -lopção (lista).

findmnt -l

O comando findmnt com a opção -l list

As colunas são as mesmas, mas a hierarquia do ponto de montagem não é representada como uma árvore recuada.

A saída de listagem simples findmnt

Selecionando tipos de sistema de arquivos específicos

A opção -t (tipo) faz findmntcom que seu relatório seja restrito para incluir apenas o tipo de sistema de arquivos solicitado. Por exemplo, para ver apenas ext4sistemas de arquivos, você usaria:

findmnt -t exta

Inspecionando pontos de montagem do sistema de arquivos ext4 com findmnt

Para ver apenas squashfsos sistemas de arquivos, você digitaria:

findmnt -t squashfs

Inspecionando pontos de montagem do sistema de arquivos squashfs com findmnt

Para inverter a seleção para que você veja todo o resto além do tipo que você especificou na linha de comando, use a -iopção (inverter).

findmnt -t squashfs -i

Excluindo pontos de montagem squashfs com a opção -i invert

Os squashfssistemas de arquivos não são relatados.

Recomendado:  Como obter respostas do Formulários Google em um e-mail

Saída de findmnt com sistemas de arquivos squashfs ignorados

A -topção (tipo) permite usar uma lista de tipos de sistema de arquivos separados por vírgulas. Não coloque espaços entre eles, pois espaços em branco não são permitidos entre os tipos de sistema de arquivos.

findmnt -t squashfs,proc,ext4

Selecionando três tipos de ponto de montagem do sistema de arquivos de uma só vez com findmnt

Escolhendo a fonte de dados

Por padrão, findmntobtém suas informações de “/etc/fstab”, “/etc/mtab” e “/proc/self/mountinfo”.

  • /etc/fstab : Este é o arquivo que contém os detalhes das montagens configuradas. Estes são acionados no momento da inicialização.
  • /etc/mtab : Este arquivo contém os detalhes das montagens atualmente montadas.
  • /proc/self/mountinfo : Isso consulta o kernel para a conta mais confiável das montagens do seu sistema.

Você pode dizer findmntpara usar uma fonte específica, se desejar. As opções são:

  • —fstab ou -s : Procure apenas em “/etc/fstab”.
  • —mtab ou -m : Procure apenas em “/etc/mtab”.
  • —kernel ou -k : Procure apenas em “/proc/self/mountinfo”.

Podemos ver a diferença que isso pode fazer se procurarmos por vfatsistemas de arquivos. Primeiro, usaremos a opção -s( fstab ). Isso encontra um vfatsistema de arquivos, montado em “/boot/efi”.

findmnt -s -t vfat

Usando findmnt para pesquisar /etc/fstab para montagens do sistema de arquivos vfat

Tentaremos novamente, e desta vez usaremos a -kopção (kernel).

findmnt -k -t vfat

Usando findmnt para pesquisar /proc/self/mount para montagens do sistema de arquivos vfat

Isso relata quatro entradas. Um é o mesmo vfatsistema de arquivos que a -sopção encontrou. Os outros três são  montagens ad-hoc  que ocorreram porque dois cartões de memória USB foram conectados. A -sopção não os encontrou porque eles não estão configurados no arquivo “/etc/fstab”.

Um cartão de memória USB é conectado como “/dev/sdc1”, que é a primeira partição no dispositivo sdc. O outro cartão de memória tem duas partições e estas foram montadas como “/dev/sdb1” e “/dev/sdb2”.

Selecionando por Ponto de Montagem

Se você conhece o ponto de montagem, pode passar isso para findmntdescobrir as configurações e outros detalhes.

findmnt /media/dave/PINK
findmnt /media/dave/WHITEUSB

Inspecionando pontos de montagem por nome com findmnt

Podemos ver que esses dois cartões de memória USB têm vfatsistemas de arquivos e foram montados como “/dev/sdb2” e “/dev/sdc1”.

Recomendado:  Como ocultar ou exibir todos os ícones da área de trabalho no Windows

Usando o modo de sondagem em findmnt

Possivelmente, o recurso mais legal findmnté o recurso de pesquisa. Gravar imagens em dispositivos USB é algo que você pode fazer periodicamente. Identificar a unidade correta é fundamental, é claro. Você não quer substituir o dispositivo errado. findmnttorna fácil ver em qual dispositivo uma unidade removível está conectada.

Existem duas maneiras de fazer isso. Você pode pedir findmntpara monitorar novas montagens por um período de tempo, expresso em milissegundos. Quaisquer montagens que acontecem durante esse período são relatadas. Isso usa a --timeoutopção.

A segunda maneira diz findmntpara esperar até detectar uma nova montagem. Isso usa a --first-onlyopção. Ele aguardará o tempo necessário para que uma nova montagem ocorra, mas informará apenas a primeira montagem que ocorrer. A --timeoutopção relatará todas as novas montagens que ocorrerem durante o período de pesquisa especificado.

Este comando diz findmntpara monitorar novas montagens por 30 segundos.

findmnt -p --timeout 30000

Fazendo findmnt monitor para novos pontos de montagem por 30 segundos

Um único cartão de memória USB foi conectado durante esse período, informado e findmntcontinua monitorando pelo restante dos 30 segundos.

Este comando diz findmntpara monitorar novas montagens até ver um novo ponto de montagem criado.

findmnt -p --first-only

aguardando o próximo novo ponto de montagem com findmnt

Quando um novo dispositivo é conectado, ele relata um novo ponto de montagem e sai para o prompt de comando.

Uma maneira simples de evitar faltas

Substituir o dispositivo errado é sempre um desastre. O findmntcomando facilita a identificação positiva de um dispositivo que você acabou de conectar, tornando o processo de substituição muito mais seguro.

Fácil e seguro é outra maneira de dizer ganha-ganha.