404 Not Found


nginx
{"id":13786,"date":"2018-03-21T16:47:24","date_gmt":"2018-03-21T19:47:24","guid":{"rendered":"https:\/\/cleuber.com.br\/?p=13786"},"modified":"2018-04-05T14:26:07","modified_gmt":"2018-04-05T17:26:07","slug":"configurando-um-servidor-de-nfs-no-linux","status":"publish","type":"post","link":"https:\/\/cleuber.com.br\/index.php\/2018\/03\/21\/configurando-um-servidor-de-nfs-no-linux","title":{"rendered":"Configurando Um Servidor de NFS no Linux"},"content":{"rendered":"

Ol\u00e1 galera, olha eu aqui de novo.<\/p>\n

Eis uma coisa que preciso sempre usar, mas ainda n\u00e3o havia documentado aqui.<\/p>\n

Eu sempre uso compartilhamentos e montagens de sistema de arquivos ou pastas via NFS. E de vez em quando, quando eu monto um novo servidor, eu costumo instalar e configurar isso para que outro servidor que tenho (servidor de backup), possa ler esse sistema de arquivos e fazer backup de algumas pastas. Ent\u00e3o toda vez que eu tenho que configurar isso para um novo server, eu tenho que consultar uns comandos, e por isso hoje eu coloco aqui o procedimento.<\/p>\n

NFS<\/b> (acr\u00f4nimo para Network File System<\/b>) \u00e9 um sistema de arquivos distribu\u00eddos desenvolvido inicialmente pela Sun Microsystems, a fim de compartilhar arquivos e diret\u00f3rios entre computadores conectados em rede, formando assim um diret\u00f3rio virtual. Saiba mais<\/a><\/span><\/span>.<\/p>\n

Da\u00ed voc\u00ea deve estar se perguntando porque n\u00e3o usar o Samba<\/a><\/span><\/span> para isso?<\/p>\n

Bom, minha resposta \u00e9 que eu prefiro usar o Samba para criar um servidor de arquivos e compartilhar e controlar acessos aos diret\u00f3rios para usu\u00e1rios de uma rede com esta\u00e7\u00f5es de trabalho Windows, enquanto uso o NFS para compartilhar diret\u00f3rios entre servidores. Lembrando que o Windows n\u00e3o possui em sua vers\u00e3o Desktop o servi\u00e7o de cliente de NFS ativo, apenas na vers\u00e3o Enterprise e em servidores Windows.<\/p>\n

Este procedimento pode ser feito no Redhat<\/strong> e derivados como CentOS, Oracle Linux<\/strong>, ou no Debian, Ubuntu<\/strong> e derivados. Nestas Distros tudo ser\u00e1 feito atrav\u00e9s de comandos de terminal<\/strong>. Tamb\u00e9m coloquei uma parte especial para fazer isso no SUSE\/openSUSE<\/strong> atrav\u00e9s do Yast e sem usar nenhum comando de terminal.<\/p>\n

Vamos l\u00e1?<\/p>\n

Instala\u00e7\u00e3o<\/h2>\n

Ambiente de teste:<\/strong>
\nServidor: 192.168.0.100
\nM\u00e1quina cliente: 192.168.0.150<\/p>\n

1 – Instale o Servi\u00e7o de NFS no Servidor<\/h3>\n

Se voc\u00ea estiver usando o CentOS, ou RedHat ou Oracle Linux:<\/p>\n

sudo yum install nfs-utils<\/pre>\n

Se voc\u00ea estiver usando o Debian, Ubuntu, e derivados:<\/p>\n

sudo apt install nfs-kernel-server<\/pre>\n

2 – Habilite e inicie os seguintes servi\u00e7os<\/h3>\n
sudo systemctl enable rpcbind\r\nsudo systemctl enable nfs-server\r\nsudo systemctl enable nfs-lock\r\nsudo systemctl enable nfs-idmap\r\nsudo systemctl start rpcbind\r\nsudo systemctl start nfs-server\r\nsudo systemctl start nfs-lock\r\nsudo systemctl start nfs-idmap<\/pre>\n

3 – Configure Seus Compartilhamentos<\/h3>\n

3.1 – Escolhendo ou Criando Pastas Para Compartilhar<\/h4>\n

Neste exemplo, eu criei os\u00a0diret\u00f3rios “Backup” e “Dados”, ent\u00e3o faz-se necess\u00e1rio usar os seguintes comandos para alterar as permiss\u00f5es neles:<\/p>\n

sudo chmod -R 755 \/media\/Backup\r\nsudo chown nfsnobody:nfsnobody\u00a0\/media\/Backup\r\n\r\nsudo chmod -R 755 \/media\/Dados\r\nsudo chown nfsnobody:nfsnobody\u00a0\/media\/Dados<\/pre>\n

Obs.<\/strong> Caso voc\u00ea queira compartilhar seu diret\u00f3rio “\/home”<\/strong> ou alguma pasta dentro dele, n\u00e3o<\/strong> altere as permiss\u00f5es da mesma para n\u00e3o arruinar a hierarquia de permiss\u00f5es.<\/p>\n

3.2 – Adicionando suas Pastas \u00e0s configura\u00e7\u00f5es do NFS<\/h4>\n

Neste passo o procedimento \u00e9 simples, basta editar usando seu editor de texto favorito o seguinte arquivo abaixo (eu usarei o editor nano):<\/p>\n

sudo nano \/etc\/exports<\/pre>\n

Dentro do arquivo vazio, coloque o caminho de seu diret\u00f3rio que deseja compartilhar.
\nNeste exemplo abaixo eu irei compartilhar as pastas fict\u00edcias chamadas “Backup” e “Dados” com o servidor com o ip:192.168.0.150.<\/p>\n

\/media\/Backup\/ 192.168.0.150(rw,sync,no_root_squash,no_all_squash)\r\n\/media\/Dados\/ 192.168.0.150(rw,sync,no_root_squash,no_all_squash)<\/pre>\n

Obs.<\/strong>\u00a0Note que o 192.168.0.150 \u00e9 o IP da m\u00e1quina cliente, se voc\u00ea deseja que qualquer outro cliente possa acess\u00e1-lo, voc\u00ea precisa adicionar o endere\u00e7o IP, caso contr\u00e1rio voc\u00ea pode adicionar um “*”. E nem preciso mencionar, (mas vou), que o IP do servidor e\u00a0 m\u00e1quina cliente devem estar pingando\/comunicando um com o outro.<\/p>\n

3.3 – Agora basta reiniciar o servi\u00e7o de NFS<\/h4>\n
sudo systemctl restart nfs-server<\/pre>\n

3.4 – Liberando NFS no Firewall<\/h4>\n

Caso esteja com o Firewall ativo no CentOS, Fedora, o que \u00e9 padr\u00e3o em muitos server, precisamos adicionar o servi\u00e7o de NFS na public zone do Firewall.<\/p>\n

sudo firewall-cmd --permanent --zone=public --add-service=nfs\r\nsudo firewall-cmd --permanent --zone=public --add-service=mountd\r\nsudo firewall-cmd --permanent --zone=public --add-service=rpc-bind\r\nsudo firewall-cmd --reload<\/pre>\n

Obs.<\/strong> Se isso n\u00e3o for feito poder\u00e1 dar erro de conex\u00e3o com timeout no lado do cliente.<\/p>\n

No Ubuntu (se estiver com o Firewall habilitado)<\/p>\n

sudo ufw allow from 192.168.0.100<\/span> to any port nfs<\/pre>\n

Obs.<\/strong> Substitua o IP acima (100), pelo ip de seu servidor.<\/p>\n

A parte do Servidor agora est\u00e1 pronta.<\/p>\n\n\t\t

<\/div>\n\t\t
\n\t\n

Dica Para Administradores que usam SUSE e openSUSE<\/h3>\n

Se seu servidor for um SUSE\/openSUSE.
\nA Distro SUSE Enterprise e a openSUSE (vers\u00e3o gratuita), possuem o Yast, que \u00e9 uma central de configura\u00e7\u00f5es para administradores dos servi\u00e7os do servidor, e na minha opini\u00e3o a mais bacana que existe para administrar um servidor (com interface). L\u00e1 no Yast temos o Servidor de NFS<\/strong> e o cliente de NFS, <\/strong>ambas ferramentas gr\u00e1ficas o que deixa o processo ainda mais simples.<\/p>\n

Abaixo alguns prints que mostram como o processo \u00e9 simples.<\/p>\n

1 – Abra o Yast e escolha o item Servidor de NFS.<\/p>\n

\"\"<\/a><\/p>\n

2 – J\u00e1 escolha se ele ir\u00e1 iniciar com o sistema e daqui j\u00e1 se pode abrir a porta no Firewall.<\/p>\n

\"\"<\/a><\/p>\n

Adicione os diret\u00f3rios que desejar e pronto!<\/p>\n

\"\"<\/a><\/p>\n

 <\/p>\n

Configurando o Cliente de NFS<\/h2>\n

No teste abaixo usaremos um CentOS desktop, mas voc\u00ea poder\u00e1 fazer o mesmo no Debian, Ubuntu e derivados, Fedora, SUSE, openSUSE.<\/p>\n

1 – Instala\u00e7\u00e3o<\/strong><\/p>\n

Primeiramente instale o NFS no client<\/p>\n

sudo yum install nfs-utils<\/pre>\n

No Debian, Ubuntu e derivados<\/p>\n

sudo apt install nfs-common<\/pre>\n

2 – Criando Pastas de Ponto de Montagem<\/strong><\/p>\n

Agora, vamos criar a pasta que ser\u00e1 o ponto de montagem de seu diret\u00f3rio NFS remoto.<\/p>\n

sudo mkdir -p \/mnt\/nfs\/Backup\r\nsudo mkdir -p \/mnt\/nfs\/Dados<\/pre>\n

3 – Montagem<\/strong><\/p>\n

Vamos agora montar o compartilhamento NFS nestas pastas:<\/p>\n

mount -t nfs 192.168.0.100:\/media\/Backup \/mnt\/nfs\/Backup\/\r\nmount -t nfs 192.168.0.100:\/media\/Dados \/mnt\/nfs\/Dados\/<\/pre>\n

4 – Checagem<\/strong><\/p>\n

Vamos checar se a montagem foi bem sucedida.<\/p>\n

df -kh\r\n\r\n[root@client1\u00a0~]# df -kh\r\n Filesystem\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Size\u00a0 Used Avail Use% Mounted on\r\n \/dev\/mapper\/centos-root\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 39G\u00a0 1.1G\u00a0\u00a0 38G\u00a0\u00a0 3% \/\r\n devtmpfs\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 488M\u00a0\u00a0\u00a0\u00a0 0\u00a0 488M\u00a0\u00a0 0% \/dev\r\n tmpfs\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 494M\u00a0\u00a0\u00a0\u00a0 0\u00a0 494M\u00a0\u00a0 0% \/dev\/shm\r\n tmpfs\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 494M\u00a0 6.7M\u00a0 487M\u00a0\u00a0 2% \/run\r\n tmpfs\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 494M\u00a0\u00a0\u00a0\u00a0 0\u00a0 494M\u00a0\u00a0 0% \/sys\/fs\/cgroup\r\n \/dev\/mapper\/centos-home\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 19G\u00a0\u00a0 33M\u00a0\u00a0 19G\u00a0\u00a0 1% \/home\r\n \/dev\/sda1\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 497M\u00a0 126M\u00a0 372M\u00a0 26% \/boot\r\n 192.168.0.100:\/media\/Backup\u00a0 \u00a0 39G\u00a0 980M\u00a0\u00a0 38G\u00a0\u00a0 3% \/mnt\/nfs\/Backup\r\n 192.168.0.100:\/media\/Dados\u00a0\u00a0\u00a0 19G\u00a0\u00a0 33M\u00a0\u00a0 19G\u00a0\u00a0 1% \/mnt\/nfs\/Dados<\/span>\r\n\r\n<\/pre>\n

Agora \u00e9 poss\u00edvel confirmar que estamos conectados.<\/p>\n

Agora testaremos as permiss\u00f5es na pasta com o seguinte comando:<\/p>\n

touch \/mnt\/nfs\/Backup\/test-nfs.txt<\/pre>\n

Se o comando der a sa\u00edda ok, e o arquivo for criado, as permiss\u00f5es est\u00e3o ok.<\/p>\n

Tornando Permanente a Montagem NFS<\/h3>\n

Para n\u00e3o ter que montar novamente os shares NFS a cada boot, podemos configurar para o client fazer isso sozinho. Para isso vamos editar o arquivo “\/etc\/fstab” na m\u00e1quina cliente.<\/span><\/p>\n

sudo nano \/etc\/fstab<\/p>\n

Adicione as entradas conforme exemplo abaixo:<\/p>\n

[...]\r\n192.168.0.100:\/media\/Backup    \/mnt\/nfs\/Backup   nfs defaults 0 0\r\n192.168.0.100:\/media\/Dados    \/mnt\/nfs\/Dados   nfs defaults 0 0<\/pre>\n

Obs. A Distro SUSE Enterprise e a openSUSE (vers\u00e3o gratuita), possuem um cliente de NFS gr\u00e1fico configur\u00e1vel<\/strong>, a partir do painel de controle do Yast. O que deixa o processo ainda mais simples.<\/p>\n\n\t\t

<\/div>\n\t\t
\n\t\n

Dica para Usu\u00e1rios de SUSE\/openSUSE<\/h3>\n

Como citei anteriormente, a Distro SUSE Enterprise e a openSUSE (vers\u00e3o gratuita), possuem o Yast, que \u00e9 uma central de configura\u00e7\u00f5es para administradores dos servi\u00e7os do servidor. No Yast temos o Servidor de NFS<\/strong> e o cliente de NFS, <\/strong>ambas ferramentas gr\u00e1ficas o que deixa o processo ainda mais simples.
\nCheque como \u00e9 f\u00e1cil configurar um SUSE\/openSUSE como cliente de NFS:<\/p>\n

1 – Abra o item Cliente de NFS<\/p>\n

\"\"<\/a><\/p>\n

2 – Adicione o IP do servidor que est\u00e1 fazendo o share, Selecione o diret\u00f3rio compartilhado, e defina o ponto de montagem local. Clique em “ok” e pronto. F\u00e1cil n\u00e3o \u00e9?!<\/p>\n

\"\"<\/a><\/p>\n

Conclus\u00e3o<\/h2>\n

Agora voc\u00ea tem uma montagem feita a partir de um compartilhamento NFS bem sucedida. Voc\u00ea pode at\u00e9 mesmo fazer scripts de backup que compactam e armazenam localmente e diariamente o conte\u00fado de montagens NFS como neste exemplo.<\/p>\n

Abra\u00e7os,<\/p>\n

Cleuber<\/p>\n","protected":false},"excerpt":{"rendered":"

Ol\u00e1 galera, olha eu aqui de novo. Eis uma coisa que preciso sempre usar, mas ainda n\u00e3o havia documentado aqui. Eu sempre uso compartilhamentos e montagens de sistema de arquivos ou pastas via NFS. E de vez em quando, quando eu monto um novo servidor, eu costumo instalar e configurar isso para que outro servidor …<\/p>\n","protected":false},"author":1,"featured_media":13801,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[51,4,348],"tags":[732,173,731,687],"class_list":["post-13786","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dicas-e-tutoriais","category-tutoriais-linux","category-servidores-linux","tag-cliente-nfs","tag-opensuse","tag-servidor-nfs","tag-suse"],"_links":{"self":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/posts\/13786","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=13786"}],"version-history":[{"count":0,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/posts\/13786\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/media\/13801"}],"wp:attachment":[{"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=13786"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=13786"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cleuber.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=13786"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}