linux tux badge

Como usar o comando mount para visualizar, montar e desmontar sistemas de arquivos no Linux

O comando mount permite ver rapidamente e com riqueza de detalhes todos os sistemas de arquivos montados na sua máquina Linux.
Sua função primordial, contudo, não é essa.
Ele é muito mais usado para montar novos sistemas de arquivos.
Para desmontar, usa-se o comando umount.
comando-findmnt-para-listar-sistemas-de-arquivos-ativos

O modo listagem do comando mount

O modo de listagem do comando é mantido por questões de compatibilidade. Há outros métodos recomendados para listar os file systems ativos — como veremos, ainda neste texto.
Para usar o modo listagem, basta executar o comando sozinho:

mount

Ao usar o comando desta maneira, você vai notar que a quantidade de informações pode ser muito grande e, para quem só quer saber quais sistemas de arquivos estão ativos, este método não é mesmo o melhor.
Uma solução rápida para isto, compreende o uso do comando grep:

mount | grep -i '/dev/sd'

A saída deste comando é mais sucinta — inclui o os nomes dos sistemas de arquivos ativos e as opções de montagem, como você pode ver abaixo:

/dev/sdb1 on / type btrfs (rw,relatime,ssd,space_cache,subvolid=5,subvol=/)
/dev/sda2 on /home type ext4 (rw,relatime,data=ordered)
/dev/sdc on /media/justincase/BLUE type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)

Você pode também especificar exatamente quais tipos de sistemas de arquivos deseja ver na sua listagem:

mount --types btrfs,ext4
/dev/sdb1 on / type btrfs (rw,relatime,ssd,space_cache,subvolid=5,subvol=/) [utraSSD]
/dev/sda2 on /home type ext4 (rw,relatime,data=ordered)

A documentação do comando mount, no entanto, sugere que se use o findmnt para listar os sistemas ativos.
Veja como o resultado é mais organizado:

findmnt | grep -i '/dev/sd'
/                                     /dev/sdb1  btrfs           rw,relatime,ssd,space_cache,subvolid=5,subvol=/
├─/home                               /dev/sda2  ext4            rw,relatime,data=ordered
└─/media/justincase/BLUE              /dev/sdc   vfat            rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro

Se você quiser, pode usar esta sequência dentro de um só comando ou alias, basta incluí-lo na ultima linha do arquivo .bashrc:

alias montados="findmnt | grep -i '/dev/sd'"

Com isto, toda vez em que você digitar ‘montados’, a linha de comando findmnt | grep -i '/dev/sd' é que será executada.
Não esqueça de reiniciar o Bash, para o alias funcionar — com ‘logout’ ou ‘exit’.

Os arquivos /etc/fstab, /etc/mtab and /proc/mounts

Cada um destes arquivos tem sua função dentro do sistema.
O arquivo /etc/fstab conterá linhas descrevendo quais dispositivos podem ser montados no seu sistema, aonde e de que modo podem ser montados.
Leia o artigo Como montar um drive pelo nome de volume para saber mais sobre o fstab.

Use também a caixa de busca deste site, para encontrar outros artigos que envolvem o uso do fstab e do mount.

Por fim, todos os sistemas de arquivos mencionados no fstab são montados na inicialização do sistema — desde que descritos apropriadamente e não tenham a tag noauto em sua linha descritiva.
O arquivo /etc/mtab contém a lista de sistemas de arquivos montados no sistema.
Embora ele ainda seja suportado na maioria das distribuições Linux, a documentação sugere que você busque estas referência no arquivo /proc/mounts.
Isto ocorre por que o arquivo mtab, mantido no espaço do usuário, não consegue trabalhar com confiabilidade com namespaces, contêineres e outros recursos avançados do Linux.
Combine os comandos cat e grep, para ver o conteúdo parcial deste arquivo:

cat /proc/mounts | grep -i /dev/sd

Se quiser entender melhor o funcionamento do sistema de arquivos proc, leia o artigo Como obter informações do sistema através do /proc.

Como montar dispositivos usando o mount

Nos dias atuais, é muito incomum o usuário ou o sysadmin ter que “mountar” manualmente algum dispositivo conectado ao sistema.
Pendrives, CDs, DVDs, cartões de memória flash etc. todos já entram funcionando e exibindo seu conteúdo.
Dispositivos locais podem ser montados seguindo a regra de indicar o endereço ao qual o dispositivo está conectado, ponto de montagem desejado e o tipo de sistema de arquivos.
Por exemplo, para montar um drive de CD (com a mídia dentro), use o seguinte comando:

sudo mount -t iso9660 /dev/cdrom /cdrom

O ISO 9660 também conhecido como ECMA-119 ou CDFS (Compact Disc File System) por alguns provedores de hardware e software, é uma norma de sistema de arquivos, publicado pela International Organization for Standardization, a ISO, para mídias de disco ótico — Wikipedia.

Para montar um drive flash externo, ligado à sua porta USB, com o sistema de arquivos VFAT, no endereço ‘/dev/sdc’, sob o ponto de montagem ‘/mnt’, use a seguinte linha de comando:

sudo mount -t vfat /dev/sdc /mnt/

Se você já tem alguma linha no seu fstab, descrevendo aquele dispositivo especificamente, você pode montá-lo informando apenas o ponto de montagem: mount /cdrom, por exemplo.
Todas as opções da linha, referente àquele dispositivo, serão usadas na montagem.
Há outros casos em que pode ser necessário usar o processo de montagem manual — quando queremos montar um sistema de arquivos remoto, via rede, por exemplo.
Há alguns exemplos disto no artigo Como montar e acessar o sistema de arquivos WebDAV, onde este processo é descrito.
Para desmontar um dispositivo, basta também fornecer apenas o nome do ponto de montagem:

sudo umount /cdrom

Como montar sistemas de arquivos sem ser superusuário

Como você deve ter notado, os exemplos mostram como montar dispositivos, acompanhados do comando sudo.
É possível dispensar isto, permitindo que qualquer usuário no sistema monte um dispositivo, sem a necessidade de invocar privilégios especiais.
Para isto, basta adicionar a opção ‘user’ à linha de opções de montagem daquele dispositivo no fstab.
Veja um exemplo:

/dev/cdrom  /cd  iso9660  ro,user,noauto,unhide

Com estas opções, é possível a qualquer usuário do sistema montar o cdrom, com o comando:

mount /cd

Note que a opção ‘user’ só vai permitir que o usuário que montou o dispositivo o desmonte posteriormente.
Se você quiser que todos os usuários possam desmontar aquele dispositivo, use a opção ‘users’ (no plural).

Publicado por

Elias Praciano

Autor de tecnologia (livre, de preferência), apaixonado por programação e astronomia. Fã de séries, como "Rick and Morty" e "BoJack Horseman". Me siga no Twitter e vamos trocar ideias!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *