Uma pen que chega de um cliente, um disco novo no servidor, a ISO de uma distribuição, a partilha do NAS da equipa — no Linux, nada disto fica acessível enquanto não for montado. Não há letras de unidade: há uma única árvore que começa em /, e cada disco, imagem ou partilha é ligado a uma pasta dessa árvore, o ponto de montagem. Quem faz essa ligação é o comando mount.
Neste guia percorremos o mount pela ordem do vídeo: ver o que está montado, os tipos de sistema de ficheiros, as opções -o de acesso, segurança, tempos e donos, as imagens com loop, os bind mounts, as partilhas NFS e CIFS, o /etc/fstab e o umount. E, porque montar é dar poder a um dispositivo, olhamos para tudo com olhos de cibersegurança.
Veja o guia em vídeo
Prefere ver antes de experimentar? No canal HJFR-IT no YouTube mostramos o mount opção a opção, com o resultado de cada comando no ecrã — narrado em português e com legendas.
O que faz o mount
O mount liga um sistema de ficheiros a um diretório. Na forma completa recebe o tipo (-t), as opções separadas por vírgulas e sem espaços (-o), o dispositivo e o ponto de montagem. Nenhuma peça é sempre obrigatória: sem tipo, deteta-o; sem opções, usa as por omissão; só com o ponto, completa o resto com o /etc/fstab. Como mexe no sistema, exige sudo.
mount [-t tipo] [-o opção1,opção2] dispositivo ponto_de_montagem
mount # sem argumentos: lista o que está montado
Ver o que está montado
Sem argumentos, o mount mostra uma linha por montagem: dispositivo, on e o ponto, type e o tipo e, entre parênteses, as opções em vigor. A maioria são sistemas virtuais do núcleo, por isso convém filtrar: -t ext4 mostra só esse tipo e -l junta a etiqueta de cada disco. O findmnt dá o mesmo em árvore ou, com um ponto como argumento, só essa montagem.
mount | column -t
mount -l -t ext4
findmnt /mnt/dados
Montagem básica e tipos (-t)
A montagem mais simples: crie a pasta (com -p, não dá erro se já existir) e monte. Se a pasta já tinha ficheiros, ficam tapados enquanto houver algo montado por cima e reaparecem ao desmontar.
sudo mkdir -p /mnt/dados
sudo mount /dev/sdb1 /mnt/dados
O -t nomeia o tipo: ext4, xfs e btrfs no Linux nativo; vfat, exfat e ntfs3 para pens, cartões e discos do Windows; iso9660 para imagens de CD e tmpfs para sistemas em memória. O padrão, auto, deteta o tipo pela assinatura. Um tipo errado falha com wrong fs type, bad option, bad superblock — o primeiro sítio a verificar quando algo não monta; o lsblk -f diz o tipo real.
As opções -o
Acesso: ro, rw e remount
ro monta só de leitura — qualquer escrita devolve Read-only file system —, a forma segura de inspecionar um disco suspeito. rw é o normal. remount aplica opções novas a algo já montado sem o desligar: mount -o remount,rw / repara uma raiz que arrancou protegida.
Segurança: nosuid, noexec e nodev
noexec— nenhum programa corre a partir daquela montagem (Permission denied).nosuid— ignora os bits set-user-ID e set-group-ID: uma pen maliciosa não traz um binário com o bit de root ativo.nodev— ignora ficheiros de dispositivo, para ninguém contornar as permissões com um nó falso.
sudo mount -o ro,nosuid,nodev,noexec /dev/sdc1 /mnt/externo
sudo mount -o remount,noexec /tmp
Tempos e sincronização
O Linux regista o último acesso de cada ficheiro (atime), escrevendo no disco só por ler. relatime, o padrão, atualiza-o de vez em quando; noatime desliga-o, clássico em servidores e SSD; há ainda nodiratime e strictatime. Nas escritas, async (padrão) usa a cache, sync grava de imediato — mais seguro se a pen sair à pressa — e dirsync só o faz em diretórios.
Donos e máscaras em FAT e NTFS
FAT, exFAT e NTFS não guardam donos Unix: sem opções, tudo seria de root. uid= e gid= definem dono e grupo; as máscaras dizem que bits retirar — umask para tudo, dmask só para diretórios, fmask só para ficheiros.
sudo mount -t vfat -o uid=1000,gid=1000,umask=022,fmask=133 /dev/sdd1 /mnt/pen
Conveniência: defaults, auto, user e nofail
defaultsequivale arw,suid,dev,exec,auto,nouser,async; escreve-sedefaults,noatimee muda-se só o necessário.auto/noautodecidem se omount -ado arranque monta a entrada.userdeixa um utilizador normal montar semsudo(e implicanoexec,nosuid,nodev);usersdeixa qualquer um desmontar;ownerenousercompletam o grupo.nofail— se o disco faltar, o arranque continua sem ele.
Imagens com loop e offset
loop associa um /dev/loopN a um ficheiro e monta-o como um disco: uma ISO ou uma imagem feita com dd. Com ro, a imagem não é alterada — obrigatório em análise forense. Numa imagem de disco inteiro, offset= indica o byte onde começa a partição (setor inicial × 512) e sizelimit= quantos bytes usar.
sudo mount -o loop,ro debian-13.iso /mnt/iso
sudo mount -o ro,loop,offset=1048576,noload evidencia.img /mnt/evidencia
Bind mounts, propagação e –move
--bind mostra uma pasta existente noutro caminho — mount --bind /var/www /srv/site —, essencial em chroots e contentores; --rbind arrasta também as montagens por baixo da origem. A propagação decide se novas montagens passam para o outro lado: --make-private isola, --make-shared partilha, --make-slave recebe sem enviar e --make-unbindable impede novos binds.
sudo mount --rbind /dev /srv/chroot/dev
sudo mount --make-rslave /srv/chroot/dev
sudo mount --move /mnt/dados /srv/dados
O --move muda uma montagem de sítio sem a desmontar, sem interromper quem a usa. Mas não funciona debaixo de um pai partilhado — e o systemd monta / como shared, daí a recusa moving a mount residing under a shared mount is unsupported.
Montagens de rede: NFS e CIFS
-t nfs monta uma exportação servidor:/caminho (negociada em NFSv4, aparece como nfs4); -t cifs monta uma partilha SMB //servidor/partilha. A autenticação faz-se com username= e password=, mas em produção as credenciais vivem num ficheiro protegido indicado com credentials=. vers=3.0 fixa a versão do SMB e, no fstab, _netdev só monta depois de haver rede.
sudo mount -t nfs 192.0.2.20:/srv/backup /mnt/backup
sudo mount -t cifs //192.0.2.20/equipa /mnt/equipa -o credentials=/root/.smb-equipa,vers=3.0
O /etc/fstab e as flags de controlo
As montagens à mão perdem-se ao reiniciar; o /etc/fstab torna-as permanentes. Cada linha tem seis campos: dispositivo (prefira UUID= ou LABEL= ao instável /dev/sdX; há também PARTUUID=, e o blkid mostra-os), ponto, tipo, opções, dump (quase sempre 0) e pass, a ordem da verificação no arranque (1 raiz, 2 outros, 0 nunca).
# <dispositivo> <ponto> <tipo> <opções> <dump> <pass>
UUID=c41e0b6a-5e2f-4d1a-9b3e-8f7a2c6d9e10 /srv/dados ext4 defaults,noatime,nofail 0 2
192.0.2.20:/srv/backup /mnt/backup nfs defaults,_netdev,nofail 0 0
mount -a monta tudo o que está no fstab e ainda não está montado, como no arranque; -O filtra-o por opção. -f simula e -v mostra cada decisão; -n não escreve no mtab, -r/-w abreviam ro/rw e -T usa outro fstab. Um erro no fstab pode impedir o arranque: teste com findmnt --verify e mount -a antes de reiniciar.
Desmontar com umount
Desmonta-se com umount — sem o primeiro n —, pelo ponto ou pelo dispositivo. O erro clássico é target is busy: algo usa a pasta. O fuser -m ou o lsof mostram quem; a primeira solução é sair dela.
-l(lazy) desliga já e liberta quando o último utilizador sair;-fforça, sobretudo em NFS cujo servidor desapareceu.-Rdesmonta recursivamente;-adesmonta tudo o que puder e-trestringe a um tipo.
mount em cibersegurança
O que vem de fora monta-se com o mínimo de poder. Pens e discos desconhecidos, partilhas e o /tmp devem levar nosuid,nodev,noexec: um binário set-user-ID de root, um nó de dispositivo forjado ou um script largado por um atacante deixam de servir para escalar privilégios. O noexec não trava um bash script.sh: reduz a superfície, não a elimina.
Evidência monta-se só de leitura — e numa cópia. Em resposta a incidentes, nunca monte o disco original: trabalhe numa imagem montada com ro,loop,noload. No ext4, o ro sozinho pode ainda reproduzir o journal; o noload impede-o. Um sha256sum antes e depois prova que nada mudou.
Credenciais de rede fora da linha de comandos. Uma password= no comando fica no histórico e à vista no ps. Use credentials= com um ficheiro do root em chmod 600 e vers=3.0 ou superior. E vigie as montagens: uma inesperada, um bind estranho ou um /tmp sem noexec merecem investigação.
Experimente no simulador interativo
O simulador recria uma máquina Debian com três discos por montar — dados, um disco USB de origem desconhecida e uma pen FAT —, uma ISO e uma imagem de evidência. À esquerda vê a árvore de montagens (opções de proteção a azul) e o /etc/fstab; à direita, o terminal. Experimente a tríade nosuid,nodev,noexec ou o target is busy e repare como a árvore muda. Demonstrar tudo percorre todas as opções do vídeo; Anterior e Seguinte avançam passo a passo e Repor estado volta ao início.
Erros comuns e boas práticas
- Usar
/dev/sdb1no fstab: os nomes podem mudar entre arranques. UseUUID=ouLABEL=. - Reiniciar sem testar o fstab: corra
findmnt --verifyemount -aantes, comnofailnos discos externos e_netdevnas partilhas. - Montar o que vem de fora com as opções por omissão:
exec,suidedevficam ativos. Usero,nosuid,nodev,noexec. - Confiar só no
ropara evidência: juntenoloade trabalhe numa imagem, nunca no original. - Matar processos ao primeiro target is busy: veja antes quem usa a pasta com
fuser -m— muitas vezes é o seu próprio terminal. - Retirar uma pen sem desmontar: os dados em cache podem não ter chegado ao disco.
Conclusão
O mount é a porta de entrada de qualquer dispositivo no sistema e decide com que poder ele entra. Escolher as opções, o fstab e o umount são rotina de administração; montar só de leitura, sem execução e sem credenciais à vista é cibersegurança aplicada. Depois de montar, veja o espaço disponível com o artigo sobre o df e o du e reveja as permissões com o guia do chmod.
Workshop — Linha de Comandos Linux
Quer passar da leitura à prática, com exercícios reais e acompanhamento? No workshop Linha de Comandos Linux da HJFR trabalha estes e outros comandos da série — da administração do dia a dia à resposta a incidentes.
Este artigo faz parte da série «Comandos Linux, um a um» do blog HJFR — fique atento aos próximos comandos.
