Configurando NFS + NIS (Ubuntu)

Este tutorial tem por objetivo ensinar a configurar o NFS + NIS no Ubuntu de forma rápida e simples, mas sem deixar de transmitir os conceitos necessários para a aquisição do conhecimento teórico. Antes de configurarmos o NFS e o NIS no GNU/Linux, devemos compreender o que eles são e para o que eles são utilizados.

[ Hits: 156.945 ]

Por: Racy Rassilan em 31/08/2009


Configurando o servidor NFS



A configuração do NFS no servidor consiste de três simples passos.

1° passo:

Baixar o pacote nfs-kernel-server utilizando o comando:

# apt-get install nfs-kernel-server

Estando como root no shell.

2° passo:

Definir qual pasta será compartilhada pela rede. Para isso é necessário editar o arquivo /etc/exports. Estando como root, no shell, digite:

# vi /etc/exports

E pressione "enter". Deverá ser mostrado um arquivo que poderá estar vazio ou cheio de comentários como estes:

# /etc/exports: the access control list for filesystems which may be exported
#               to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#

Os comentários são definidos quando, no início da linha, aparece um "#", que diz que tudo que vem após ele é um comentário e não deverá ser levado em conta pelo sistema. Bem, dentro deste arquivo basta inserirmos no final dele o diretório que desejamos compartilhar e que tipo de acesso permitiremos dentro do mesmo.

Ficará assim:

/diretório_a_ser_compartilhado tipo_de_acesso_permitido Exemplo:

/home/ *(rw,sync,no_root_squash)

Obs.: "*" (asterisco) define que todos da rede terão permissão de acesso ao diretório. "rw" poderão ler, gravar e apagar o conteúdo do diretório no_root_squash, o root do servidor também poderá se logar remotamente.

Para definir apenas alguns usuários específicos a terem permissão de acesso ao compartilhamento, basta que no lugar do "*" seja colocado o IP da máquina que você deseja que tenha acesso aos arquivos. Se desejar somente leitura, no lugar de "rw" coloque "ro". Feito sua configuração basta salvar o arquivo pressionar "Esc", depois ":" (dois pontos) e digitar "wq", por fim pressione "enter".

3° passo:

Estando ainda no shell, como root, vá ao diretório /etc/init.d e dentro dele digite:

# ./nfs-kernel-server start

Isso iniciará o servidor com nossas configurações preestabelecidas, deixando-o pronto para compartilhar a pasta que definimos, bem como as máquinas que poderão acessá-la.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configurando o servidor NFS
   3. Configurando o cliente NFS
   4. Configurando o servidor NIS
   5. Configurando o cliente NIS
Outros artigos deste autor

Configurar servidor proxy Squid (Ubuntu)

Configurar servidor PPPoE (Ubuntu)

Leitura recomendada

ARM, utilização de snapshot de pacotes no Arch Linux

Configurar um servidor FTP com o vsFTPd no Raspberry Pi

Configurando o CACIC (parte 1)

Instalação do OpenGL em placas NVIDIA

Criando um Ubuntu (6.10/7.04) personalizado

  
Comentários
[1] Comentário enviado por carlaodopao em 17/09/2009 - 03:28h

Brilhante aula, cara!
Era tudo o q eu queria e precisava saber!
Valeu pelo seu post!!!! :-D=

[2] Comentário enviado por amarof2009 em 11/10/2009 - 15:23h

Boa tarde,
Já estou a um tempo tentando fazer o compartilhamento de arquivos utilizando o nfs, mas sempre aparece um erro.
Este artigo é excelente, fiz todos os procedimentos orientados mas aparece o seguinte erro:

root@wilton-desktop:~# mount 10.0.0.101:/home/wilton/Documentos/testando/ /home/wilton/sisope/
mount.nfs: mount to NFS server '10.0.0.101:/home/wilton/Documentos/testando/' failed: RPC Error: Program not registered
root@wilton-desktop:~#

Por favor, me ajudem a resolver este problema. Eu já pesquisei em um monte de sites mas não consegui resolver.
Muito obrigado.

[3] Comentário enviado por nox6000 em 11/10/2009 - 17:06h

Caro amarof2009,

Eu acredito que vc esteja montando de seu computador para seu computador isso não foi feito pra funcionar assim.


Isso foi feito para funcionar da seguinte maneira:

Temos um servidor 10.0.0.1 que esta me sedendo a pasta "arquivos" encontrada em /home/usuario/arquivos

e temos a maquina cliente 10.0.0.2 que vai pegar o conteudo via rede e montar em seu diretorio onde este tem que ter permissão para tal.

a montagem de forma manual podera ser assim:
mount 10.0.0.1:/home/usuario/arquivos /home/cliente/Desktop/arq

Ou sejá, estou montando manualmente o conteúdo da pasta "arquivos" do servidor 10.0.0.1 no desktop do computador 10.0.0.2 no "Desktop" mais precisamente na pasta "arq" que esta no "Desktop".

Isso só é possivel após realizar todas as configurações sugeridas por este artigo e se a pasta "arq" do cliente 10.0.0.2 bem como a pasta "arquivos" do sevidor 10.0.0.1 tiver permissão de escrita e leitura.


Esperto ter lhe ajudado.

[4] Comentário enviado por amarof2009 em 11/10/2009 - 18:18h

Não é querendo abusar, nox6000, mas eu acho que digitei o ip correto.
Para comprovar, quando digito ifconfig na maquina que seria o servidor(como você explicou, onde está a pasta sedida) aparece o seguinte:

wilton@wilton-laptop:~$ ifconfig
eth0 Link encap:Ethernet Endereço de HW 00:03:0d:77:37:b1
UP BROADCAST MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
IRQ:16 Endereço de E/S:0x2000

lo Link encap:Loopback Local
inet end.: 127.0.0.1 Masc:255.0.0.0
endereço inet6: ::1/128 Escopo:Máquina
UP LOOPBACK RUNNING MTU:16436 Métrica:1
pacotes RX:78 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:78 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:0
RX bytes:5968 (5.9 KB) TX bytes:5968 (5.9 KB)

wlan0 Link encap:Ethernet Endereço de HW 00:19:db:0e:ce:d4
inet end.: 10.0.0.101 Bcast:10.0.0.255 Masc:255.255.255.0
endereço inet6: fe80::219:dbff:fe0e:ced4/64 Escopo:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:639 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:716 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:491408 (491.4 KB) TX bytes:143783 (143.7 KB)

wmaster0 Link encap:Não Especificado Endereço de HW 00-19-DB-0E-CE-D4-65-64-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

wilton@wilton-laptop:~$


Qual é o número ip que devo usar?
Devo fazer alguma outra configuração?
Muito obrigado pela ajuda.

[5] Comentário enviado por amarof2009 em 11/10/2009 - 18:21h

Se também for acrescentar, quando faço ifconfig na máquina que seria cliente aparece o seguinte:

wilton@wilton-desktop:~$ ifconfig
eth0 Link encap:Ethernet Endereço de HW 00:24:21:89:b1:c1
UP BROADCAST MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
IRQ:252 Endereço de E/S:0x2000

lo Link encap:Loopback Local
inet end.: 127.0.0.1 Masc:255.0.0.0
endereço inet6: ::1/128 Escopo:Máquina
UP LOOPBACK RUNNING MTU:16436 Métrica:1
pacotes RX:120 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:120 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:0
RX bytes:9992 (9.9 KB) TX bytes:9992 (9.9 KB)

wlan0 Link encap:Ethernet Endereço de HW 00:21:91:80:12:1a
inet end.: 10.0.0.100 Bcast:10.0.0.255 Masc:255.255.255.0
endereço inet6: fe80::221:91ff:fe80:121a/64 Escopo:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:5222 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:5603 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:4490440 (4.4 MB) TX bytes:1009967 (1.0 MB)

wmaster0 Link encap:Não Especificado Endereço de HW 00-21-91-80-12-1A-32-31-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

wilton@wilton-desktop:~$

[6] Comentário enviado por nox6000 em 11/10/2009 - 19:58h

Caro amarof2009,

Este ip que esta me informando é o ip da sua placa de rede sem fio e não da sua placa de rede com fio.

Este artigo foi feito para computadores que utilizam placa de rede com fio. "Rede com Fio".
as placas de rede com fio são as placas denominadas eth0, eth1, eht3 ... ethN.

as placas de rede sem fio são Wlan0 e etc.

Bem o que quiz explicar da ultima vez e vou tentar tornar explicar é que vc tem dois compudadores Computador 1 - É o servidor que tem o endereço da placa com o IP X e este tem a pasta que foi compartilhada atraves da configuração do "NFS" este computador tem uma placa "ethN" ou seja uma placa de rede com fio.

Computador 2 -É o cliente este é o compudador com o endereço IP Y onde este tem a placa de rede "ethN" e que vai acessar via "NFS" o servidor "Computador 1" e conseguir montar um diretorio que contenha os arquivos do computador 1 no computador 2 que é o cliente.


Se vc estiver usando rede sem fio nos dois ai vc tera que estudar melhor e ver se realmente os dois computadores estão se comunicando para depois realizar a configuração do NFS tanto no computador 1 quanto no 2.


[7] Comentário enviado por andrefpacheco em 02/11/2009 - 12:23h

Nota 1000!!!!! Parabéns!!!!

[8] Comentário enviado por Sergio3s em 26/01/2010 - 09:48h

Show!! parabens !!
Só tenho duas perguntas, o perfil pode ser móvel ? como defino o tamanho máximo e a localização dele ?
Valeu !

[9] Comentário enviado por texwiller em 29/08/2010 - 10:12h

PARABENS! Nota 1000!

[10] Comentário enviado por leandro.bernardo em 15/04/2011 - 14:33h

na hora de configurar o /etc/exports

ele ficaria dessa forma?

/home/ *(rw,sync,Projetos)

ou

/home/ *(rw,sync,/home/diretorio/Projetos) ?



[11] Comentário enviado por nox6000 em 15/04/2011 - 14:47h

Olá Leznx!

Quanto a sua pergunta, não fica nem de uma maneira nem de outra.

Fica assim:

/home/diretorio/Projetos/ *(rw,sync,no_root_squash)

Ou seja, você quer compartilhar a pasta Projetos, que está no diretório: /home/diretorio/Projetos

Espero ter ajudado.

[12] Comentário enviado por aislan_santos em 03/12/2012 - 16:24h

ola
sou novo com o linux estou configurando NFS quando startei o serviço, apareceu a seguinte mensagem:
* Exporting directories for NFS kernel daemon ...
exportfs: no options for /home/server/teste*(rw,sync,root_no_squash) : sugest (sync) to avoid warning
exportfs: \etc\exports [1]: Neithet "subtree_check" or "no_subtree_check" specified for export "/home/server/teste*(rw,sync,root_no_squash"
assuming default behaviour ('no_subtree_check').
NOTE: this default has changed since nfs-utils version 1.0.x

exportfs: failed to stat /home/server/teste*(rw,sync,root_no_squash) : no such file or directory
[ok]
* Starting NFS kernel daemon [ok]



[13] Comentário enviado por wilhelm1991 em 11/09/2013 - 20:14h

Olá,

gostaria de saber como faço para conectar um Windows no Ubuntu com o NFS e NIS?

[14] Comentário enviado por wildner1 em 13/12/2013 - 22:11h

Saiu tudo perfeito até a instrução abaixo.

root@dicenter5:/etc/init.d# ./nis stop
bash: ./nis: Arquivo ou diretório não encontrado

Tentei o comando abaixo, pois acho que o nis está em outro lugar e voltou como permissão negada, O que devo fazer?

root@dicenter5:/etc# ./default/nis stop
bash: ./default/nis: Permissão negada

[15] Comentário enviado por usiel em 29/12/2013 - 14:27h

Com o Debian 7.3 funciona perfeitamente.
Eu uso ubuntu 13.04 como cliente e nele não aparece opção pra eu digitar o nome de um usuário do servidor, aparecem apenas opções pra eu escolher os usuários da máquina local (cliente); quando eu faço no terminal o login com usuário do servidor, funciona perveitamente.

Vale lembra que usi este tutorial abaixo:
NIS Servidor

1. instalando: apt-get install nis

2. Adicione a seguinte linha ao hosts.allow:
portmap ypserv ypbind : list of IP addresses

Onde a "lista de endereços IP" string é, você precisa fazer uma lista de endereços IP que consiste no servidor e todos os clientes. Estes têm de ser endereços IP por causa de uma limitação no portmap (ele não gosta de nomes de host).


3. Edit /etc/default/nis e definir a linha NISSERVER para NISSERVER=master

4. Edit /etc/yp.conf and add a server line of the form:
domain <domainname> server <servername>
onde: <domainname> é o nome do domínio (flap.local), e <servername> é o nome do servidor.

5. Edit /etc/ypserv.securenets e adicionar linhas para restringir o acesso a membros do domínio. Eu uso linhas para máquinas específicas, como:
host 192.168.1.1
host 192.168.1.2
etc.

6. Construir o DB, pela primeira vez, execute:
sudo /usr/lib/yp/ypinit -m

7. reiniciar serviços: /etc/init.d/ypbind restart

8. sempre que fizer alguma alteração (adicionar usuários), execute este comando:
sudo make -C /var/yp



NIS Cliente

1. Adicionar servidor em /etc/hosts. Isso significa que você ainda pode encontrar o servidor se houver uma falha de DNS.

2.instalar o nis
sudo apt-get install nis

3. defina o nome do seu dominio NIS editando o arquivo /etc/defaultdomain, acrescente uma linha com o nome do doínio (flap.local)
nano /etc/defaultdomain

4. adicione uma linha portmap em /etc/hosts.allow por razões de segurança:
portmap : <endereço IP do servidor NIS> (ou nome de máquina do servidor)

5. acrescente esta linha no arquivo /etc/passwd
+::::::

6. acrescente esta linha no arquivo /etc/group
+:::

7. acrescente esta linha no arquivo /etc/shadow
+::::::::

8. Edite /etc/yp.conf e adicione a linha:
ypserver <endereço IP do servidor NIS> (ou nome de máquina do servidor)

9. No arquivo /etc/pam.d/common-session. Será necessário incluir a linha abaixo. Esta alteração irá criar a pasta home do usuário automaticamente no primeiro logon:
session required pam_mkhomedir.so skel=/etc/skel/ umask=077

10. editar: nano /etc/nsswitch.conf e adicionar alterar linhas para:

passwd: compat nis
group: compat nis

shadow: compat nis
hosts: files dns nis


-> reiniciar serviços:
/etc/init.d/ypbind restart

[16] Comentário enviado por victormag em 19/03/2014 - 21:55h

Perfeito cara!

Obrigado por compartilhar seu conhcimento!

[17] Comentário enviado por eutugite em 27/04/2015 - 20:06h


desculpem a minha ignorância. isto deve ser o mais basico que há, mas não sei.
a configuração do servidor nis e nis cliente é feito na mesma máquina ou o nis server é feito na máquina servidor e o nis cliente na máquina cliente.
outra questão, o ubuntu desktop é apenas para a máquina cliente.
sei que as minhas perguntas são do mais basico que existe, mas estou a começar o linux. ando um pouco perdida.
obrigado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts