Montar, Testar e Desmontar o Sistema de Arquivos
Nesta etapa, você aprenderá como tornar seu sistema de arquivos recém-formatado acessível ao sistema operacional. Este processo é chamado de "montagem" (mounting). A montagem anexa o sistema de arquivos de um dispositivo (como /dev/sdb1) a um diretório específico na árvore de sistemas de arquivos, conhecido como "ponto de montagem". Uma vez montado, você pode interagir com a partição como qualquer outro diretório.
Primeiro, você precisa criar um ponto de montagem. Este é simplesmente um diretório vazio. É prática comum criar pontos de montagem temporários sob o diretório /mnt. Vamos criar um diretório chamado /mnt/data. Como o /mnt é um diretório do sistema, você precisará de sudo.
sudo mkdir /mnt/data
Agora, use o comando mount para anexar a partição /dev/sdb1 ao diretório /mnt/data.
sudo mount /dev/sdb1 /mnt/data
Para verificar se o sistema de arquivos está montado, vamos primeiro checar se o comando mount foi bem-sucedido verificando o status da montagem. Usaremos vários comandos para verificar a montagem:
## Verifica se o ponto de montagem tem o sistema de arquivos montado
mountpoint /mnt/data
Se a montagem foi bem-sucedida, você deverá ver:
/mnt/data is a mountpoint
Agora vamos verificar o uso do disco com df. Devido à configuração do dispositivo de loop, a partição pode aparecer com seu nome de dispositivo real em vez do nome do link simbólico:
df -h /mnt/data
Você deve ver uma entrada mostrando o sistema de arquivos montado:
Filesystem Size Used Avail Use% Mounted on
/dev/loop13p1 488M 2.6M 459M 1% /mnt/data
Você também pode verificar com o comando mount:
mount | grep /mnt/data
Isso deve mostrar:
/dev/loop13p1 on /mnt/data type ext4 (rw,relatime)
Agora, vamos testar se podemos gravar dados em nosso novo sistema de arquivos. Primeiro, vamos verificar o proprietário atual e as permissões do ponto de montagem:
ls -ld /mnt/data
Você deve ver algo como:
drwxr-xr-x 3 root root 4096 Dec 12 10:00 /mnt/data
Agora tente criar um arquivo no ponto de montagem:
touch /mnt/data/testfile
Este comando provavelmente falhará com um erro de "Permission denied" (Permissão negada). Isso ocorre porque o diretório raiz do sistema de arquivos montado pertence ao usuário root. Para corrigir isso, altere o proprietário do ponto de montagem para o seu usuário atual, labex:
sudo chown labex:labex /mnt/data
Agora, tente criar o arquivo novamente:
touch /mnt/data/testfile
Desta vez, o comando deve ser bem-sucedido. Verifique se o arquivo foi criado:
ls -l /mnt/data
Você deve ver:
total 16
drwx------ 2 root root 16384 Dec 12 10:00 lost+found
-rw-r--r-- 1 labex labex 0 Dec 12 10:05 testfile
O diretório lost+found é um recurso padrão dos sistemas de arquivos ext4, usado para recuperar arquivos em caso de corrupção do sistema de arquivos.
Quando terminar de usar o sistema de arquivos, você deve desmontá-lo usando o comando umount. É importante notar que você não pode desmontar um sistema de arquivos se ele estiver em uso no momento, por exemplo, se o seu diretório de trabalho atual estiver dentro do ponto de montagem. Vamos ver isso em ação.
Primeiro, mude seu diretório para /mnt/data:
cd /mnt/data
Agora, tente desmontá-lo. Você pode se referir a um sistema de arquivos pelo nome do dispositivo ou pelo seu ponto de montagem.
sudo umount /mnt/data
Você receberá uma mensagem de erro indicando que o alvo está ocupado.
umount: /mnt/data: target is busy.
Para desmontá-lo com sucesso, você deve primeiro sair do diretório. Vamos voltar para o seu diretório home.
cd ~
Agora, execute o comando umount novamente.
sudo umount /mnt/data
O comando deve ser executado sem nenhuma saída. Você pode verificar que ele não está mais montado executando o comando mountpoint:
mountpoint /mnt/data
Você deve ver:
/mnt/data is not a mountpoint
Finalmente, você pode fazer a limpeza removendo o diretório do ponto de montagem:
sudo rmdir /mnt/data
Nota de Solução de Problemas: Se você encontrar problemas com o comando mount não funcionando, pode tentar montar usando o nome real do dispositivo de loop em vez do link simbólico:
## Encontra o nome real do dispositivo
ACTUAL_DEVICE=$(readlink -f /dev/sdb1)
echo "Actual device: $ACTUAL_DEVICE"
## Monta usando o nome real do dispositivo
sudo mkdir /mnt/data
sudo mount $ACTUAL_DEVICE /mnt/data