Montando Dispositivos - Linux

O comando mount é geralmente utilizado para montar dispositivos manualmente no sistema, como por exemplo dispositivos USB. Em sistemas desktop com interface gráfica, essa operação costuma ser realizada automaticamente, com o sistema detectando e montando os dispositivos conectados. No entanto, em alguns casos, pode ser necessário realizar a montagem manualmente, como quando o sistema não reconhece corretamente os dispositivos conectados.

A sintaxe básica da montagem:

mount o_que_montar onde_montar

Primeiro, o comando mount recebe o dispositivo a ser montado e, em seguida, o local onde será montado. O dispositivo a ser montado geralmente é identificado pelo nome do dispositivo (por exemplo, o nome do disco). O local de montagem costuma ser uma pasta no diretório media. Outra opção comum é o diretório /mnt.

Vamos ver um exemplo prático. No meu caso, um disco SSD, identificado como /dev/nvme0n1p3, está conectado ao computador, mas o sistema não o reconhece e ele não está montado. Para montar esse disco, utilizarei o diretório media. Normalmente, neste diretório, é criado automaticamente um subdiretório para o usuário atual, onde os dispositivos são montados automaticamente. No meu caso, o usuário atual é "programicio", portanto, o diretório de montagem será /media/programicio. Primeiro, criarei uma pasta para o dispositivo nesse diretório:

programicio@Programicio:~$ cd /media/programicio/
programicio@Programicio:/media/programicio$ sudo mkdir windows

A pasta do dispositivo será chamada windows. Em seguida, executaremos o comando para montar o dispositivo:

programicio@Programicio:/media/programicio$ sudo mount /dev/nvme0n1p3 /media/programicio/windows

Dessa forma, o dispositivo /dev/nvme0n1p3 será montado na pasta /media/programicio/windows. Após isso, posso acessar o disco montado e verificar seu conteúdo:

programicio@Programicio:/media/programicio$ cd windows
programicio@Programicio:/media/programicio/windows$ ls -l 
total 76298556
drwxrwxrwx 1 root root           0 Jan 24 18:57 '$Recycle.Bin'
-rwxrwxrwx 2 root root      112136 Feb 22 01:33  appverifUI.dll
drwxrwxrwx 1 root root        4096 Mar 19 20:25  Config.Msi
lrwxrwxrwx 1 root root          27 Dec  2 09:36 'Documents and Settings' -> /media/programicio/windows/Users
...
drwxrwxrwx 1 root root       24576 Mar 19 18:20  Windows

O comando mount também suporta diversas opções. Destaco algumas importantes. Por exemplo, a opção -t permite especificar o tipo de sistema de arquivos do dispositivo a ser montado:

programicio@Programicio:/media/programicio$ sudo mount -t ntfs /dev/nvme0n1p3 /media/programicio/windows

Aqui, o tipo de sistema de arquivos utilizado é ntfs. Alguns tipos comuns de sistemas de arquivos são:

  • ext4: Substituiu o ext3 e é geralmente o tipo padrão em Linux.

  • vfat: Utilizado para acessar dispositivos com Windows, especialmente aqueles que usam o sistema FAT.

  • ntfs: Sistema de arquivos padrão do Windows. O Linux oferece suporte completo ao NTFS, permitindo a interação com dispositivos que utilizam esse sistema.

Outra opção frequentemente utilizada é -r, que monta o dispositivo apenas para leitura. Por padrão, a opção -rw é aplicada, montando o dispositivo para leitura e escrita. Para montar um disco apenas para leitura, use a opção -r:

programicio@Programicio:/media/programicio$ sudo mount -r /dev/nvme0n1p3 /media/programicio/windows

Montagem Automática

Ao iniciar o computador, algumas montagens são realizadas automaticamente. Para isso, o Linux utiliza o arquivo /etc/fstab, que especifica como e onde as sistemas de arquivos devem ser montadas. Esse arquivo contém uma lista de todas as conexões que devem ocorrer regularmente. No /etc/fstab, para cada montagem, pode-se especificar se isso deve ocorrer automaticamente na inicialização do sistema. Podemos verificar essas montagens automáticas com o seguinte comando:

programicio@Programicio:~$ cat /etc/fstab
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/disk/by-uuid/4caa5b11-c643-41f5-90b3-20d9e3fcb17e / ext4 defaults 0 1
/dev/disk/by-uuid/B5DD-121B /boot/efi vfat defaults 0 1
/swap.img none swap sw 0 0

Neste arquivo, cada sistema de arquivos possui diversos parâmetros:

  • file system (sistema de arquivos): o primeiro campo descreve o dispositivo ou sistema de arquivos remoto a ser montado. Em algumas situações, os nomes diretos dos dispositivos são substituídos por identificadores únicos (UUID), como no exemplo acima.

  • mount point (ponto de montagem): o segundo campo descreve o local onde a sistema de arquivos será montada. Normalmente, é um diretório no qual a sistema de arquivos deve ser montada.

  • type (tipo de sistema de arquivos): o terceiro campo indica o tipo de sistema de arquivos.

  • options (opções de montagem): o quarto campo especifica as opções a serem usadas ao montar a sistema de arquivos. Existem muitas opções disponíveis, muitas das quais dependem do sistema de arquivos. Para a maioria dos sistemas de arquivos, a opção "defaults" é usada, garantindo que a sistema de arquivos seja montada automaticamente na inicialização do computador e impedindo usuários comuns de desmontá-la. Algumas opções frequentemente usadas são:

    • async: gravação na sistema de arquivos é feita de forma assíncrona, utilizando um mecanismo de cache de gravação. Isso garante que a gravação de arquivos seja realizada de maneira mais eficiente, mas há o risco de perda de dados se o contato com a sistema de arquivos for perdido repentinamente.

    • dev: trata dispositivos de bloco e caracteres na sistema de arquivos como dispositivos e não como arquivos comuns. Por razões de segurança, recomenda-se evitar essa opção em dispositivos que podem ser montados por usuários comuns.

    • exec: permite a execução de arquivos binários.

    • hotplug: não relata erros se o dispositivo não existir no momento. Isso faz sentido para dispositivos removíveis, como unidades USB.

    • noatime: não atualiza o tempo de acesso na sistema de arquivos sempre que um arquivo é aberto. Essa opção torna a sistema de arquivos um pouco mais rápida se houver muitas operações de leitura. Recomenda-se ativar essa opção por padrão para todas as sistemas de arquivos montadas no computador, a menos que seja necessário usar um sistema de rastreamento para monitorar quais arquivos são acessados por quais usuários em momentos específicos.

    • noauto: a sistema de arquivos não é montada automaticamente na inicialização do sistema ou quando o usuário usa o comando mount -a para montar automaticamente tudo listado no /etc/fstab.

    • mode: define o modo de permissões para novos arquivos criados na sistema de arquivos.

    • remount: remonta uma sistema de arquivos já montada. Esta opção é útil apenas a partir da linha de comando.

    • user: permite que o usuário monte a sistema de arquivos. Esta opção é geralmente usada apenas para dispositivos removíveis.

    • sync: garante a sincronização do conteúdo da sistema de arquivos com o dispositivo antes de ser desconectado.

  • dump (status de backup): este campo é usado pela ferramenta de backup dump, que permite criar cópias de segurança da sistema de arquivos. O campo define quais sistemas de arquivos devem ser incluídas no backup quando a ferramenta dump é chamada. Se o valor do campo for 0, nenhuma cópia será criada para a sistema de arquivos. Se o valor for 1, uma cópia será criada quando o dump for chamado. Normalmente, define-se o valor 1 para sistemas de arquivos que contêm dados importantes.

  • pass (status de verificação Fsck): o último campo no fstab define como a sistema de arquivos deve ser verificada pelo comando fsck. Durante a inicialização, o carregador de inicialização verifica se a sistema de arquivos precisa ser verificada pelo fsck. Se o valor estiver definido como 0, a verificação automática não será realizada. Se o valor for 1, a sistema de arquivos deve ser verificada primeiro. Outras sistemas de arquivos podem ter o valor 2, sendo verificadas após as sistemas com valor 1. Se as sistemas de arquivos tiverem o mesmo valor, serão verificadas sequencialmente. Se os arquivos estiverem em discos diferentes, podem ser verificados em paralelo.

Desmontando Dispositivos

No Linux, antes de desconectar um dispositivo do computador, é necessário desmontá-lo. A desmontagem garante que todos os dados que ainda estão no cache e não foram gravados no dispositivo sejam escritos na sistema de arquivos antes da desconexão. Para desmontar um dispositivo, usa-se o comando umount, que pode receber dois argumentos: o nome do dispositivo ou o nome do diretório onde o dispositivo está montado. Por exemplo:

umount /dev/sda1

Ao usar o comando umount, pode ocorrer uma mensagem de que o dispositivo está ocupado e sendo usado no momento, impedindo a desmontagem. Isso geralmente ocorre porque um arquivo no dispositivo está aberto, e desconectar um dispositivo montado pode levar à perda de dados. Portanto, primeiro é necessário garantir que não há arquivos abertos no dispositivo.

Às vezes, a situação pode ser mais complicada, por exemplo, se o dispositivo estiver sendo usado por outros processos. Nesse caso, para finalizar os processos relacionados ao dispositivo, pode-se usar o comando fuser -km, passando o nome do dispositivo:

fuser -km /dev/sda1

Assim, é possível garantir que o dispositivo seja desmontado corretamente, evitando a perda de dados e mantendo a integridade do sistema.

Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com