NFS significa Rede de Sistema de Arquivo, ajuda você a compartilhar arquivos e pastas entre sistemas Linux / Unix, desenvolvido pela SUN Microsystems, em 1990. O NFS permite-lhe montar uma partilha remota localmente.Este guia Ajuda-o a configurar o servidor NFS no CentOS 7 / RHEL 7.
- Benefícios de NFS
- serviços importantes
- ficheiros de configuração importantes
- ambiente
- NFS Server
- NFS Client
- Configurar o Servidor NFS
- Instalar o Servidor NFS
- Create NFS Share
- Configure Firewall
- configurar o cliente NFS
- instalar o cliente NFS
- verificar a partilha de NFS
- Mount NFS Share
- auto-montar as partilhas de NFS
- conclusão
Benefícios de NFS
- Arquivo / Pasta de compartilhamento entre sistemas *nix
- Permite montar sistemas de ficheiros remotos localmente
- Pode ser tratado como um Armazenamento Centralizado do sistema
- pode ser usado como um Domínio de Armazenamento ( Armazenamento de dados) para VMware e outros com a Plataforma de Virtualização.
- permite que as aplicações compartilhem configuração e arquivos de dados com múltiplos nós.
- permite ter arquivos atualizados em toda a partilha.
serviços importantes
os seguintes são os Serviços NFS importantes, incluídos em pacotes nfs-utils.
rpcbind: o servidor rpcbind converte os números do programa RPC em endereços universais.
NFS-server: permite aos clientes aceder às acções do NFS.
nfs-lock / rpc-statd: bloqueio de ficheiros NFS. Implementar a recuperação de bloqueio de arquivos quando um servidor NFS falha e reinicializa.
nfs-idmap: traduz os ids do utilizador e do grupo para nomes, e para traduzir os nomes dos utilizadores e dos grupos
para ids
ficheiros de configuração importantes
estaria a trabalhar principalmente em ficheiros de configuração abaixo para configurar o servidor NFS e os clientes.
/etc/exportações: É o arquivo de configuração principal, controla quais sistemas de arquivos são exportados para hosts remotos e especifica opções.
/ etc / fstab: este ficheiro é usado para controlar que Sistemas de ficheiros, incluindo pastas NFS, são montados quando o sistema arranca.
/etc / sysconfig/ nfs: este ficheiro é usado para controlar em que portos os Serviços de RPC necessários são executados.
/etc/hosts.permitir e/etc / hosts.negar: estes arquivos são chamados de wrap TCP, controla o acesso ao servidor NFS. É usado pela NFS para decidir se aceita ou não uma conexão vinda de outro endereço IP.
ambiente
aqui, vou usar CentOS 7 mínimos para esta demonstração. Este guia também deve trabalhar em sistemas Oracle Linux e Fedora.
NFS Server
Host Name: server.itzgeek.local (CentOS 7)
endereço IP: 192.168.1.10/24
NFS Client
Host Name: client.itzgeek.local (CentOS 7)
Endereço IP: 192.168.1.20/24
Configurar o Servidor NFS
Instalar o Servidor NFS
Instalar o pacote abaixo para o servidor NFS usando o comando yum.
yum install -y nfs-utils
uma vez instalados os pacotes, activar e iniciar os Serviços NFS.
systemctl start nfs-server rpcbindsystemctl enable nfs-server rpcbind
Now, let’s create a directory to share with the NFS client. Aqui eu estarei criando um novo diretório chamado nfsfileshare na partição/.
pode também partilhar o seu directório existente com o NFS.
mkdir /nfsfileshare
permitir que o cliente NFS leia e escreva para o diretório criado.
chmod 777 /nfsfileshare/
temos de modificar o ficheiro /etc/exports para fazer uma entrada do directory /nfsfileshare que deseja partilhar.
vi /etc/exports
crie um NFS que compartilhe algo como abaixo.
/nfsfileshare 192.168.1.20(rw,sync,no_root_squash)
/nfsfileshare: directório partilhado
192.168.1.20: Endereço IP da máquina cliente. Também podemos usar o hostname em vez de um endereço IP. Também é possível definir a gama de clientes com sub-rede como 192.168.1.0 / 24.
rw: permissão escrita para a pasta partilhada
sync: todas as alterações ao sistema de ficheiros de acordo são imediatamente enviadas para o disco; as respectivas operações de escrita estão a ser aguardadas.
no_root_squash: por padrão, qualquer pedido de arquivo feito pelo usuário root na máquina cliente é tratado como pelo Usuário ninguém no servidor. (Exatamente qual UID o pedido é mapeado depende do UID do Usuário “ninguém” no servidor, não do cliente.) Se no_root_squash é selecionado, então root na máquina cliente terá o mesmo nível de acesso aos arquivos no sistema como root no servidor.
você pode conhecer toda a opção na man page man exports ou aqui.
exportar as pastas partilhadas usando o seguinte comando.
exportfs -r
Extras:
exportfs-v: apresenta uma lista de ficheiros de acções e opções de exportação num servidor.
exportações-a: Exportações todas as listas listadas em/etc / exportações.
exportfs-u: Inexportar uma ou mais pastas.
exportfs-r: reexportar todas as pastas após modificar /etc / exports.
depois de configurar o servidor NFS, precisamos montar esse diretório compartilhado no cliente NFS.
Configure Firewall
precisamos configurar o firewall no servidor NFS para permitir que o cliente NFS acesse a partilha NFS. Para isso, execute os seguintes comandos no servidor NFS.
firewall-cmd --permanent --add-service mountdfirewall-cmd --permanent --add-service rpc-bindfirewall-cmd --permanent --add-service nfsfirewall-cmd --reload
configurar o cliente NFS
instalar o cliente NFS
precisamos instalar pacotes NFS no cliente NFS para montar uma partilha remota NFS. Instalar os pacotes NFS com o comando abaixo.
yum install -y nfs-utils
verificar a partilha de NFS
Antes de montar a partilha de NFS, solicito-lhe que verifique as partilhas de NFS disponíveis no servidor de NFS, executando o seguinte comando no cliente de NFS.
showmount -e 192.168.1.10
Saída:
Export list for 192.168.1.10:/nfsfileshare 192.168.1.20
Conforme o resultado, o /nfsfileshare está disponível no servidor NFS (192.168.1.10) para o cliente NFS (192.168.1.20).
Extras:
showmount-e: mostra as partilhas disponíveis na sua máquina local (servidor NFS).
showmount-e <server-ip ou hostname>: lista as partilhas disponíveis no servidor remoto
Agora, crie um directório no cliente NFS para montar a partilha NFS /nfsfileshare que criámos no servidor NFS.
mkdir /mnt/nfsfileshare
Use below command to mount a NFS share /nfsfileshare from NFS server 192.168.1.10 in/mnt / nfsfileshare on NFS client.
mount 192.168.1.10:/nfsfileshare /mnt/nfsfileshare
Verifique a partilha montada no cliente NFS usando o comando mount.
mount | grep nfs
saída:
ssunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)nfsd on /proc/fs/nfsd type nfsd (rw,relatime)192.168.1.10:/nfsfileshare on /mnt/nfsfileshare type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.20,local_lock=none,addr=192.168.1.10)
além disso, você pode usar o comando df-hT para verificar a partilha NFS montada.
df -hT
saída:
Filesystem Type Size Used Avail Use% Mounted on/dev/mapper/centos-root xfs 50G 1.2G 49G 3% /devtmpfs devtmpfs 485M 0 485M 0% /devtmpfs tmpfs 496M 0 496M 0% /dev/shmtmpfs tmpfs 496M 6.7M 490M 2% /runtmpfs tmpfs 496M 0 496M 0% /sys/fs/cgroup/dev/mapper/centos-home xfs 47G 33M 47G 1% /home/dev/sda1 xfs 1014M 154M 861M 16% /boottmpfs tmpfs 100M 0 100M 0% /run/user/0192.168.1.10:/nfsfileshare nfs4 50G 1.2G 49G 3% /mnt/nfsfileshare
crie um ficheiro na pasta montada para verificar o acesso de leitura e escrita na partilha NFS.
touch /mnt/nfsfileshare/test
se o comando acima não devolver nenhum erro, terá a configuração do NFS a funcionar.
auto-montar as partilhas de NFS
para montar as partilhas automaticamente em cada reboot, terá de modificar o ficheiro /etc/fstab do seu cliente NFS.
vi /etc/fstab
Add an entry something like below.
## /etc/fstab# Created by anaconda on Wed Jan 17 12:04:02 2018## Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#/dev/mapper/centos-root / xfs defaults 0 0UUID=60a496d0-69f4-4355-aef0-c31d688dda1b /boot xfs defaults 0 0/dev/mapper/centos-home /home xfs defaults 0 0/dev/mapper/centos-swap swap swap defaults 0 0192.168.1.10:/nfsfileshare /mnt/nfsfileshare nfs nosuid,rw,sync,hard,intr 0 0
Salve e feche o arquivo.
reinicie a máquina cliente e verifique se a partilha é montada automaticamente ou não.
reboot
Verifique a partilha montada no cliente NFS usando o comando mount.
mount | grep nfs
saída:
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)192.168.1.10:/nfsfileshare on /mnt/nfsfileshare type nfs4 (rw,nosuid,relatime,sync,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.20,local_lock=none,addr=192.168.1.10)
se quiser desmontar essa pasta partilhada do seu cliente NFS depois de terminar a partilha de ficheiros, poderá desmontar essa pasta em particular com o comando umount.
umount /mnt/nfsfileshare
conclusão
criou com sucesso o servidor NFS e o cliente NFS em CentOS 7 / RHEL 7. Se não quiser usar montagens estáticas, poderá configurar os ‘AutoFS’ nos CentOS 7 para montar a partilha de NFS apenas quando um utilizador os aceder.