Configurar o acesso de clientes NFS no RHEL

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá as habilidades essenciais para configurar o acesso de clientes NFS em um sistema Red Hat Enterprise Linux (RHEL). Primeiro, você montará manualmente um compartilhamento de rede usando o comando mount para entender o processo fundamental. Em seguida, configurará uma montagem persistente em /etc/fstab para garantir que o compartilhamento NFS fique disponível automaticamente após a reinicialização do sistema. Isso proporcionará uma compreensão básica da integração estática de sistemas de arquivos de rede.

Com base nesses conceitos, você avançará para um método mais dinâmico e eficiente configurando o automontador. Isso envolve instalar e ativar o serviço autofs e criar mapas indiretos para montar diretórios sob demanda, além de mapas diretos para pontos de montagem estáticos. Ao final do laboratório, você verificará se as montagens automáticas diretas e indiretas funcionam corretamente para usuários diferentes, consolidando sua capacidade de gerenciar configurações robustas de clientes NFS.

Montar manualmente um compartilhamento NFS usando o comando mount

Nesta etapa, você aprenderá a acessar manualmente um diretório compartilhado na rede usando o protocolo Network File System (NFS). O NFS permite que um sistema cliente acesse arquivos pela rede de forma semelhante ao acesso ao armazenamento local. Para este exercício, simularemos um servidor NFS e um cliente na sua máquina local para praticar os comandos necessários.

Um servidor NFS já foi pré-configurado no sistema para exportar (compartilhar) o diretório /srv/nfs/shared_data. Sua tarefa é montar esse diretório compartilhado em uma pasta local, verificar o acesso e depois desmontá-lo.

Etapa 1.1: Criar um ponto de montagem local

Para acessar o diretório NFS compartilhado, você precisa de um diretório local que funcione como “ponto de montagem”. Trata-se de uma pasta vazia no sistema cliente onde o conteúdo do compartilhamento remoto aparecerá depois da montagem. Todas as operações serão realizadas dentro do diretório ~/project.

Crie um diretório chamado nfs_mount dentro da pasta do projeto:

mkdir ~/project/nfs_mount

Você pode verificar se o diretório foi criado listando o conteúdo da pasta do projeto:

ls -F ~/project
nfs_mount/

Etapa 1.2: Montar o compartilhamento NFS

Agora você pode usar o comando mount para associar o compartilhamento NFS remoto ao ponto de montagem recém-criado. O comando exige privilégios de sudo, pois montar sistemas de arquivos é uma operação no nível do sistema.

A sintaxe básica é mount -t nfs -o vers=3,nolock <server>:<remote_directory> <local_mount_point>.

  • -t nfs -o vers=3,nolock: especifica que o tipo de sistema de arquivos é NFS, força o uso do NFSv3 e mantém o bloqueio de arquivos local, pois o ambiente de laboratório em contêiner não executa o serviço separado de bloqueio do NFS.
  • localhost:/srv/nfs/shared_data: é a origem, ou seja, o servidor e o caminho que ele exporta.
  • ~/project/nfs_mount: é o destino, ou seja, o ponto de montagem local.

Execute o comando a seguir para montar o compartilhamento:

sudo mount -t nfs -o vers=3,nolock localhost:/srv/nfs/shared_data ~/project/nfs_mount

Se a operação for bem-sucedida, o comando não exibirá nenhuma saída.

Etapa 1.3: Verificar a montagem e interagir com o compartilhamento

Depois de executar o comando mount, verifique se o compartilhamento foi montado corretamente. Você pode fazer isso de algumas maneiras.

Primeiro, use o comando mount com um pipe para grep a fim de filtrar as montagens NFS:

mount | grep nfs
localhost:/srv/nfs/shared_data on /home/labex/project/nfs_mount type nfs (rw,relatime,vers=3,rsize=...,wsize=...,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,local_lock=none,addr=...)

Em seguida, verifique o conteúdo do ponto de montagem. Agora ele deve exibir os arquivos do diretório remoto /srv/nfs/shared_data.

ls -l ~/project/nfs_mount
total 4
-rw-r--r--. 1 root root 32 Nov 10 14:30 welcome.txt

Agora você pode interagir com esse diretório como se ele fosse uma pasta local. Observe que, neste ambiente de laboratório, os arquivos pertencem a root devido à configuração do servidor NFS com no_root_squash. Em ambientes de produção, o proprietário pode aparecer como nobody, dependendo das configurações do servidor NFS. Crie um novo arquivo dentro do compartilhamento montado. Como o compartilhamento NFS pode pertencer a root, você precisa usar sudo com o comando tee para gravar arquivos:

echo "My test file" | sudo tee ~/project/nfs_mount/my_file.txt > /dev/null

Verifique se o novo arquivo existe junto com o arquivo original:

ls -l ~/project/nfs_mount
total 8
-rw-r--r--. 1 root  root  13 Nov 10 14:35 my_file.txt
-rw-r--r--. 1 root  root  32 Nov 10 14:30 welcome.txt

Etapa 1.4: Desmontar o compartilhamento NFS

Quando terminar de usar um compartilhamento de rede, é importante desmontá-lo corretamente usando o comando umount. Isso garante que todos os dados sejam sincronizados e que a conexão seja encerrada adequadamente. Você só precisa especificar o ponto de montagem.

sudo umount ~/project/nfs_mount

Para confirmar que o compartilhamento foi desmontado, liste o conteúdo do diretório ~/project/nfs_mount. Ele deve estar vazio novamente.

ls -l ~/project/nfs_mount
total 0

Configurar uma montagem NFS persistente em /etc/fstab

Nesta etapa, você tornará a montagem NFS persistente depois de aprender a montá-la manualmente. As montagens manuais são temporárias e não sobrevivem à reinicialização do sistema. Para tornar uma montagem permanente, você precisa adicionar uma entrada ao arquivo /etc/fstab (abreviação de “file systems table”, ou tabela de sistemas de arquivos). Esse arquivo contém uma lista de sistemas de arquivos e dispositivos que são montados automaticamente durante a inicialização do sistema.

Nesta etapa, você configurará o mesmo compartilhamento NFS para ser montado persistentemente adicionando uma entrada ao /etc/fstab.

Etapa 2.1: Preparar o ambiente

Primeiro, verifique se o ponto de montagem da etapa anterior, ~/project/nfs_mount, existe e está vazio. Se você continuar diretamente da etapa anterior, ele já deverá existir.

Se o diretório não existir, crie-o agora:

mkdir -p ~/project/nfs_mount

Verifique também se nada está montado atualmente nesse diretório. Você pode executar o comando umount; ele exibirá um erro se o diretório não estiver montado, e isso é perfeitamente normal.

sudo umount ~/project/nfs_mount

Etapa 2.2: Editar o arquivo /etc/fstab

Agora, você adicionará uma nova linha ao arquivo /etc/fstab para definir a montagem NFS persistente. Use sudo para editar esse arquivo de configuração do sistema. Utilizaremos o editor nano.

Abra o arquivo com o comando a seguir:

sudo nano /etc/fstab

Vá até o final do arquivo e adicione a linha a seguir. Tenha muito cuidado com a sintaxe, pois erros nesse arquivo podem causar problemas na inicialização do sistema.

localhost:/srv/nfs/shared_data /home/labex/project/nfs_mount nfs defaults,_netdev,vers=3,nolock 0 0

Veja o significado de cada parte da linha:

  • localhost:/srv/nfs/shared_data: é o dispositivo a ser montado. Ele especifica o servidor NFS (localhost) e o diretório exportado (/srv/nfs/shared_data).
  • /home/labex/project/nfs_mount: é o ponto de montagem local onde o compartilhamento ficará acessível.
  • nfs: especifica o tipo de sistema de arquivos.
  • defaults,_netdev,vers=3,nolock: são as opções de montagem. defaults inclui um conjunto padrão de opções, como rw, para leitura e escrita. _netdev é essencial para sistemas de arquivos de rede: ele informa ao sistema que deve aguardar a ativação da rede antes de tentar montar esse compartilhamento. vers=3,nolock mantém o laboratório no protocolo NFS funcional para este ambiente em contêiner, sem exigir um serviço de bloqueio separado.
  • 0: é o campo dump, usado pelo utilitário de backup dump. O valor 0 o desativa.
  • 0: é o campo pass, usado pelo utilitário fsck para determinar a ordem das verificações do sistema de arquivos durante a inicialização. O valor 0 significa que o sistema de arquivos não será verificado.

Depois de adicionar a linha, salve o arquivo e saia do nano pressionando Ctrl+X, depois Y e, por fim, Enter.

Etapa 2.3: Testar a entrada do /etc/fstab

Não é necessário reiniciar o sistema para testar a nova entrada do /etc/fstab. O comando mount consegue ler o /etc/fstab. Quando você fornece apenas o ponto de montagem, o mount procura a entrada correspondente no /etc/fstab e usa as informações encontradas nela.

Monte o compartilhamento informando apenas o ponto de montagem:

sudo mount ~/project/nfs_mount

Se o comando for concluído sem erros, a entrada do /etc/fstab está correta.

Etapa 2.4: Verificar a montagem

Verifique se o compartilhamento está montado conferindo a saída do comando mount e listando o conteúdo do diretório.

mount | grep nfs_mount
localhost:/srv/nfs/shared_data on /home/labex/project/nfs_mount type nfs (rw,relatime,vers=3,rsize=...,wsize=...,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,local_lock=none,addr=...,_netdev)

Agora, confira o conteúdo. Você deverá ver os arquivos do compartilhamento.

ls -l ~/project/nfs_mount
total 4
-rw-r--r--. 1 root root 32 Nov 10 14:30 welcome.txt

Essa montagem agora é persistente e seria restabelecida automaticamente após uma reinicialização.

Etapa 2.5: Limpar o ambiente

Para evitar conflitos com os exercícios seguintes, desfaça agora as alterações. Primeiro, desmonte o compartilhamento e depois remova do /etc/fstab a linha que você adicionou.

Desmonte o diretório:

sudo umount ~/project/nfs_mount

Abra o /etc/fstab novamente para remover a entrada:

sudo nano /etc/fstab

Use as teclas de seta para navegar até a linha adicionada (localhost:/srv/nfs/shared_data ... vers=3,nolock ...) e pressione Ctrl+K para excluir a linha inteira. Depois, salve e saia pressionando Ctrl+X, Y e Enter.

Isso deixa o sistema limpo para a próxima parte do laboratório.

Configurar o automontador instalando e ativando o autofs

Nesta etapa, você passará das montagens manuais e persistentes para a montagem automática. Embora o /etc/fstab seja adequado para montagens permanentes, ele tem uma desvantagem: tenta montar tudo durante a inicialização. Se um compartilhamento de rede estiver indisponível, isso pode tornar a inicialização mais lenta ou até interrompê-la. O automontador, fornecido pelo serviço autofs, resolve esse problema montando sistemas de arquivos de rede sob demanda, somente quando são acessados pela primeira vez.

O serviço autofs usa um conjunto de arquivos de configuração chamados “maps” (mapas) para determinar quais compartilhamentos remotos devem ser montados e onde. Nesta etapa, você preparará o sistema para usar o automontador instalando o pacote necessário e iniciando o serviço.

Etapa 3.1: Instalar o pacote autofs

A funcionalidade autofs não está incluída na instalação padrão do RHEL. Você precisa instalá-la usando o gerenciador de pacotes dnf. Isso exige privilégios de sudo.

Execute o comando a seguir para instalar o pacote autofs. A opção -y responde automaticamente “yes” ao pedido de confirmação, o que é conveniente neste laboratório.

sudo dnf install -y autofs

O comando baixará e instalará o pacote autofs e todas as dependências necessárias. Você verá uma saída semelhante à seguinte:

Last metadata expiration check: ...
Dependencies resolved.
================================================================================
 Package       Architecture    Version                Repository           Size
================================================================================
Installing:
 autofs        x86_64          1:5.1.7-50.el9         ...                  ...
...

Transaction Summary
================================================================================
Install  1 Package

Total download size: ...
Installed size: ...
...
Complete!

Etapa 3.2: Iniciar o serviço autofs

Em um sistema RHEL padrão, você usaria systemctl para iniciar e ativar serviços. No entanto, este laboratório é executado em um ambiente de contêiner no qual systemctl não está disponível. Em vez disso, iniciaremos diretamente o daemon autofs usando o comando automount.

Esse comando inicia o daemon do automontador, que será executado em segundo plano e monitorará tentativas de acesso a diretórios configurados nos mapas.

Execute o comando a seguir para iniciar o serviço:

sudo automount

Se for bem-sucedido, o comando não exibirá nenhuma saída. Ele apenas inicia o processo do daemon.

Etapa 3.3: Verificar se o serviço está em execução

Como você não pode usar systemctl status autofs para verificar o serviço, confirme se o processo automount está em execução usando o comando ps. O comando ps aux lista todos os processos em execução; você pode enviar a saída por meio de | para grep e filtrar o processo automount.

ps aux | grep automount

Você deverá ver pelo menos uma linha referente ao próprio processo automount. A segunda linha, que mostra grep automount, é apenas o comando grep executado e pode ser ignorada.

root      ...  0.0  0.0 ...      ?        Ssl  15:30   0:00 /usr/sbin/automount
labex     ...  0.0  0.0 ...      pts/0    S+   15:31   0:00 grep --color=auto automount

A presença do processo /usr/sbin/automount confirma que o serviço está em execução e pronto para tratar montagens sob demanda. Nas próximas etapas, você configurará os mapas que informam ao autofs o que fazer.

Criar um mapa de automontagem indireto para diretórios dinâmicos

Nesta etapa, você configurará sua primeira regra de automontagem usando um mapa indireto. Um mapa indireto é o tipo mais comum de configuração de automontagem. Ele associa um único diretório base, como /home ou /net, a um arquivo de mapa. Quando um usuário tenta acessar um subdiretório dentro desse diretório base, o autofs procura o nome do subdiretório no arquivo de mapa e monta o compartilhamento remoto correspondente sob demanda.

Isso é muito útil para montar diretórios pessoais de usuários ou uma coleção de pastas de projetos compartilhadas sem precisar montar todas de uma vez. Configuraremos um mapa indireto para montar dinamicamente diretórios de projetos localizados sob um novo diretório base chamado /project_shares.

Etapa 4.1: Criar as exportações do servidor NFS

Primeiro, prepare os diretórios no servidor NFS simulado que serão compartilhados. Criaremos dois diretórios de projeto, design e testing, dentro de /srv/nfs/.

Crie os diretórios e coloque um arquivo de exemplo em cada um:

sudo mkdir -p /srv/nfs/{design,testing}
sudo sh -c 'echo "Design documents" > /srv/nfs/design/README'
sudo sh -c 'echo "Testing scripts" > /srv/nfs/testing/README'

Em seguida, informe ao servidor NFS que esses diretórios devem ser exportados. Para isso, adicione entradas ao arquivo /etc/exports.

Abra o arquivo com o nano:

sudo nano /etc/exports

Adicione as linhas a seguir ao arquivo. Elas informam ao servidor NFS que os diretórios design e testing devem ser compartilhados com qualquer cliente (*) com permissões de leitura e escrita (rw).

/srv/nfs/design *(rw,sync,no_root_squash)
/srv/nfs/testing *(rw,sync,no_root_squash)

Salve o arquivo e saia (Ctrl+X, Y, Enter).

Por fim, aplique as alterações ao servidor NFS reexportando todos os diretórios:

sudo exportfs -ra

Etapa 4.2: Criar a entrada do mapa principal

A configuração do autofs começa com o arquivo de mapa principal /etc/auto.master. A prática recomendada é não editar esse arquivo diretamente, mas adicionar novos arquivos de configuração ao diretório /etc/auto.master.d/.

Crie um novo arquivo de mapa principal para os compartilhamentos de projeto:

sudo nano /etc/auto.master.d/shares.autofs

Adicione ao arquivo esta única linha:

/project_shares /etc/auto.shares

Essa linha informa ao autofs: “Para qualquer acesso dentro do diretório /project_shares, consulte o arquivo de mapa localizado em /etc/auto.shares para obter as instruções.”

Salve o arquivo e saia do editor.

Etapa 4.3: Criar o arquivo de mapa indireto

Agora, crie o arquivo de mapa indireto /etc/auto.shares, referenciado no mapa principal.

sudo nano /etc/auto.shares

Adicione as linhas a seguir ao arquivo:

design  -fstype=nfs,rw,sync,vers=3,nolock   localhost:/srv/nfs/design
testing -fstype=nfs,rw,sync,vers=3,nolock   localhost:/srv/nfs/testing

Veja o significado de uma das linhas:

  • design: é a “chave”. Ela corresponde ao nome do subdiretório dentro de /project_shares. Quando um usuário acessa /project_shares/design, essa linha é acionada.
  • -fstype=nfs,rw,sync,vers=3,nolock: são as opções de montagem, que especificam o tipo de sistema de arquivos, o acesso de leitura e escrita, as gravações síncronas, a versão do NFS e o bloqueio local usado neste ambiente de laboratório.
  • localhost:/srv/nfs/design: é a localização do compartilhamento NFS remoto a ser montado.

Salve o arquivo e saia do editor.

Etapa 4.4: Recarregar o autofs e testar a montagem

Para que o serviço autofs reconheça os novos arquivos de mapa, você precisa recarregar a configuração. Como systemctl não está disponível, envie o sinal HUP (hangup) ao processo automount, fazendo com que ele releia a configuração.

sudo killall -HUP automount

Agora, teste a configuração. Primeiro, tente listar o conteúdo do diretório base /project_shares. Ele aparecerá vazio, pois nada foi montado ainda.

ls -l /project_shares
total 0

Em seguida, tente acessar um dos subdiretórios. Esse acesso aciona a montagem realizada pelo autofs.

ls -l /project_shares/design
total 4
-rw-r--r--. 1 root root 17 Nov 10 16:10 README

Sucesso! O compartilhamento design foi montado automaticamente. Agora, se você listar novamente o diretório base, verá o diretório design, pois ele é um ponto de montagem ativo.

ls -l /project_shares
total 0
dr-xr-xr-x. 2 root root 0 Nov 10 16:12 design

Faça o mesmo com o diretório testing para confirmar que ele também funciona:

ls -l /project_shares/testing
total 4
-rw-r--r--. 1 root root 16 Nov 10 16:10 README

Você configurou e testou com sucesso um mapa de automontagem indireto.

Criar um mapa de automontagem direto para pontos de montagem estáticos

Nesta etapa, você aprenderá sobre o segundo tipo de configuração de automontagem: um mapa direto. Diferentemente de um mapa indireto, que agrupa várias montagens sob um diretório base comum, um mapa direto define pontos de montagem individuais e específicos em qualquer local do sistema de arquivos. Cada entrada de um mapa direto corresponde a um único caminho absoluto.

Mapas diretos são úteis para montar uma pequena quantidade de compartilhamentos em locais fixos e conhecidos, como um diretório de ferramentas compartilhadas em /usr/local/tools. Configuraremos um mapa direto para montar o diretório compartilhado common_data em /mnt/common.

Etapa 5.1: Preparar a exportação do servidor NFS

Como antes, primeiro configure o diretório no servidor NFS simulado que será compartilhado. Criaremos um diretório chamado common_data.

Crie o diretório e um arquivo de exemplo dentro dele:

sudo mkdir -p /srv/nfs/common_data
sudo sh -c 'echo "Common shared data" > /srv/nfs/common_data/info.txt'

Agora, adicione uma entrada ao /etc/exports para disponibilizar esse diretório via NFS.

sudo nano /etc/exports

Adicione a nova linha a seguir ao arquivo. Ela compartilhará o diretório /srv/nfs/common_data.

/srv/nfs/common_data *(rw,sync,no_root_squash)

Salve o arquivo e saia (Ctrl+X, Y, Enter).

Aplique as alterações ao servidor NFS reexportando todos os diretórios:

sudo exportfs -ra

Etapa 5.2: Criar a entrada do mapa principal para o mapa direto

Para usar um mapa direto, primeiro você precisa referenciá-lo na configuração do mapa principal. O ponto de montagem especial /- indica que o arquivo de mapa associado é um mapa direto.

Crie um novo arquivo de mapa principal para a montagem direta:

sudo nano /etc/auto.master.d/direct.autofs

Adicione ao arquivo esta única linha:

/- /etc/auto.direct

Essa linha informa ao autofs: “Consulte o arquivo /etc/auto.direct para obter a lista de montagens diretas. Os pontos de montagem são caminhos absolutos definidos nesse arquivo.”

Salve o arquivo e saia do editor.

Etapa 5.3: Criar o arquivo de mapa direto

Agora, crie o arquivo de mapa direto /etc/auto.direct que você acabou de referenciar.

sudo nano /etc/auto.direct

Adicione ao arquivo a linha a seguir. O formato é um pouco diferente do mapa indireto.

/mnt/common -fstype=nfs,rw,sync,vers=3,nolock   localhost:/srv/nfs/common_data

Veja o significado dessa linha:

  • /mnt/common: é a “chave”, mas, em um mapa direto, a chave é o caminho absoluto completo do ponto de montagem.
  • -fstype=nfs,rw,sync,vers=3,nolock: são as opções de montagem, iguais às anteriores, incluindo a versão do NFS e o bloqueio local usados neste ambiente de laboratório.
  • localhost:/srv/nfs/common_data: é a localização do compartilhamento NFS remoto.

Salve o arquivo e saia do editor.

Etapa 5.4: Recarregar o autofs e testar a montagem direta

Assim como no mapa indireto, você precisa recarregar a configuração do autofs para que ele reconheça o novo mapa direto.

sudo killall -HUP automount

Agora, teste a montagem direta. Diferentemente de um mapa indireto, o ponto de montagem /mnt/common não existe no sistema de arquivos até que você tente acessá-lo.

Tente acessar o diretório /mnt/common. Isso fará com que o autofs crie o ponto de montagem e monte o compartilhamento.

ls -l /mnt/common
total 4
-rw-r--r--. 1 root root 19 Nov 10 17:00 info.txt

Sucesso! A montagem direta foi criada sob demanda. Neste ambiente de laboratório, uma saída bem-sucedida de ls -l /mnt/common é a confirmação mais confiável, pois a exibição da montagem pode variar quando o servidor e o cliente NFS estão na mesma máquina.

Agora você configurou com sucesso um mapa indireto para subdiretórios dinâmicos e um mapa direto para um ponto de montagem absoluto e estático.

Verificar montagens automáticas diretas e indiretas como usuários diferentes

Nesta etapa, você verificará como o automontador funciona em um ambiente multiusuário. A automontagem disponibiliza um compartilhamento, mas são as permissões do sistema de arquivos subjacentes no servidor NFS que determinam quem pode realmente ler ou gravar os arquivos. Você criará dois usuários de teste, atribuirá a eles a propriedade dos respectivos compartilhamentos NFS e testará o acesso aos mapas indireto e direto.

Este exercício demonstra um cenário real em que equipes diferentes, como design e testes, são proprietárias de seus respectivos diretórios compartilhados. Os outros usuários têm acesso de leitura, mas o acesso de escrita é restrito ao proprietário.

Etapa 6.1: Criar usuários de teste e definir permissões

Primeiro, crie dois novos usuários: designer1 e tester1. Você também definirá uma senha simples para cada um, para poder alternar entre as contas.

Use o comando useradd para criar os usuários. A opção -m cria um diretório pessoal para cada usuário.

sudo useradd -m designer1
sudo useradd -m tester1

Em seguida, defina uma senha para cada usuário. Para simplificar este laboratório, usaremos a senha labex.io para ambos (ela atende aos requisitos de complexidade, incluindo comprimento, mistura de maiúsculas e minúsculas, números e caracteres especiais).

sudo passwd designer1
## Enter new UNIX password: labex.io
## Retype new UNIX password: labex.io
## passwd: password updated successfully

sudo passwd tester1
## Enter new UNIX password: labex.io
## Retype new UNIX password: labex.io
## passwd: password updated successfully

Agora, altere a propriedade dos diretórios compartilhados no lado do “servidor” (/srv/nfs/*) para conceder acesso aos novos usuários.

sudo chown -R designer1:designer1 /srv/nfs/design
sudo chown -R tester1:tester1 /srv/nfs/testing

O diretório /srv/nfs/common_data continuará pertencendo a root, tornando-o somente leitura para usuários comuns.

Etapa 6.2: Testar o acesso como o usuário designer1

Alterne para a conta do usuário designer1 usando o comando su (substitute user, ou usuário substituto). O - garante que você obtenha o ambiente completo de login do usuário.

su - designer1
## Password: labex.io

O prompt do shell mudará para [designer1@host ~]$.

Primeiro, teste o acesso ao compartilhamento design por meio do mapa indireto. O acesso deve ser bem-sucedido.

ls -l /project_shares/design
total 4
-rw-r--r--. 1 designer1 designer1 17 Jun 16 16:12 README

Agora, tente gravar um arquivo nesse diretório. A operação também deve ser bem-sucedida.

echo "My design file" > /project_shares/design/design_file.txt
ls -l /project_shares/design
total 8
-rw-r--r--. 1 designer1 designer1 15 Jun 16 16:18 design_file.txt
-rw-r--r--. 1 designer1 designer1 17 Jun 16 16:12 README

Em seguida, tente acessar o compartilhamento testing. Você poderá ver o conteúdo, mas não poderá gravar nele, pois ele pertence a tester1.

ls -l /project_shares/testing
total 4
-rw-r--r--. 1 tester1 tester1 16 Jun 16 16:12 README

Por fim, teste o compartilhamento configurado pelo mapa direto. designer1 deverá conseguir ler o conteúdo, mas não gravar nele.

cat /mnt/common/info.txt
Common shared data
echo "test" > /mnt/common/new_file.txt
-bash: /mnt/common/new_file.txt: Permission denied

Saia da sessão de designer1 para voltar ao usuário labex.

exit

Etapa 6.3: Testar o acesso como o usuário tester1

Agora, faça testes semelhantes como o usuário tester1.

su - tester1
## Password: labex.io

Acesse o compartilhamento design. Você poderá ver o conteúdo, incluindo o arquivo criado por designer1, mas não poderá gravar nele.

ls -l /project_shares/design
total 8
-rw-r--r--. 1 designer1 designer1 15 Jun 16 16:18 design_file.txt
-rw-r--r--. 1 designer1 designer1 17 Jun 16 16:12 README

Agora, acesse e grave no compartilhamento testing. A operação deve ser bem-sucedida, pois tester1 é o proprietário desse diretório.

ls -l /project_shares/testing
total 4
-rw-r--r--. 1 tester1 tester1 16 Jun 16 16:12 README
echo "My test script" > /project_shares/testing/test_script.sh
ls -l /project_shares/testing
total 8
-rw-r--r--. 1 tester1 tester1 16 Jun 16 16:12 README
-rw-r--r--. 1 tester1 tester1 15 Jun 16 16:19 test_script.sh

Saia da sessão de tester1.

exit

Etapa 6.4: Limpar o ambiente

Para concluir o laboratório e restaurar o estado original do sistema, remova os usuários de teste criados. O comando userdel -r remove o usuário e seu diretório pessoal.

sudo userdel -r designer1
sudo userdel -r tester1

Isso conclui o laboratório sobre o gerenciamento de NFS com autofs.

Resumo

Neste laboratório, você aprendeu a configurar o acesso de clientes NFS em um sistema RHEL. Primeiro, realizou uma montagem manual, criando um ponto de montagem local e usando o comando mount para conectar-se ao compartilhamento NFS. Depois de estabelecer a conexão manual com o comando mount, configurou uma montagem persistente criando uma entrada no arquivo /etc/fstab, garantindo que o compartilhamento fosse montado automaticamente durante a inicialização.

Além disso, o laboratório abordou a montagem sob demanda com o serviço autofs. Isso envolveu instalar e ativar o serviço e, em seguida, definir como os compartilhamentos seriam montados usando dois métodos diferentes: um mapa indireto para montar diretórios dinamicamente e um mapa direto para montar compartilhamentos em locais estáticos predefinidos. O processo foi concluído com a verificação de que as montagens automáticas diretas e indiretas funcionavam corretamente para usuários diferentes.