- NFS (Network File System) foi desenvolvido inicialmente pela Sun Microsystems, Inc. O NFS (Network File System) é uma maneira de compartilhar arquivos entre máquinas
de uma rede, como se estes arquivos estivessem localizados no disco rígido
local do cliente. O Servidor de arquivos (NFS) utiliza o TCP-IP, para trafegar os arquivos.
- O NFS funciona da seguinte forma: O servidor exporta um determinado diretório ou arquivo para
que seus clientes acessem remotamente como de fosse um arquivo local.O protocolo Network File System é especificado no RFC.
-
Para o perfeito funcionamento, são necessários alguns daemons configurados e rodando.
- nfsd - daemon NFS, que atende requisições dos clientes NFS.
- mountd - daemon de montagem NFS, que executa as solicitações que o nfsd lhe passa.
- portmap - daemon portmapper, permite que clientes NFS descubram qual porta o servidor NFS está utilizando.
- Um servidor de arquivos NFS determina
os sistemas de arquivos locais que serão compartilhados com outras máquinas
-
Um cliente NFS monta os sistemas de arquivos compartilhados através da
rede e os trata como se fossem locais
- Computador com o sistema de arquivos (servidor)
precisa disponibilizar (exportar) o sistema através do arquivo /etc/exports
- Computador que deseja
usar o sistema de arquivos (cliente) precisa montá-lo através do comando mount ou com uma entrada do arquivo
/etc/fstab
- O NFS é útil para compartilhar diretórios de arquivos entre múltiplos usuários da mesma rede. Por exemplo: um grupo de usuários trabalhando no mesmo projeto podem ter acesso aos arquivos deste projeto usando um diretório compartilhado do sistema de arquivos NFS, montado no diretório /project.Não há senhas ou comandos especiais para lembrar. Os usuários trabalham como se o diretório estivesse em suas máquinas locais.
- Os programas (daemons) do NFS devem ser inicializados com o boot
- O comando pmap_dump mostra o estado dos daemons RPC (Remote Procedure Calls) do sistema. NFS usa RPC.
- O script nfs em /etc/rc.d/nfs pode ser usado para interromper, reiniciar, parar ou consultar os programas NFS
- /nfs [start | stop | status | restart | reload]
- Usado pelos daemons mountd e nfsd para determinar que arquivos serão montados e as restrições que se aplicarão
- Arquivos exportados listados um por linha
- Formato do arquivo
- Nome do ponto de montagem
- Lista de computadores (domínio)
- Aopções entre parênteses e separadas por vírgulas podem seguir cada nome de computador
- Endereços de redes IP podem ser fornecidos no seguinte formato
- Por exemplo: 192.168.1.34/255.255.255.0
- Exige que pedidos se originem em porta menor que 1024
- Faz tudo abaixo do diretório indicado inacessível
- root_squash
- Mapeia todos os pedidos de uid/gid 0 para o usuário/grupo anônimo.
- anonuid e anongid
- Estas opções definem explicitamente o uid e gid da conta anônima. Útil para clientes PC/NFS que aparecerão como de um único usuário
- Para forçar a execução do arquivo /etc/exports com o sistema já no ar, usamos o comando exportfs
exportfs [opções]
- a exporta todos arquivos
- v seja explicado
- r reexporta todos arquivos
- u deixa de exportar
- o opções iguais aos do arquivo exports
- No arquivo /etc/fstab inserir linha no seguinte formato
- <host>:<dir> <ponto de montagem> <nfs> <opções>
- /serv.ufrj.br:/mnt/cd /home/guto/cd nfs ro
- Montou a partir da máquina serv.ufrj.br o diretório /mnt/cd em /home/guto/cd com opção de leitura.
- Os arquivos estão localizados no servidor
- Uma cópia do arquivo está disponível a vários usuários simultaneamente
- Softwares comuns
- Pacotes de software podem ser compartilhados
- Diminui o espaço gasto em disco e facilita a gerência.
- Os arquivos parecem ser locais
- A distribuição de arquivos é transparente para o usuário e as aplicações
- Criando diretórios exportados
- O primeiro passo é criar o diretório que será exportado para os clientes. Nesse exemplo são criados 2 diretórios: /home/arquivos e /home/mp3.
- $ mkdir /home/arquivos mp3
- Edite o arquivo /etc/exports para incluir os arquivos que serão exportados.
- Edite-o da seguinte forma:
- /home/arquivos cliente (**rw)
- /home/mp3 cliente (**rw)
- O cliente pode ser o hostname ou IP da máquina do usuario, ou até mesmo uma faixa de IP, no caso de uma grande rede.
- **O parâmetro rw define leitura e escrita para o diretório compartilhado.
- Assim como no servidor, onde foram criados diretórios a serem exportados, no cliente deverão ser criados diretórios que servirão de ponto de montagem para os exportados:
- $ mkdir /home/arquivos mp3
- Para montar os diretórios exportados faça o seguinte:
- # mount -t nfs servidor:/home/arquivo /home/arquivo
- mount -t nfs = especifica a montagem de um arquivo do tipo NFS
- servidor = hostname ou ip do servidor
- /home/arquivo = diretório exportado e ponto de montagem. Faça o mesmo com o mp3:
- # mount -t nfs server:/home/mp3 /home/mp3
- Obs. Para montá-lo automaticamente adicione as entradas no /etc/fstab.
- Desmontando sistemas de arquivos NFS
- Utilize o comando umount [ponto_de_montagem] para desmontar o sistema de arquivos.
- Execute o comando ntsysv e selecione:
- Inicializando o servidor NFS
- # service portmap start
- # service netfs start
- # service nfs start
- Verifique-se as opções estão configuradas no arquivo /etc/rc.conf
- Tambem pode por os serviços para inicializarem automaticamente usando o /etc/init.d - /etc/rc.d, diretórios onde ficam os scripts de inicialização dos serviços.
- O Daemon,(Disk And Execution Monitor - Monitor de Execução e de Disco), de forma geral,
o ele inicia durante o processo de boot, então lidam com requisições
diversas de serviços, como requisições de rede,
atividades de hardware, dentre outros. Também podem executar tarefas em
horários pré-determinados ou até mesmo realizar configurações de
hardware.
- Por convenção a consoante sufixal "d", quando usada para
denominar um "programa" ou "ferramenta" relacionada com algum
serviço , indica que ele é um daemon.
- Os padrões do TCP/IP estão publicados numa série de documentos denominados pedidos de comentários (Requests for Comments, RFC). Os RFC consistem numa série evolutiva de relatórios, propostas e padrões de protocolos que descrevem o funcionamento interno do TCP/IP e da Internet.
- Os Protocolos do NFS são especificados nos seguintes RFCs:
- RFC 1094
- RFC 1813
- RFC 3530 (que tornou obsoleta o RFC 3010)