<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt-BR">
	<id>http://wiki.nosdigitais.teia.org.br/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Teagom</id>
	<title>Pontão Nós Digitais - Contribuições do usuário [pt-br]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.nosdigitais.teia.org.br/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Teagom"/>
	<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/Especial:Contribui%C3%A7%C3%B5es/Teagom"/>
	<updated>2026-04-22T17:36:09Z</updated>
	<subtitle>Contribuições do usuário</subtitle>
	<generator>MediaWiki 1.39.0</generator>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Relato_de_Bugs-Diskless_Debian_Squeeze&amp;diff=7237</id>
		<title>Relato de Bugs-Diskless Debian Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Relato_de_Bugs-Diskless_Debian_Squeeze&amp;diff=7237"/>
		<updated>2012-11-09T17:09:36Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Este espaço é destinado para que os usuários da rede diskless relatem os bugs da mesma:&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1 - A rede apresenta uma grande lentidão se comparada à diskless anterior, mesmo sendo utilizado hardware de melhor qualidade; (28/08)&lt;br /&gt;
* resp: Fazer testes com switch gigabit e testes com NFS na hora de montar os &amp;quot;discos&amp;quot;&lt;br /&gt;
----&lt;br /&gt;
2 - Alguns terminais ao finalizar a inicialização da interface gráfica não abrem o campo de login; (28/08)&lt;br /&gt;
* resp: Resolvido, problema no NIS.&lt;br /&gt;
----&lt;br /&gt;
3 - O terminal, notebook thinkpad SL400 quando entra em tela de descanso, não volta a subir a interface gráfica; (28/08)&lt;br /&gt;
* resp: Resolvido. Problema com /var&lt;br /&gt;
----&lt;br /&gt;
4 - Em alguns usuários, no momento do login está quebrando o nautilos e as configurações das janelas de navegação; (28/08)&lt;br /&gt;
* resp: resolvido - item 5&lt;br /&gt;
----&lt;br /&gt;
5 - O firefox está travando em utilizações simples como abrir uma nova aba; (28/08)&lt;br /&gt;
* resp: resolvido - item 6&lt;br /&gt;
----&lt;br /&gt;
6 - O firefox não está abrindo os aplicativos em java do Banco do Brasil; (28/08)&lt;br /&gt;
* resp: resolvido - item 2&lt;br /&gt;
----&lt;br /&gt;
7 - O grupo de superusuários não está funcionando direito; (28/08)&lt;br /&gt;
# resp: resolvido - usar su&lt;br /&gt;
----&lt;br /&gt;
8 - Após o isolamento do /var , embora esteja travado menos, em alguns momentos trava a ponto de nem o cursor do mouse responder, depois volta a normalidade. (31/08)&lt;br /&gt;
* resp: não aconteceu mais. notificar se ocorrer novamente&lt;br /&gt;
----&lt;br /&gt;
9 - O firefox está numa versão muito desatualizada. (31/08)&lt;br /&gt;
* resp: resolvido - item 6&lt;br /&gt;
----&lt;br /&gt;
10 - Máquinas novas estão com a resolução do video errada&lt;br /&gt;
* resp:  Resolução , 1600x900 . module i395, debian backup &lt;br /&gt;
----&lt;br /&gt;
11 - Testar TEIA_DOCS com NFS em vez de samba.&lt;br /&gt;
* resp: Usar samba é vantagem para as máquinas que não estão na diskless.&lt;br /&gt;
----&lt;br /&gt;
12 - A impressora não está respondendo na rede.&lt;br /&gt;
* resp: quando a impressora não responder usar o comando '''cat /opt/sihp1020.dl &amp;gt; /dev/usb/lp0''' dentro do servidor.&lt;br /&gt;
----&lt;br /&gt;
13 - O Firefox não está abrindo, e uma janela aparece dizendo que ele já está em execução, mas ele não está.&lt;br /&gt;
* resp: digite o comando '''rm -rf /home/USER/.mozilla'''&lt;br /&gt;
----&lt;br /&gt;
14 - Nenhum dispositivo USB monta na rede (31/10) Ex: pen drive, camera, HD externo&lt;br /&gt;
* resp: resolvido&lt;br /&gt;
----&lt;br /&gt;
15 - As janelas de navegação não abrem no padrão do nautilus quando utilizadas dentro dos programas. (01/11)&lt;br /&gt;
* resp: resolvido&lt;br /&gt;
----&lt;br /&gt;
16 - O inkscape tem se mostrado muito instável dentro da diskless, fechando a qualquer momento. (01/11)&lt;br /&gt;
* resp:&lt;br /&gt;
----&lt;br /&gt;
17 - O open office não está abrindo depois de ter sido interrompido abruptamente, abre a janela de recuperação de arquivos, não aparece nenhum aquivo para ser recuperado e não finaliza a abertura do software. (08/11) Usuário Daniel&lt;br /&gt;
* resp:&lt;br /&gt;
----&lt;br /&gt;
18 - Nossa intenção é ter três impressoras na rede, precisamos de uma solução definitiva (seria um servidor de impressão?). No momento a multifuncional e a laserjet antiga não estão respondendo.&lt;br /&gt;
* resp:&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Tratos realizados na rede ==&lt;br /&gt;
&lt;br /&gt;
1) serviço de scanner&lt;br /&gt;
 apt-get install sane-utils&lt;br /&gt;
&lt;br /&gt;
2) plugin do java com firefox&lt;br /&gt;
 apt-geit install icedtea6-plugin&lt;br /&gt;
&lt;br /&gt;
4) incluir no grupo scanner&lt;br /&gt;
 adduser livre scanner&lt;br /&gt;
 adduser livre lpadmin&lt;br /&gt;
&lt;br /&gt;
5) remover velhas configurações&lt;br /&gt;
 cd /home&lt;br /&gt;
 mv livre livre2&lt;br /&gt;
 mkdir livre&lt;br /&gt;
 chown livre.user livre&lt;br /&gt;
 mv livre2/* livre&lt;br /&gt;
 mv livre2 lixeira&lt;br /&gt;
&lt;br /&gt;
6) atualizando firefox&lt;br /&gt;
 tar jxvf firefox-15.0.tar.bz2&lt;br /&gt;
 mv firefox /usr/local/&lt;br /&gt;
 ln -s /usr/local/firefox/firefox /usr/bin/firefox1x&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* colocando [[Scanner em rede]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Relato_de_Bugs-Diskless_Debian_Squeeze&amp;diff=6693</id>
		<title>Relato de Bugs-Diskless Debian Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Relato_de_Bugs-Diskless_Debian_Squeeze&amp;diff=6693"/>
		<updated>2012-09-01T02:13:19Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Este espaço é destinado para que os usuários da rede diskless relatem os bugs da mesma:&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1 - A rede apresenta uma grande lentidão se comparada à diskless anterior, mesmo sendo utilizado hardware de melhor qualidade; (28/08)&lt;br /&gt;
* resp: Fazer testes com switch gigabit e testes com NFS na hora de montar os &amp;quot;discos&amp;quot;&lt;br /&gt;
&lt;br /&gt;
2 - Alguns terminais ao finalizar a inicialização da interface gráfica não abrem o campo de login; (28/08)&lt;br /&gt;
* resp: Resolvido, problema no NIS.&lt;br /&gt;
&lt;br /&gt;
3 - O terminal, notebook thinkpad SL400 quando entra em tela de descanso, não volta a subir a interface gráfica; (28/08)&lt;br /&gt;
* resp: Resolvido. Problema com /var&lt;br /&gt;
&lt;br /&gt;
4 - Em alguns usuários, no momento do login está quebrando o nautilos e as configurações das janelas de navegação; (28/08)&lt;br /&gt;
* resp: resolvido - item 5&lt;br /&gt;
&lt;br /&gt;
5 - O firefox está travando em utilizações simples como abrir uma nova aba; (28/08)&lt;br /&gt;
* resp: resolvido - item 6&lt;br /&gt;
&lt;br /&gt;
6 - O firefox não está abrindo os aplicativos em java do Banco do Brasil; (28/08)&lt;br /&gt;
* resp: resolvido - item 2&lt;br /&gt;
&lt;br /&gt;
7 - O grupo de superusuários não está funcionando direito; (28/08)&lt;br /&gt;
# resp: resolvido - usar su&lt;br /&gt;
&lt;br /&gt;
8 - Após o isolamento do /var , embora esteja travado menos, em alguns momentos trava a ponto de nem o cursor do mouse responder, depois volta a normalidade. (31/08)&lt;br /&gt;
* resp: não aconteceu mais. notificar se ocorrer novamente&lt;br /&gt;
&lt;br /&gt;
9 - O firefox está numa versão muito desatualizada. (31/08)&lt;br /&gt;
* resp: resolvido - item 6&lt;br /&gt;
&lt;br /&gt;
10 - Máquinas novas estão com a resolução do video errada&lt;br /&gt;
* resp: Testes com xorg.conf para cada máquina. Resolução , 1600x900 . module i395 &lt;br /&gt;
&lt;br /&gt;
11 - Testar TEIA_DOCS com NSF em vez de samba.&lt;br /&gt;
* resp:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== coisas feita ==&lt;br /&gt;
&lt;br /&gt;
1) serviço de scanner&lt;br /&gt;
 apt-get install sane-utils&lt;br /&gt;
&lt;br /&gt;
2) plugin do java com firefox&lt;br /&gt;
 apt-geit install icedtea6-plugin&lt;br /&gt;
&lt;br /&gt;
4) incluir no grupo scanner&lt;br /&gt;
 adduser livre scanner&lt;br /&gt;
 adduser livre lpadmin&lt;br /&gt;
&lt;br /&gt;
5) remover velhas configurações&lt;br /&gt;
 cd /home&lt;br /&gt;
 mv livre livre2&lt;br /&gt;
 mkdir livre&lt;br /&gt;
 chown livre.user livre&lt;br /&gt;
 mv livre2/* livre&lt;br /&gt;
 mv livre2 lixeira&lt;br /&gt;
&lt;br /&gt;
6) atualizando firefox&lt;br /&gt;
 tar jxvf firefox-15.0.tar.bz2&lt;br /&gt;
 mv firefox /usr/local/&lt;br /&gt;
 ln -s /usr/local/firefox/firefox /usr/bin/firefox1x&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.guilhermejr.net/instalando-scanner-num-servidor-para-funcionar-em-rede-ubuntu-server-10-04/ colocando scanner em rede]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6303</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6303"/>
		<updated>2012-07-21T20:51:23Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* NIS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley.reggae.com.br     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff.reggae.com.br     jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
&lt;br /&gt;
Network File System (NFS), é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
Podemos fazer um teste com o cliente mesmo não finalizado toda a diskless. Se foi feito todas as configurações&lt;br /&gt;
corretamente, o cliente deve bootar e para com um erro: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;quot;/bin/sh can't access tty; (initramsfs) &amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
 Quando pedir o nome do dominio NIS, digite o que foi criado no servidor, no caso desse texto: rock&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
 &lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6302</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6302"/>
		<updated>2012-07-21T20:50:20Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* NIS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley.reggae.com.br     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff.reggae.com.br     jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
&lt;br /&gt;
Network File System (NFS), é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
Podemos fazer um teste com o cliente mesmo não finalizado toda a diskless. Se foi feito todas as configurações&lt;br /&gt;
corretamente, o cliente deve bootar e para com um erro: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;quot;/bin/sh can't access tty; (initramsfs) &amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
 &lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6301</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6301"/>
		<updated>2012-07-21T20:38:54Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Scripts de inicialização, /VAR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley.reggae.com.br     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff.reggae.com.br     jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
&lt;br /&gt;
Network File System (NFS), é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
Podemos fazer um teste com o cliente mesmo não finalizado toda a diskless. Se foi feito todas as configurações&lt;br /&gt;
corretamente, o cliente deve bootar e para com um erro: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;quot;/bin/sh can't access tty; (initramsfs) &amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
 &lt;br /&gt;
 #! /bin/sh&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6234</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6234"/>
		<updated>2012-07-20T23:37:34Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Log */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley.reggae.com.br     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff.reggae.com.br     jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
&lt;br /&gt;
Network File System (NFS), é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
Podemos fazer um teste com o cliente mesmo não finalizado toda a diskless. Se foi feito todas as configurações&lt;br /&gt;
corretamente, o cliente deve bootar e para com um erro: &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;quot;/bin/sh can't access tty; (initramsfs) &amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6233</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6233"/>
		<updated>2012-07-20T22:26:38Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Debootstrap */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley.reggae.com.br     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff.reggae.com.br     jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
&lt;br /&gt;
Network File System (NFS), é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6232</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6232"/>
		<updated>2012-07-20T22:26:16Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Serviço NFS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley.reggae.com.br     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff.reggae.com.br     jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
&lt;br /&gt;
Network File System (NFS), é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6231</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6231"/>
		<updated>2012-07-20T21:54:16Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Servidor: adicionando máquinas */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley.reggae.com.br     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff.reggae.com.br     jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6230</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6230"/>
		<updated>2012-07-20T21:50:42Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Serviço DHCP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/isc-dhcp-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6229</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6229"/>
		<updated>2012-07-20T21:47:44Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Serviço DHCP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6228</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6228"/>
		<updated>2012-07-20T21:41:38Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Compartilhando Internet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.conf.all.forwarding=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta sendo usada.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6227</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6227"/>
		<updated>2012-07-20T21:38:18Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Configurando arquivos de interface de rede */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 # REDE LAN, rede interna&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciar o serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6226</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6226"/>
		<updated>2012-07-20T21:36:46Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 # REDE LAN&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
        # ip do servidor 	&lt;br /&gt;
        address 192.168.0.1&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        netmask 255.255.255.0        &lt;br /&gt;
        # broadcast&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
        # classe da rede geral 	&lt;br /&gt;
        network 192.168.0.0&lt;br /&gt;
        	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 # Saida para internet, normalmente o IP dinâmico, então usaremos DHCPCLIENT &lt;br /&gt;
auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 &lt;br /&gt;
Iniciaro serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
  # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6225</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6225"/>
		<updated>2012-07-20T21:24:17Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Atualizando lista do repositório&lt;br /&gt;
 '''sudo apt-get update'''&lt;br /&gt;
&lt;br /&gt;
Instalando sudo&lt;br /&gt;
 '''apt-get install sudo'''&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 # REDE LAN&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 	address 192.168.0.1	   &lt;br /&gt;
        # ip do servidor&lt;br /&gt;
 	netmask 255.255.255.0&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
 	network 192.168.0.0&lt;br /&gt;
        # classe da rede geral&lt;br /&gt;
	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 # para ip dinamico. pode variar dependendo da sua conexão.&lt;br /&gt;
&lt;br /&gt;
Iniciaro serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
&lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6224</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6224"/>
		<updated>2012-07-20T21:19:30Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autores:&amp;lt;br /&amp;gt;&lt;br /&gt;
Tiago de Souza Moraes e www.teia.org.br&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 # REDE LAN&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 	address 192.168.0.1	   &lt;br /&gt;
        # ip do servidor&lt;br /&gt;
 	netmask 255.255.255.0&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
 	network 192.168.0.0&lt;br /&gt;
        # classe da rede geral&lt;br /&gt;
	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 # para ip dinamico. pode variar dependendo da sua conexão.&lt;br /&gt;
&lt;br /&gt;
Iniciaro serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
&lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6223</id>
		<title>Discussão:Diskless - Debian 6.0 Squeeze</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Discuss%C3%A3o:Diskless_-_Debian_6.0_Squeeze&amp;diff=6223"/>
		<updated>2012-07-20T21:18:01Z</updated>

		<summary type="html">&lt;p&gt;Teagom: Nova página: &amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;  Autor: Tiago de Souza Moraes tiago@futuria.com.br  [[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede b...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;Diskless - Debian 6.0 Squeeze&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autor:&lt;br /&gt;
Tiago de Souza Moraes&lt;br /&gt;
tiago@futuria.com.br&lt;br /&gt;
&lt;br /&gt;
[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 # REDE LAN&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 	address 192.168.0.1	   &lt;br /&gt;
        # ip do servidor&lt;br /&gt;
 	netmask 255.255.255.0&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
 	network 192.168.0.0&lt;br /&gt;
        # classe da rede geral&lt;br /&gt;
	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 # para ip dinamico. pode variar dependendo da sua conexão.&lt;br /&gt;
&lt;br /&gt;
Iniciaro serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
&lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
=== X11 e xorg.conf ===&lt;br /&gt;
&lt;br /&gt;
Caso o boot reclamar que nao consegue iniciar o modo grafico, entao&lt;br /&gt;
edite no servidor o arquivo de configuracao do modo grafico dos clientes. No&lt;br /&gt;
caso especifico do setup da Teia, edite:&lt;br /&gt;
&lt;br /&gt;
 /export/intrepid/etc/X11/xorg.conf&lt;br /&gt;
&lt;br /&gt;
e coloque secoes Screen e ServerLayout apropriadas. Uma dica e' copiar a&lt;br /&gt;
configuracao detectada no /etc/X11/xorg.conf do livecd do ubuntu no cliente.&lt;br /&gt;
Na maioria dos casos basta copiar uma configuracao ja existente de uma maquina&lt;br /&gt;
similar.&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=5993</id>
		<title>Pontão Nós Digitais</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=5993"/>
		<updated>2012-06-21T01:07:24Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--- Caixa do Centro ----&amp;gt; &lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;70%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; color: white; font-size: 100%; text-align: center; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] Bem-vindo à '''Wiki do Pontão Nós Digitais'''!&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
----------&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(246, 136, 35); width: 100%; background-color: rgb(246, 193, 76); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(246, 193, 76); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(246, 136, 35); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] '''Oficinas Abertas'''&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=oficinasabertas&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(251, 177, 107); width: 100%; background-color: rgb(255, 246, 125); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(255, 246, 125); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(251, 177, 107); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] '''Projetos Especiais'''&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=projetosespeciais&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(255, 70, 66); width: 100%; background-color: rgb(255, 155, 90); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(255, 155, 90); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(255, 70, 66); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] [[Esporodifusores - rivendell]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=esporos&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
*[http://www.wiki.nosdigitais.teia.org.br/images/f/f2/Rog-1.3.0-1_pt-BR_24_07_2010_MERGED.pdf Manual sendo traduzido Rivendell] &lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;70%&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(20, 200, 0); width: 100%; background-color: rgb(200, 255, 200); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(200, 255, 200); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(17, 142, 0); background-color: rgb(20, 200, 0); width:70%; font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:logo-icon-x35.png]] [[Lab Macambira]] &amp;amp;nbsp;::&amp;amp;nbsp; [[Equipe Lab Macambira|Equipe]] &amp;amp;nbsp;:: &amp;amp;nbsp;[[Fale conosco|Contato]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot; style=&amp;quot;background-color: rgb(200, 255, 200);&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| &lt;br /&gt;
:'''[[:Categoria:Lab_Macambira|P&amp;amp;aacute;ginas Recentes]]'''&lt;br /&gt;
:&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
    category=Lab Macambira&lt;br /&gt;
    count=7&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
:'''[[Lab_Macambira#Grupos_de_trabalho|Grupos de Trabalho]]'''&lt;br /&gt;
:* [[GT-Web]]&lt;br /&gt;
:* [[GT-AA]]&lt;br /&gt;
:* [[GT-Audio]]&lt;br /&gt;
:* [[GT-pdf | GT-PDF]]&lt;br /&gt;
:* [[GT-Video]]&lt;br /&gt;
:* [[GT-Georeferenciamento | GT-Georeferencia]]&lt;br /&gt;
:* [[Lab_Macambira#Grupos_de_trabalho|Outros]]&lt;br /&gt;
|&lt;br /&gt;
:'''[[Software_Lab_Macambira|Software Criado]]'''&lt;br /&gt;
:* [[AA|(AA)]]&lt;br /&gt;
:* [https://github.com/teiacasadecriacao/agora-communs/wiki &amp;amp;Aacute;gora Communs]&lt;br /&gt;
:* [http://www.conferenciadedireitos.org.br/subprefeitura.php?id=21 Confer&amp;amp;ecirc;ncia Permanente]&lt;br /&gt;
:* [https://github.com/automata/phenny Macambot]&lt;br /&gt;
:* [http://pc.nosdigitais.teia.org.br/ CPC]&lt;br /&gt;
:* [http://siptoolbox.sf.net SIP toolbox]&lt;br /&gt;
:* [http://animal.sf.net Animal]&lt;br /&gt;
|&lt;br /&gt;
:'''[[Lab Macambira#Projetos_e_Atividades|Frentes de Atuação]]'''&lt;br /&gt;
:*[[Lab_Macambira#Audiovisual|Audiovisual]]&lt;br /&gt;
:*[[Lab_Macambira#Web|Web]]&lt;br /&gt;
:'''[[:Categoria:Lab_Macambira|Outros Links]]'''&lt;br /&gt;
:*[[Lab_Macambira#Tabela_das_Nossas_Contribui.C3.A7.C3.B5es_a_Softwares_Livres_Externos|Contribuições a SL Externo]]&lt;br /&gt;
:*[[Manual do Novato]]&lt;br /&gt;
:*[[Git| Material de Git]]&lt;br /&gt;
:*[[Literatura_recomendada_pela_equipe| Literatura Recomendada]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#f67878|cor3=#ffffff|titulo=Mapeamento dos Pontos de SP que Trabalham com Cultura Digital|conteudo= [[Imagem:Map-sp.png|right|60px]]&lt;br /&gt;
[[Divisões do estado de São Paulo| Pontos de Cultura e divisões do Estado de São Paulo]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
    category=Pontos de Cultura&lt;br /&gt;
    count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#007FFF|cor3=#ffffff|titulo=Datas e trampos - Calendário|conteudo=[[Imagem:Calendar.png|right|60px]]&lt;br /&gt;
* [[Projetos Especiais 2010]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Role&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;40%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#FFCC33|cor3=#ffffff|titulo=Oficinas e eventos realizados|conteudo=[[Imagem:Editor-texto90px.png‎|right|60px]]&lt;br /&gt;
[[Oficinas e Eventos Realizados]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=oficinas&lt;br /&gt;
  count=6&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ffd450|cor3=#fffeb4|titulo=Sistemas GNU/Linux|conteudo=[[Imagem:Gnu-linux.png|right|70px]]&lt;br /&gt;
[[Arch Linux 2009 - Instalação|1 - Arch Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Usando Pacman| 1.1 - Usando Pacman]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[Debian Lenny - Instalação |2 - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Ubuntu 9.10 Karmic - Instalação |3 - Ubuntu 9.10 Karmic]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lubuntu|4 - Lubuntu]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Projeto Pandorga|5 - Pandorga]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puredyne|6 - Puredyne]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puppy Linux|7 - Puppy Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lista de Comandos Básicos GNU/Linux|8 - Lista de Comandos Básicos GNU/Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff9333|cor3=#ffd450|titulo=Sistema e Redes|conteudo=[[‎Imagem:Redes_icon.png‎|right|60px]]&lt;br /&gt;
1 [[ Instalação Wireless, ACER 5040 e LENOVO SL400, atheros e 5100 Intel 802.11n,802.11b e 802.11g]]&amp;lt;br&amp;gt; &lt;br /&gt;
2 [[Gerenciar Biblioteca]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3 [[Modelos de Rede]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.1 [[LTSP - Linux Terminal Server Project]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.2 [[LTSP4.2 no Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.3 [[Diskless]]&lt;br /&gt;
:1.4 [[Diskless no Debian Squeeze]]&lt;br /&gt;
:1.5 [[Diskless - Debian 6.0 Squeeze ]]&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff4800|cor3=#ff9333|titulo=Web|conteudo=[[‎Imagem:Webicon.png‎|right|60px]]&lt;br /&gt;
1 [[Instalação Mediawiki - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
2 [[Instalação Joomla]]&amp;lt;br&amp;gt;&lt;br /&gt;
3 [[Instalação ZenPhoto]]&amp;lt;br&amp;gt;&lt;br /&gt;
4 [[Instalando o PHL]]&amp;lt;br&amp;gt;&lt;br /&gt;
5 [[WordPress - Instalação]]&amp;lt;br&amp;gt;&lt;br /&gt;
6 [[Instalação - Semantic Scuttle]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; rowspan=&amp;quot;2&amp;quot; | &amp;lt;!--- CAIXA PRETA ----&amp;gt; &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: center; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Pontodecultura-logop.png|left|30px]] [[Sistema de informação de Pontos de Cultura]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Sistema de informação &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/4/45/Sistema_de_informa%C3%A7%C3%A3o_-_documenta%C3%A7%C3%A3o.pdf Documentação do Sistema de Informação dos Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Ferramenta de gerenciamento financeiro de Pontos de Cultura &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Versão Estável 1.0 - Wed Aug 18 11:33:56 BRT 2010 &lt;br /&gt;
&lt;br /&gt;
*[http://pc.nosdigitais.teia.org.br Ferramenta de gerenciamento finaceiro para Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
*[[Instalando o sistema Centro de prestação de contas]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#FF0000|cor2=#FF0000|cor3=#FFC1C1|titulo=Gráfico|conteudo=[[Imagem: Art-palette.png‎‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Grafico&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#6E8B3D|cor2=#00CD00|cor3=#CAFF70|titulo=Audio|conteudo=[[Imagem:Nota_musical01.png|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Audio&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#00008B|cor2=#435eff|cor3=#6dafff|titulo=Vídeo]|conteudo=[[Imagem:Countdown_film.jpg‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Video&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Novos Artigos|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=new&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Atualizados|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=update&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Quentes|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=hot&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Exceto onde especificado, o conteúdo deste site é licenciado sob a '''CC-By-NC-SA'''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- CAIXA PRETAAA &lt;br /&gt;
{{Caixa|cor1=#696969|cor2=#000000|cor3=#8B8989|titulo=&amp;lt;font color=ghostwhite&amp;gt;Sistema de informação dos Pontos de Cultura&amp;lt;/font&amp;gt;|conteudo=[[Imagem:Metareciclage.png|right|55px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless_com_Debian_Squeeze_-_Tiago_S._Moraes&amp;diff=5990</id>
		<title>Diskless com Debian Squeeze - Tiago S. Moraes</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless_com_Debian_Squeeze_-_Tiago_S._Moraes&amp;diff=5990"/>
		<updated>2012-06-20T23:09:15Z</updated>

		<summary type="html">&lt;p&gt;Teagom: Nova página: HELLO!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;HELLO!&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=5989</id>
		<title>Pontão Nós Digitais</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=5989"/>
		<updated>2012-06-20T23:08:59Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--- Caixa do Centro ----&amp;gt; &lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;70%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; color: white; font-size: 100%; text-align: center; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] Bem-vindo à '''Wiki do Pontão Nós Digitais'''!&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
----------&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(246, 136, 35); width: 100%; background-color: rgb(246, 193, 76); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(246, 193, 76); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(246, 136, 35); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] '''Oficinas Abertas'''&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=oficinasabertas&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(251, 177, 107); width: 100%; background-color: rgb(255, 246, 125); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(255, 246, 125); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(251, 177, 107); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] '''Projetos Especiais'''&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=projetosespeciais&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(255, 70, 66); width: 100%; background-color: rgb(255, 155, 90); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(255, 155, 90); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(255, 70, 66); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] [[Esporodifusores - rivendell]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=esporos&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
*[http://www.wiki.nosdigitais.teia.org.br/images/f/f2/Rog-1.3.0-1_pt-BR_24_07_2010_MERGED.pdf Manual sendo traduzido Rivendell] &lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;70%&amp;quot; | &lt;br /&gt;
&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(20, 200, 0); width: 100%; background-color: rgb(200, 255, 200); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(200, 255, 200); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(17, 142, 0); background-color: rgb(20, 200, 0); width:70%; font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:logo-icon-x35.png]] [[Lab Macambira]] &amp;amp;nbsp;::&amp;amp;nbsp; [[Equipe Lab Macambira|Equipe]] &amp;amp;nbsp;:: &amp;amp;nbsp;[[Fale conosco|Contato]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot; border=&amp;quot;0&amp;quot; style=&amp;quot;background-color: rgb(200, 255, 200);&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| &lt;br /&gt;
:'''[[:Categoria:Lab_Macambira|P&amp;amp;aacute;ginas Recentes]]'''&lt;br /&gt;
:&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
    category=Lab Macambira&lt;br /&gt;
    count=7&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
:'''[[Lab_Macambira#Grupos_de_trabalho|Grupos de Trabalho]]'''&lt;br /&gt;
:* [[GT-Web]]&lt;br /&gt;
:* [[GT-AA]]&lt;br /&gt;
:* [[GT-Audio]]&lt;br /&gt;
:* [[GT-pdf | GT-PDF]]&lt;br /&gt;
:* [[GT-Video]]&lt;br /&gt;
:* [[GT-Georeferenciamento | GT-Georeferencia]]&lt;br /&gt;
:* [[Lab_Macambira#Grupos_de_trabalho|Outros]]&lt;br /&gt;
|&lt;br /&gt;
:'''[[Software_Lab_Macambira|Software Criado]]'''&lt;br /&gt;
:* [[AA|(AA)]]&lt;br /&gt;
:* [https://github.com/teiacasadecriacao/agora-communs/wiki &amp;amp;Aacute;gora Communs]&lt;br /&gt;
:* [http://www.conferenciadedireitos.org.br/subprefeitura.php?id=21 Confer&amp;amp;ecirc;ncia Permanente]&lt;br /&gt;
:* [https://github.com/automata/phenny Macambot]&lt;br /&gt;
:* [http://pc.nosdigitais.teia.org.br/ CPC]&lt;br /&gt;
:* [http://siptoolbox.sf.net SIP toolbox]&lt;br /&gt;
:* [http://animal.sf.net Animal]&lt;br /&gt;
|&lt;br /&gt;
:'''[[Lab Macambira#Projetos_e_Atividades|Frentes de Atuação]]'''&lt;br /&gt;
:*[[Lab_Macambira#Audiovisual|Audiovisual]]&lt;br /&gt;
:*[[Lab_Macambira#Web|Web]]&lt;br /&gt;
:'''[[:Categoria:Lab_Macambira|Outros Links]]'''&lt;br /&gt;
:*[[Lab_Macambira#Tabela_das_Nossas_Contribui.C3.A7.C3.B5es_a_Softwares_Livres_Externos|Contribuições a SL Externo]]&lt;br /&gt;
:*[[Manual do Novato]]&lt;br /&gt;
:*[[Git| Material de Git]]&lt;br /&gt;
:*[[Literatura_recomendada_pela_equipe| Literatura Recomendada]]&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#f67878|cor3=#ffffff|titulo=Mapeamento dos Pontos de SP que Trabalham com Cultura Digital|conteudo= [[Imagem:Map-sp.png|right|60px]]&lt;br /&gt;
[[Divisões do estado de São Paulo| Pontos de Cultura e divisões do Estado de São Paulo]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
    category=Pontos de Cultura&lt;br /&gt;
    count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#007FFF|cor3=#ffffff|titulo=Datas e trampos - Calendário|conteudo=[[Imagem:Calendar.png|right|60px]]&lt;br /&gt;
* [[Projetos Especiais 2010]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Role&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;40%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#FFCC33|cor3=#ffffff|titulo=Oficinas e eventos realizados|conteudo=[[Imagem:Editor-texto90px.png‎|right|60px]]&lt;br /&gt;
[[Oficinas e Eventos Realizados]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=oficinas&lt;br /&gt;
  count=6&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ffd450|cor3=#fffeb4|titulo=Sistemas GNU/Linux|conteudo=[[Imagem:Gnu-linux.png|right|70px]]&lt;br /&gt;
[[Arch Linux 2009 - Instalação|1 - Arch Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Usando Pacman| 1.1 - Usando Pacman]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[Debian Lenny - Instalação |2 - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Ubuntu 9.10 Karmic - Instalação |3 - Ubuntu 9.10 Karmic]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lubuntu|4 - Lubuntu]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Projeto Pandorga|5 - Pandorga]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puredyne|6 - Puredyne]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puppy Linux|7 - Puppy Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lista de Comandos Básicos GNU/Linux|8 - Lista de Comandos Básicos GNU/Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff9333|cor3=#ffd450|titulo=Sistema e Redes|conteudo=[[‎Imagem:Redes_icon.png‎|right|60px]]&lt;br /&gt;
1 [[ Instalação Wireless, ACER 5040 e LENOVO SL400, atheros e 5100 Intel 802.11n,802.11b e 802.11g]]&amp;lt;br&amp;gt; &lt;br /&gt;
2 [[Gerenciar Biblioteca]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3 [[Modelos de Rede]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.1 [[LTSP - Linux Terminal Server Project]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.2 [[LTSP4.2 no Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.3 [[Diskless]]&lt;br /&gt;
:1.4 [[Diskless no Debian Squeeze]]&lt;br /&gt;
:1.5 [[Diskless com Debian Squeeze - Tiago S. Moraes ]]&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff4800|cor3=#ff9333|titulo=Web|conteudo=[[‎Imagem:Webicon.png‎|right|60px]]&lt;br /&gt;
1 [[Instalação Mediawiki - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
2 [[Instalação Joomla]]&amp;lt;br&amp;gt;&lt;br /&gt;
3 [[Instalação ZenPhoto]]&amp;lt;br&amp;gt;&lt;br /&gt;
4 [[Instalando o PHL]]&amp;lt;br&amp;gt;&lt;br /&gt;
5 [[WordPress - Instalação]]&amp;lt;br&amp;gt;&lt;br /&gt;
6 [[Instalação - Semantic Scuttle]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; rowspan=&amp;quot;2&amp;quot; | &amp;lt;!--- CAIXA PRETA ----&amp;gt; &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: center; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Pontodecultura-logop.png|left|30px]] [[Sistema de informação de Pontos de Cultura]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Sistema de informação &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/4/45/Sistema_de_informa%C3%A7%C3%A3o_-_documenta%C3%A7%C3%A3o.pdf Documentação do Sistema de Informação dos Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Ferramenta de gerenciamento financeiro de Pontos de Cultura &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Versão Estável 1.0 - Wed Aug 18 11:33:56 BRT 2010 &lt;br /&gt;
&lt;br /&gt;
*[http://pc.nosdigitais.teia.org.br Ferramenta de gerenciamento finaceiro para Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
*[[Instalando o sistema Centro de prestação de contas]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#FF0000|cor2=#FF0000|cor3=#FFC1C1|titulo=Gráfico|conteudo=[[Imagem: Art-palette.png‎‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Grafico&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#6E8B3D|cor2=#00CD00|cor3=#CAFF70|titulo=Audio|conteudo=[[Imagem:Nota_musical01.png|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Audio&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#00008B|cor2=#435eff|cor3=#6dafff|titulo=Vídeo]|conteudo=[[Imagem:Countdown_film.jpg‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Video&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Novos Artigos|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=new&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Atualizados|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=update&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Quentes|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=hot&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Exceto onde especificado, o conteúdo deste site é licenciado sob a '''CC-By-NC-SA'''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- CAIXA PRETAAA &lt;br /&gt;
{{Caixa|cor1=#696969|cor2=#000000|cor3=#8B8989|titulo=&amp;lt;font color=ghostwhite&amp;gt;Sistema de informação dos Pontos de Cultura&amp;lt;/font&amp;gt;|conteudo=[[Imagem:Metareciclage.png|right|55px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1299</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1299"/>
		<updated>2010-09-08T13:02:27Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Última versão estável || Wed Aug 11 10:00:56 BRT 2010&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; A Programação deste Software é resultado da Parceria entre o Pontão Nós Digitais, o Pontão de Gestão Compartilhada e o Pontão UCSC &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;Realização&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvido por Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuário e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-1.0.tar &lt;br /&gt;
 $tar xfv cpc-1.0.tar&lt;br /&gt;
 $cd money&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money'; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se for usar o sistema em produção, mais de uma organização e multiplos usuários, altere os parâmetros do comentário da #ALTERAR no arquivo settings.py, caso contrário não altere nada.&lt;br /&gt;
&lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manage.py syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Permissão de escrita para o anexo do documento. &lt;br /&gt;
&amp;lt;pre&amp;gt;$chmod 777 media/upload -R &amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manage.py runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
19/08/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1298</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1298"/>
		<updated>2010-09-08T12:57:37Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Última versão estável || Wed Aug 11 10:00:56 BRT 2010&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; A Programação deste Software é resultado da Parceria entre o Pontão Nós Digitais, o Pontão de Gestão Compartilhada e o Pontão UCSC &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;Realização&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvido por Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuário e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-1.0.tar &lt;br /&gt;
 $tar xfv cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money'; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se for usar o sistema em produção, mais de uma organização e multiplos usuários, altere os parâmetros do comentário da #ALTERAR no arquivo settings.py, caso contrário não altere nada.&lt;br /&gt;
&lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Permissão de escrita para o anexo do documento. &lt;br /&gt;
&amp;lt;pre&amp;gt;$chmod 777 media/upload -R &amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
19/08/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1297</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1297"/>
		<updated>2010-08-20T13:55:36Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Última versão estável || Wed Aug 11 10:00:56 BRT 2010&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; A Programação deste Software é resultado da Parceria entre o Pontão Nós Digitais, o Pontão de Gestão Compartilhada e o Pontão UCSC &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;Realização&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvido por Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuário e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-1.0.tar &lt;br /&gt;
 $tar xfv cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money'; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se for usar o sistema em produção, mais de uma organização e multiplos usuários, altere os parâmetros do comentário da #ALTERAR no arquivo settings.py, caso contrário não altere nada.&lt;br /&gt;
&lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Permissão de escrita para o anexo do documento. &lt;br /&gt;
&amp;lt;pre&amp;gt;$chmod 777 media/upload -R &amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
19/08/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1296</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1296"/>
		<updated>2010-08-20T13:54:00Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Última versão estável || Wed Aug 11 10:00:56 BRT 2010&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; A Programação deste Software é resultado da Parceria entre o Pontão Nós Digitais, o Pontão de Gestão Compartilhada e o Pontão UCSC &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;Realização&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvido por Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuário e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-1.0.tar &lt;br /&gt;
 $tar xfv cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money'; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se for usar o sistema em produção, mais de uma organização e multiplos usuários, altere os parâmetros do comentário da #ALTERAR no arquivo settings.py, caso contrário não altere nada.&lt;br /&gt;
&lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Permissão de escrita para o anexo do documento. &lt;br /&gt;
&amp;lt;pre&amp;gt;$chmod 777 upload -R &amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
19/08/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=1295</id>
		<title>Pontão Nós Digitais</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=1295"/>
		<updated>2010-08-19T13:29:34Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--- Caixa do Centro ----&amp;gt; &lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;70%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] Bem-vindo à '''Wiki do Pontão Nós Digitais'''!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:Esta Wiki tem por papel principal servir de espaço virtual para:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*Registro das atividades de mapeamento dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt; &lt;br /&gt;
:*Registro das atividades de formação dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt; &lt;br /&gt;
:*Documentação de soluções baseadas no conceito de Redes Livres.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:Esperamos que todos possam fazer uso consciente e enriquecedor desta que pretende ser, entre outras, uma ferramenta importante de troca entre usuários de Redes Livres.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 5px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(255, 98, 0); width: 100%; background-color: rgb(255, 248, 191); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(255, 248, 191); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(142, 17, 0); background-color: rgb(255, 98, 0); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Download.png|40px]] Donwload!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
*[http://ark4n.wordpress.com/python Python para desenvolvedores] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/e/e2/Ffmpeg_traduzido_rev_14736.pdf Manual traduzido ffmpeg] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/f/fe/Steven_Johnson_-_Cultura_da_interface.pdf Livro Cultura Além das Redes - por Steve Johnson] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/c/c3/Livroalemdasredes.pdf Além das Redes de Colaboração - org. Nelson De Luca Pretto e Sérgio Amadeu da Silveira]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#f67878|cor3=#ffffff|titulo=Mapeamento dos Pontos de SP que Trabalham com Cultura Digital|conteudo= [[Imagem:Map-sp.png|right|60px]]&lt;br /&gt;
[[Divisões do estado de São Paulo| Pontos de Cultura e divisões do Estado de São Paulo]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
    category=Pontos de Cultura&lt;br /&gt;
    count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#007FFF|cor3=#ffffff|titulo=Datas e trampos - Calendário|conteudo=[[Imagem:Calendar.png|right|60px]]&lt;br /&gt;
* [[Projetos Especiais 2010]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Role&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;40%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#FFCC33|cor3=#ffffff|titulo=Oficinas e eventos realizados|conteudo=[[Imagem:Editor-texto90px.png‎|right|60px]]&lt;br /&gt;
[[Oficinas e Eventos Realizados]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=oficinas&lt;br /&gt;
  count=6&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ffd450|cor3=#fffeb4|titulo=Sistemas GNU/Linux|conteudo=[[Imagem:Gnu-linux.png|right|70px]]&lt;br /&gt;
[[Arch Linux 2009 - Instalação|1 - Arch Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Usando Pacman| 1.1 - Usando Pacman]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[Debian Lenny - Instalação |2 - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Ubuntu 9.10 Karmic - Instalação |3 - Ubuntu 9.10 Karmic]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lubuntu|4 - Lubuntu]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Projeto Pandorga|5 - Pandorga]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puredyne|6 - Puredyne]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puppy Linux|7 - Puppy Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lista de Comandos Básicos GNU/Linux|8 - Lista de Comandos Básicos GNU/Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff9333|cor3=#ffd450|titulo=Sistema e Redes|conteudo=[[‎Imagem:Redes_icon.png‎|right|60px]]&lt;br /&gt;
1 [[ Instalação Wireless, ACER 5040 e LENOVO SL400, atheros e 5100 Intel 802.11n,802.11b e 802.11g]]&amp;lt;br&amp;gt; &lt;br /&gt;
2 [[Gerenciar Biblioteca]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3 [[Modelos de Rede]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.1 [[LTSP - Linux Terminal Server Project]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.2 [[LTSP4.2 no Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.3 [[Diskless]]&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff4800|cor3=#ff9333|titulo=Web|conteudo=[[‎Imagem:Webicon.png‎|right|60px]]&lt;br /&gt;
1 [[Instalação Mediawiki - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
2 [[Instalação Joomla]]&amp;lt;br&amp;gt;&lt;br /&gt;
3 [[Instalação ZenPhoto]]&amp;lt;br&amp;gt;&lt;br /&gt;
4 [[Instalando o PHL]]&amp;lt;br&amp;gt;&lt;br /&gt;
5 [[WordPress - Instalação]]&amp;lt;br&amp;gt;&lt;br /&gt;
6 [[Instalação - Semantic Scuttle]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; rowspan=&amp;quot;2&amp;quot; | &amp;lt;!--- CAIXA PRETA ----&amp;gt; &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: center; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Pontodecultura-logop.png|left|30px]] [[Sistema de informação de Pontos de Cultura]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Sistema de informação&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/4/45/Sistema_de_informa%C3%A7%C3%A3o_-_documenta%C3%A7%C3%A3o.pdf Documentação do Sistema de Informação dos Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Ferramenta de gerenciamento financeiro de Pontos de Cultura&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; |&lt;br /&gt;
Versão Estável 1.0 - Wed Aug 18 11:33:56 BRT 2010&lt;br /&gt;
*[http://pc.nosdigitais.teia.org.br Ferramenta de gerenciamento finaceiro para Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; |&lt;br /&gt;
*[[Instalando o sistema Centro de prestação de contas]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#FF0000|cor2=#FF0000|cor3=#FFC1C1|titulo=Gráfico|conteudo=[[Imagem: Art-palette.png‎‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Grafico&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#6E8B3D|cor2=#00CD00|cor3=#CAFF70|titulo=Audio|conteudo=[[Imagem:Nota_musical01.png|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Audio&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;  &amp;lt;br /&amp;gt; }} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#00008B|cor2=#435eff|cor3=#6dafff|titulo=Vídeo|conteudo=[[Imagem:Countdown_film.jpg‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Video&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Novos Artigos|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=new&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Atualizados|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=update&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Quentes|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=hot&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;!-- CAIXA PRETAAA &lt;br /&gt;
{{Caixa|cor1=#696969|cor2=#000000|cor3=#8B8989|titulo=&amp;lt;font color=ghostwhite&amp;gt;Sistema de informação dos Pontos de Cultura&amp;lt;/font&amp;gt;|conteudo=[[Imagem:Metareciclage.png|right|55px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=1294</id>
		<title>Pontão Nós Digitais</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=1294"/>
		<updated>2010-08-19T13:27:26Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--- Caixa do Centro ----&amp;gt; &lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;70%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] Bem-vindo à '''Wiki do Pontão Nós Digitais'''!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:Esta Wiki tem por papel principal servir de espaço virtual para:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*Registro das atividades de mapeamento dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt; &lt;br /&gt;
:*Registro das atividades de formação dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt; &lt;br /&gt;
:*Documentação de soluções baseadas no conceito de Redes Livres.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:Esperamos que todos possam fazer uso consciente e enriquecedor desta que pretende ser, entre outras, uma ferramenta importante de troca entre usuários de Redes Livres.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 5px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(255, 98, 0); width: 100%; background-color: rgb(255, 248, 191); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(255, 248, 191); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(142, 17, 0); background-color: rgb(255, 98, 0); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Download.png|40px]] Donwload!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
*[http://ark4n.wordpress.com/python Python para desenvolvedores] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/e/e2/Ffmpeg_traduzido_rev_14736.pdf Manual traduzido ffmpeg] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/f/fe/Steven_Johnson_-_Cultura_da_interface.pdf Livro Cultura Além das Redes - por Steve Johnson] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/c/c3/Livroalemdasredes.pdf Além das Redes de Colaboração - org. Nelson De Luca Pretto e Sérgio Amadeu da Silveira]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#f67878|cor3=#ffffff|titulo=Mapeamento dos Pontos de SP que Trabalham com Cultura Digital|conteudo= [[Imagem:Map-sp.png|right|60px]]&lt;br /&gt;
[[Divisões do estado de São Paulo| Pontos de Cultura e divisões do Estado de São Paulo]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
    category=Pontos de Cultura&lt;br /&gt;
    count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#007FFF|cor3=#ffffff|titulo=Datas e trampos - Calendário|conteudo=[[Imagem:Calendar.png|right|60px]]&lt;br /&gt;
* [[Projetos Especiais 2010]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Role&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;40%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#FFCC33|cor3=#ffffff|titulo=Oficinas e eventos realizados|conteudo=[[Imagem:Editor-texto90px.png‎|right|60px]]&lt;br /&gt;
[[Oficinas e Eventos Realizados]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=oficinas&lt;br /&gt;
  count=6&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ffd450|cor3=#fffeb4|titulo=Sistemas GNU/Linux|conteudo=[[Imagem:Gnu-linux.png|right|70px]]&lt;br /&gt;
[[Arch Linux 2009 - Instalação|1 - Arch Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Usando Pacman| 1.1 - Usando Pacman]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[Debian Lenny - Instalação |2 - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Ubuntu 9.10 Karmic - Instalação |3 - Ubuntu 9.10 Karmic]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lubuntu|4 - Lubuntu]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Projeto Pandorga|5 - Pandorga]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puredyne|6 - Puredyne]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puppy Linux|7 - Puppy Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lista de Comandos Básicos GNU/Linux|8 - Lista de Comandos Básicos GNU/Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff9333|cor3=#ffd450|titulo=Sistema e Redes|conteudo=[[‎Imagem:Redes_icon.png‎|right|60px]]&lt;br /&gt;
1 [[ Instalação Wireless, ACER 5040 e LENOVO SL400, atheros e 5100 Intel 802.11n,802.11b e 802.11g]]&amp;lt;br&amp;gt; &lt;br /&gt;
2 [[Gerenciar Biblioteca]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3 [[Modelos de Rede]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.1 [[LTSP - Linux Terminal Server Project]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.2 [[LTSP4.2 no Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.3 [[Diskless]]&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff4800|cor3=#ff9333|titulo=Web|conteudo=[[‎Imagem:Webicon.png‎|right|60px]]&lt;br /&gt;
1 [[Instalação Mediawiki - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
2 [[Instalação Joomla]]&amp;lt;br&amp;gt;&lt;br /&gt;
3 [[Instalação ZenPhoto]]&amp;lt;br&amp;gt;&lt;br /&gt;
4 [[Instalando o PHL]]&amp;lt;br&amp;gt;&lt;br /&gt;
5 [[WordPress - Instalação]]&amp;lt;br&amp;gt;&lt;br /&gt;
6 [[Instalação - Semantic Scuttle]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; rowspan=&amp;quot;2&amp;quot; | &amp;lt;!--- CAIXA PRETA ----&amp;gt; &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: center; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Pontodecultura-logop.png|left|30px]] [[Sistema de informação de Pontos de Cultura]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Sistema de informação&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/4/45/Sistema_de_informa%C3%A7%C3%A3o_-_documenta%C3%A7%C3%A3o.pdf Documentação do Sistema de Informação dos Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Ferramenta de gerenciamento financeiro de Pontos de Cultura&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; |&lt;br /&gt;
Versão Beta - 21.07.2010 &lt;br /&gt;
*[http://pc.nosdigitais.teia.org.br Ferramenta de gerenciamento finaceiro para Pontos de Cultura - Versão Estável 1.0 - 10-08-2010]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; |&lt;br /&gt;
*[[Instalando o sistema Centro de prestação de contas]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#FF0000|cor2=#FF0000|cor3=#FFC1C1|titulo=Gráfico|conteudo=[[Imagem: Art-palette.png‎‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Grafico&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#6E8B3D|cor2=#00CD00|cor3=#CAFF70|titulo=Audio|conteudo=[[Imagem:Nota_musical01.png|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Audio&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;  &amp;lt;br /&amp;gt; }} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#00008B|cor2=#435eff|cor3=#6dafff|titulo=Vídeo|conteudo=[[Imagem:Countdown_film.jpg‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Video&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Novos Artigos|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=new&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Atualizados|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=update&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Quentes|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=hot&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;!-- CAIXA PRETAAA &lt;br /&gt;
{{Caixa|cor1=#696969|cor2=#000000|cor3=#8B8989|titulo=&amp;lt;font color=ghostwhite&amp;gt;Sistema de informação dos Pontos de Cultura&amp;lt;/font&amp;gt;|conteudo=[[Imagem:Metareciclage.png|right|55px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1293</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1293"/>
		<updated>2010-08-19T13:26:08Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Última versão estável || Wed Aug 11 10:00:56 BRT 2010&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; A Programação deste Software é resultado da Parceria entre o Pontão Nós Digitais, o Pontão de Gestão Compartilhada e o Pontão UCSC &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;Realização&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvido por Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuário e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-1.0.tar &lt;br /&gt;
 $tar xfv cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money'; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se for usar o sistema em produção, mais de uma organização e multiplos usuários, altere os parâmetros do comentário da #ALTERAR no arquivo settings.py, caso contrário não altere nada.&lt;br /&gt;
&lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
19/08/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1292</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1292"/>
		<updated>2010-08-19T13:23:15Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Última versão estável || Wed Aug 18 11:33:56 BRT 2010&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; A Programação deste Software é resultado da Parceria entre o Pontão Nós Digitais, o Pontão de Gestão Compartilhada e o Pontão UCSC &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;Realização&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvido por Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-1.0.tar &lt;br /&gt;
 $tar xfv cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money' superuser; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se for usar o sistema em produção, mais de uma organização e multiplos usuários, altere os parâmetros do comentário da #ALTERAR no arquivo settings.py, caso contrário não altere nada.&lt;br /&gt;
&lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
19/08/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1291</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1291"/>
		<updated>2010-08-19T13:14:48Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta &lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; A Programação deste Software é resultado da Parceria entre o Pontão Nós Digitais, o Pontão de Gestão Compartilhada e o Pontão UCSC &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;br&amp;gt;Realização&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvido por Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-1.0.tar &lt;br /&gt;
 $tar xfv cpc-1.0.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money' superuser; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Se for usar o sistema em produção, mais de uma organização e multiplos usuários, altere os parâmetros do comentário da #ALTERAR no arquivo settings.py, caso contrário não altere nada.&lt;br /&gt;
&lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
19/08/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1286</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1286"/>
		<updated>2010-07-22T13:52:38Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta &lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Realização Nós Digitais &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvimento Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
 $tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money' superuser; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o arquivo settings.py e configure as linhas necessárias e seu ambiente:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;linha&lt;br /&gt;
7 - ADMINS do sistema&lt;br /&gt;
13 - BANCO DE DADOS&lt;br /&gt;
59 - NOME&amp;amp;nbsp;DO SERVIDOR NA INTERNET&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Configuração para notifição para perda da senha de acesso.&amp;lt;br&amp;gt;Se não for usar esse recurso, passe para o próximo passo.&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;settings.py&lt;br /&gt;
105 - smtp - server&lt;br /&gt;
&lt;br /&gt;
inic/views.py&lt;br /&gt;
    linha 20  - from_mail&lt;br /&gt;
    linha 144 - url - http://&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
21/07/2010 &lt;br /&gt;
&lt;br /&gt;
Autor:&amp;amp;nbsp;Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1285</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1285"/>
		<updated>2010-07-22T13:49:02Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta &lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Realização Nós Digitais &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvimento Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 http://djangoproject.com &lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
 $tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money' superuser; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o arquivo settings.py e configure as linhas necessárias e seu ambiente:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;linha&lt;br /&gt;
7 - ADMINS do sistema&lt;br /&gt;
13 - BANCO DE DADOS&lt;br /&gt;
59 - NOME&amp;amp;nbsp;DO SERVIDOR NA INTERNET&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Configuração para notifição para perda da senha de acesso.&amp;lt;br&amp;gt;Se não for usar esse recurso, passe para o próximo passo.&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;settings.py&lt;br /&gt;
105 - smtp - server&lt;br /&gt;
&lt;br /&gt;
inic/views.py&lt;br /&gt;
    linha 20  - from_mail&lt;br /&gt;
    linha 144 - url - http://&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb &lt;br /&gt;
Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&lt;br /&gt;
Esse usuário terá acesso a todo o sistema pela URL http://127.0.0.1:8000/admin/&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
===== 21/07/2010&amp;amp;lt;br&amp;amp;gt;  =====&lt;br /&gt;
&lt;br /&gt;
===== Autor:&amp;amp;nbsp;Tiago de Souza Moraes =====&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1284</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1284"/>
		<updated>2010-07-22T13:44:17Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta &lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Realização Nós Digitais &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvimento Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://djangoproject.com sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
 $tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money' superuser; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o arquivo settings.py e configure as linhas necessárias e seu ambiente:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;linha&lt;br /&gt;
7 - ADMINS do sistema&lt;br /&gt;
13 - BANCO DE DADOS&lt;br /&gt;
59 - SERVIDOR NA INTERNET&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Configuração para notifição para perda da senha de acesso.&amp;lt;br&amp;gt;Se não for usar esse recurso, passe para o próximo passo.&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;settings.pay105 - smtp - server&lt;br /&gt;
&lt;br /&gt;
inic/views.py&lt;br /&gt;
    linha 20  - from_mail&lt;br /&gt;
    linha 144 - url - http://&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
21/07/2010&amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Autor: &amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
&lt;br /&gt;
Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1283</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1283"/>
		<updated>2010-07-22T13:43:19Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta &lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Realização Nós Digitais &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvimento Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://djangoproject.com sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
 $tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money' superuser; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o arquivo settings.py e configure as linhas necessárias e seu ambiente:&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;linha&lt;br /&gt;
7 - ADMINS do sistema&lt;br /&gt;
13 - BANCO DE DADOS&lt;br /&gt;
59 - SERVIDOR NA INTERNET&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Configuração para notifição para perda da senha de acesso.&amp;lt;br&amp;gt;Se não for usar esse recurso, passe para o próximo passo.&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;pre&amp;gt;settings.pay105 - smtp - server&lt;br /&gt;
&lt;br /&gt;
inic/views.py&lt;br /&gt;
    linha 20  - from_mail&lt;br /&gt;
    linha 144 - url - http://&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Criando as tabelas &lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:)&amp;lt;/pre&amp;gt; &lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt; &lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt; &lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
Autor: &amp;amp;lt;br&amp;amp;gt; &lt;br /&gt;
&lt;br /&gt;
Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1282</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1282"/>
		<updated>2010-07-22T13:40:15Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta &lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Realização Nós Digitais &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvimento Futuria Serviços de Informática &lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C''' &lt;br /&gt;
*Download P.C.P&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
*python &amp;amp;gt;= 2.6 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
*Django &amp;amp;gt;= 1.2.1 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://djangoproject.com sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
*Postgresql &amp;amp;gt;= 8.3 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
*Python-psycopg2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
*apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&amp;lt;br&amp;gt; &lt;br /&gt;
*&amp;lt;br&amp;gt; &lt;br /&gt;
*Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''Instalando:''' &lt;br /&gt;
&lt;br /&gt;
 $cd Desktop&lt;br /&gt;
 $mkdir cpc&lt;br /&gt;
 $cd cpc&lt;br /&gt;
&lt;br /&gt;
 Download do sistema:&lt;br /&gt;
 &lt;br /&gt;
 $wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
 $tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuário e banco de dados PostgreSQL &lt;br /&gt;
&amp;lt;pre&amp;gt;$sudo su postgres &lt;br /&gt;
$psql &lt;br /&gt;
=#create user money WITH PASSWORD 'money' superuser; &lt;br /&gt;
=#create database money owner money; &lt;br /&gt;
=#\q $exit &amp;lt;/pre&amp;gt; &lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp; Abra o arquivo settings.py e configure as linhas necessárias e seu ambiente:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;linha&lt;br /&gt;
7 - ADMINS do sistema&lt;br /&gt;
13 - BANCO DE DADOS&lt;br /&gt;
59 - SERVIDOR NA INTERNET&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; Configuração para notifição para perda da senha de acesso.&amp;lt;br&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; Se não for usar esse recurso, passe para o próximo passo.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;settings.pay105 - smtp - server&lt;br /&gt;
&lt;br /&gt;
inic/views.py&lt;br /&gt;
    linha 20  - from_mail&lt;br /&gt;
    linha 144 - url - http://&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
Criando as tabelas&lt;br /&gt;
&amp;lt;pre&amp;gt;$./manager syncdb Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não! :)&amp;lt;/pre&amp;gt;&lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. &lt;br /&gt;
&amp;lt;pre&amp;gt;$./install.py&amp;lt;/pre&amp;gt;&lt;br /&gt;
Rodando o aplicativo localmente: &lt;br /&gt;
&amp;lt;pre&amp;gt;./manager runserver&amp;lt;/pre&amp;gt;&lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Autor: &amp;amp;lt;br&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1281</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1281"/>
		<updated>2010-07-22T13:25:55Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta &lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Este programa é um software livre; você pode redistribui-lo e/ou modifica-lo dentro dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software Livre (FSF); na versão 2 da Licença, ou (na sua opnião) qualquer versão. &amp;lt;br&amp;gt; Este programa é distribuido na esperança que possa ser util, mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes. &amp;lt;br&amp;gt; -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. &amp;lt;br&amp;gt; Realização Nós Digitais &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
http://www.nosdigitais.teia.org.br &lt;br /&gt;
&lt;br /&gt;
Deselvolvimento Futuria Serviços de Informática&lt;br /&gt;
&lt;br /&gt;
http://www.futuria.com.br &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''Requisitos da máquina/servidor C.P.C'''&lt;br /&gt;
&lt;br /&gt;
http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
python 2.6 sudo apt-get install python2.6 &lt;br /&gt;
&lt;br /&gt;
django 1.2.1 http://djangoproject.com sudo apt-get install python-django &lt;br /&gt;
&lt;br /&gt;
postgresql 8.3 sudo apt-get install postgresql-8.3 &lt;br /&gt;
&lt;br /&gt;
python-psycopg2 sudo apt-get install python-psycopg2 &lt;br /&gt;
&lt;br /&gt;
apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários) http://www.aprendendodjango.com/preparando-um-servidor-com-linux/ &lt;br /&gt;
&lt;br /&gt;
Endereço de E-mail Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema. usuario@dominio senha smtp server &lt;br /&gt;
&lt;br /&gt;
Instalando: &lt;br /&gt;
&lt;br /&gt;
    cd Desktop&lt;br /&gt;
    mkdir cpc&lt;br /&gt;
    cd cpc&lt;br /&gt;
&lt;br /&gt;
    Download do sistema:&lt;br /&gt;
&lt;br /&gt;
wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar &lt;br /&gt;
&lt;br /&gt;
    tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
Criando usuario e banco de dados PostgreSQL $sudo su postgres $psql =#create user money WITH PASSWORD 'money' superuser; =#create database money owner money; =#\q $exit &lt;br /&gt;
&lt;br /&gt;
    Abra o arquivo e configure as linhas necessárias e seu ambiente:&lt;br /&gt;
   		settings.py&lt;br /&gt;
&lt;br /&gt;
                linha&lt;br /&gt;
                 7 - ADMINS do sistema&lt;br /&gt;
                13 - BANCO DE DADOS&lt;br /&gt;
                59 - SERVIDOR NA INTERNET&lt;br /&gt;
&lt;br /&gt;
        Configuração para notifição para perda da senha de acesso.&lt;br /&gt;
        Se não for usar esse recurso, passe para o próximo passo.&lt;br /&gt;
                105 - smtp - server&lt;br /&gt;
                inic/views.py&lt;br /&gt;
                        linha 20  - from_mail &lt;br /&gt;
                        linha 144 - url - http:// &lt;br /&gt;
&lt;br /&gt;
$./manager syncdb Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não!&amp;amp;nbsp;:) &lt;br /&gt;
&lt;br /&gt;
Instalando grupos, acessos, pessoas e outros. $./install.py &lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente: ./manager runserver &lt;br /&gt;
&lt;br /&gt;
Abra o seu navegador no seguinte endereço: &lt;br /&gt;
&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache: &lt;br /&gt;
&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1280</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1280"/>
		<updated>2010-07-22T13:23:07Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
Este programa é um software livre; você pode redistribui-lo e/ou &lt;br /&gt;
modifica-lo dentro dos termos da Licença Pública Geral GNU como &lt;br /&gt;
publicada pela Fundação do Software Livre (FSF); na versão 2 da &lt;br /&gt;
Licença, ou (na sua opnião) qualquer versão.&lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser  util, &lt;br /&gt;
mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer&lt;br /&gt;
MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a&lt;br /&gt;
Licença Pública Geral GNU para maiores detalhes.&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Realização &lt;br /&gt;
	Nós Digitais / http://www.nosdigitais.teia.org.br&lt;br /&gt;
&lt;br /&gt;
Deselvolvimento	&lt;br /&gt;
	Futuria Serviços de Informática / http://www.futuria.com.br&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Requisitos da máquina/servidor&lt;br /&gt;
	C.P.C&lt;br /&gt;
	http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	python 2.6&lt;br /&gt;
	sudo apt-get install python2.6&lt;br /&gt;
&lt;br /&gt;
	django 1.2.1&lt;br /&gt;
	http://djangoproject.com&lt;br /&gt;
	sudo apt-get install python-django&lt;br /&gt;
&lt;br /&gt;
	postgresql 8.3 &lt;br /&gt;
	sudo apt-get install postgresql-8.3&lt;br /&gt;
	&lt;br /&gt;
	python-psycopg2&lt;br /&gt;
	sudo apt-get install python-psycopg2&lt;br /&gt;
&lt;br /&gt;
	apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários)&lt;br /&gt;
	http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
	&lt;br /&gt;
	Endereço de E-mail	&lt;br /&gt;
	Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
	usuario@dominio &lt;br /&gt;
	senha&lt;br /&gt;
	smtp server&lt;br /&gt;
&lt;br /&gt;
Instalando:&lt;br /&gt;
&lt;br /&gt;
    cd Desktop&lt;br /&gt;
    mkdir cpc&lt;br /&gt;
    cd cpc&lt;br /&gt;
&lt;br /&gt;
    Download do sistema:&lt;br /&gt;
	wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
    tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	Criando usuario e banco de dados PostgreSQL&lt;br /&gt;
	$sudo su postgres&lt;br /&gt;
	$psql&lt;br /&gt;
	=#create user money WITH PASSWORD 'money' superuser;&lt;br /&gt;
	=#create database money owner money;&lt;br /&gt;
	=#\q&lt;br /&gt;
	$exit&lt;br /&gt;
&lt;br /&gt;
    Abra o arquivo e configure as linhas necessárias e seu ambiente:&lt;br /&gt;
   		settings.py&lt;br /&gt;
&lt;br /&gt;
                linha&lt;br /&gt;
                 7 - ADMINS do sistema&lt;br /&gt;
                13 - BANCO DE DADOS&lt;br /&gt;
                59 - SERVIDOR NA INTERNET&lt;br /&gt;
&lt;br /&gt;
        Configuração para notifição para perda da senha de acesso.&lt;br /&gt;
        Se não for usar esse recurso, passe para o próximo passo.&lt;br /&gt;
                105 - smtp - server&lt;br /&gt;
                inic/views.py&lt;br /&gt;
                        linha 20  - from_mail &lt;br /&gt;
                        linha 144 - url - http:// &lt;br /&gt;
&lt;br /&gt;
	$./manager syncdb&lt;br /&gt;
		Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não! :)&lt;br /&gt;
&lt;br /&gt;
	Instalando grupos, acessos, pessoas e outros.&lt;br /&gt;
	$./install.py&lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente:&lt;br /&gt;
	./manager runserver&lt;br /&gt;
&lt;br /&gt;
Abra o seu navegador no seguinte endereço:&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache:&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1279</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1279"/>
		<updated>2010-07-22T13:20:23Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Este programa é um software livre; você pode redistribui-lo e/ou &lt;br /&gt;
modifica-lo dentro dos termos da Licença Pública Geral GNU como &lt;br /&gt;
publicada pela Fundação do Software Livre (FSF); na versão 2 da &lt;br /&gt;
Licença, ou (na sua opnião) qualquer versão.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Este programa é distribuido na esperança que possa ser  util, &lt;br /&gt;
mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer&lt;br /&gt;
MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a&lt;br /&gt;
Licença Pública Geral GNU para maiores detalhes.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Realização &lt;br /&gt;
	Nós Digitais / http://www.nosdigitais.teia.org.br&lt;br /&gt;
&lt;br /&gt;
Deselvolvimento	&lt;br /&gt;
	Futuria Serviços de Informática / http://www.futuria.com.br&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Requisitos da máquina/servidor&lt;br /&gt;
	C.P.C&lt;br /&gt;
	http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	python 2.6&lt;br /&gt;
	sudo apt-get install python2.6&lt;br /&gt;
&lt;br /&gt;
	django 1.2.1&lt;br /&gt;
	http://djangoproject.com&lt;br /&gt;
	sudo apt-get install python-django&lt;br /&gt;
&lt;br /&gt;
	postgresql 8.3 &lt;br /&gt;
	sudo apt-get install postgresql-8.3&lt;br /&gt;
	&lt;br /&gt;
	python-psycopg2&lt;br /&gt;
	sudo apt-get install python-psycopg2&lt;br /&gt;
&lt;br /&gt;
	apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários)&lt;br /&gt;
	http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
	&lt;br /&gt;
	Endereço de E-mail	&lt;br /&gt;
	Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
	usuario@dominio &lt;br /&gt;
	senha&lt;br /&gt;
	smtp server&lt;br /&gt;
&lt;br /&gt;
Instalando:&lt;br /&gt;
&lt;br /&gt;
    cd Desktop&lt;br /&gt;
    mkdir cpc&lt;br /&gt;
    cd cpc&lt;br /&gt;
&lt;br /&gt;
    Download do sistema:&lt;br /&gt;
	wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
    tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	Criando usuario e banco de dados PostgreSQL&lt;br /&gt;
	$sudo su postgres&lt;br /&gt;
	$psql&lt;br /&gt;
	=#create user money WITH PASSWORD 'money' superuser;&lt;br /&gt;
	=#create database money owner money;&lt;br /&gt;
	=#\q&lt;br /&gt;
	$exit&lt;br /&gt;
&lt;br /&gt;
    Abra o arquivo e configure as linhas necessárias e seu ambiente:&lt;br /&gt;
   		settings.py&lt;br /&gt;
&lt;br /&gt;
                linha&lt;br /&gt;
                 7 - ADMINS do sistema&lt;br /&gt;
                13 - BANCO DE DADOS&lt;br /&gt;
                59 - SERVIDOR NA INTERNET&lt;br /&gt;
&lt;br /&gt;
        Configuração para notifição para perda da senha de acesso.&lt;br /&gt;
        Se não for usar esse recurso, passe para o próximo passo.&lt;br /&gt;
                105 - smtp - server&lt;br /&gt;
                inic/views.py&lt;br /&gt;
                        linha 20  - from_mail &lt;br /&gt;
                        linha 144 - url - http:// &lt;br /&gt;
&lt;br /&gt;
	$./manager syncdb&lt;br /&gt;
		Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não! :)&lt;br /&gt;
&lt;br /&gt;
	Instalando grupos, acessos, pessoas e outros.&lt;br /&gt;
	$./install.py&lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente:&lt;br /&gt;
	./manager runserver&lt;br /&gt;
&lt;br /&gt;
Abra o seu navegador no seguinte endereço:&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache:&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1278</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1278"/>
		<updated>2010-07-22T13:19:39Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;nowiki&amp;gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Este programa é um software livre; você pode redistribui-lo e/ou &lt;br /&gt;
modifica-lo dentro dos termos da Licença Pública Geral GNU como &lt;br /&gt;
publicada pela Fundação do Software Livre (FSF); na versão 2 da &lt;br /&gt;
Licença, ou (na sua opnião) qualquer versão.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Este programa é distribuido na esperança que possa ser  util, &lt;br /&gt;
mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer&lt;br /&gt;
MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a&lt;br /&gt;
Licença Pública Geral GNU para maiores detalhes.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Realização &lt;br /&gt;
	Nós Digitais / http://www.nosdigitais.teia.org.br&lt;br /&gt;
&lt;br /&gt;
Deselvolvimento	&lt;br /&gt;
	Futuria Serviços de Informática / http://www.futuria.com.br&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Requisitos da máquina/servidor&lt;br /&gt;
	C.P.C&lt;br /&gt;
	http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	python 2.6&lt;br /&gt;
	sudo apt-get install python2.6&lt;br /&gt;
&lt;br /&gt;
	django 1.2.1&lt;br /&gt;
	http://djangoproject.com&lt;br /&gt;
	sudo apt-get install python-django&lt;br /&gt;
&lt;br /&gt;
	postgresql 8.3 &lt;br /&gt;
	sudo apt-get install postgresql-8.3&lt;br /&gt;
	&lt;br /&gt;
	python-psycopg2&lt;br /&gt;
	sudo apt-get install python-psycopg2&lt;br /&gt;
&lt;br /&gt;
	apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários)&lt;br /&gt;
	http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
	&lt;br /&gt;
	Endereço de E-mail	&lt;br /&gt;
	Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
	usuario@dominio &lt;br /&gt;
	senha&lt;br /&gt;
	smtp server&lt;br /&gt;
&lt;br /&gt;
Instalando:&lt;br /&gt;
&lt;br /&gt;
    cd Desktop&lt;br /&gt;
    mkdir cpc&lt;br /&gt;
    cd cpc&lt;br /&gt;
&lt;br /&gt;
    Download do sistema:&lt;br /&gt;
	wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
    tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	Criando usuario e banco de dados PostgreSQL&lt;br /&gt;
	$sudo su postgres&lt;br /&gt;
	$psql&lt;br /&gt;
	=#create user money WITH PASSWORD 'money' superuser;&lt;br /&gt;
	=#create database money owner money;&lt;br /&gt;
	=#\q&lt;br /&gt;
	$exit&lt;br /&gt;
&lt;br /&gt;
    Abra o arquivo e configure as linhas necessárias e seu ambiente:&lt;br /&gt;
   		settings.py&lt;br /&gt;
&lt;br /&gt;
                linha&lt;br /&gt;
                 7 - ADMINS do sistema&lt;br /&gt;
                13 - BANCO DE DADOS&lt;br /&gt;
                59 - SERVIDOR NA INTERNET&lt;br /&gt;
&lt;br /&gt;
        Configuração para notifição para perda da senha de acesso.&lt;br /&gt;
        Se não for usar esse recurso, passe para o próximo passo.&lt;br /&gt;
                105 - smtp - server&lt;br /&gt;
                inic/views.py&lt;br /&gt;
                        linha 20  - from_mail &lt;br /&gt;
                        linha 144 - url - http:// &lt;br /&gt;
&lt;br /&gt;
	$./manager syncdb&lt;br /&gt;
		Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não! :)&lt;br /&gt;
&lt;br /&gt;
	Instalando grupos, acessos, pessoas e outros.&lt;br /&gt;
	$./install.py&lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente:&lt;br /&gt;
	./manager runserver&lt;br /&gt;
&lt;br /&gt;
Abra o seu navegador no seguinte endereço:&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache:&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1277</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1277"/>
		<updated>2010-07-22T13:18:51Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;nowiki&amp;gt;CENTRO DE PRESTAÇÃO DE CONTAS - Beta&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&lt;br /&gt;
Este programa é um software livre; você pode redistribui-lo e/ou &lt;br /&gt;
modifica-lo dentro dos termos da Licença Pública Geral GNU como &lt;br /&gt;
publicada pela Fundação do Software Livre (FSF); na versão 2 da &lt;br /&gt;
Licença, ou (na sua opnião) qualquer versão.&lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser  util, &lt;br /&gt;
mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer&lt;br /&gt;
MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a&lt;br /&gt;
Licença Pública Geral GNU para maiores detalhes.&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&lt;br /&gt;
Realização &lt;br /&gt;
	Nós Digitais / http://www.nosdigitais.teia.org.br&lt;br /&gt;
&lt;br /&gt;
Deselvolvimento	&lt;br /&gt;
	Futuria Serviços de Informática / http://www.futuria.com.br&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Requisitos da máquina/servidor&lt;br /&gt;
	C.P.C&lt;br /&gt;
	http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	python 2.6&lt;br /&gt;
	sudo apt-get install python2.6&lt;br /&gt;
&lt;br /&gt;
	django 1.2.1&lt;br /&gt;
	http://djangoproject.com&lt;br /&gt;
	sudo apt-get install python-django&lt;br /&gt;
&lt;br /&gt;
	postgresql 8.3 &lt;br /&gt;
	sudo apt-get install postgresql-8.3&lt;br /&gt;
	&lt;br /&gt;
	python-psycopg2&lt;br /&gt;
	sudo apt-get install python-psycopg2&lt;br /&gt;
&lt;br /&gt;
	apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários)&lt;br /&gt;
	http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
	&lt;br /&gt;
	Endereço de E-mail	&lt;br /&gt;
	Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
	usuario@dominio &lt;br /&gt;
	senha&lt;br /&gt;
	smtp server&lt;br /&gt;
&lt;br /&gt;
Instalando:&lt;br /&gt;
&lt;br /&gt;
    cd Desktop&lt;br /&gt;
    mkdir cpc&lt;br /&gt;
    cd cpc&lt;br /&gt;
&lt;br /&gt;
    Download do sistema:&lt;br /&gt;
	wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
    tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	Criando usuario e banco de dados PostgreSQL&lt;br /&gt;
	$sudo su postgres&lt;br /&gt;
	$psql&lt;br /&gt;
	=#create user money WITH PASSWORD 'money' superuser;&lt;br /&gt;
	=#create database money owner money;&lt;br /&gt;
	=#\q&lt;br /&gt;
	$exit&lt;br /&gt;
&lt;br /&gt;
    Abra o arquivo e configure as linhas necessárias e seu ambiente:&lt;br /&gt;
   		settings.py&lt;br /&gt;
&lt;br /&gt;
                linha&lt;br /&gt;
                 7 - ADMINS do sistema&lt;br /&gt;
                13 - BANCO DE DADOS&lt;br /&gt;
                59 - SERVIDOR NA INTERNET&lt;br /&gt;
&lt;br /&gt;
        Configuração para notifição para perda da senha de acesso.&lt;br /&gt;
        Se não for usar esse recurso, passe para o próximo passo.&lt;br /&gt;
                105 - smtp - server&lt;br /&gt;
                inic/views.py&lt;br /&gt;
                        linha 20  - from_mail &lt;br /&gt;
                        linha 144 - url - http:// &lt;br /&gt;
&lt;br /&gt;
	$./manager syncdb&lt;br /&gt;
		Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não! :)&lt;br /&gt;
&lt;br /&gt;
	Instalando grupos, acessos, pessoas e outros.&lt;br /&gt;
	$./install.py&lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente:&lt;br /&gt;
	./manager runserver&lt;br /&gt;
&lt;br /&gt;
Abra o seu navegador no seguinte endereço:&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache:&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1276</id>
		<title>Instalando o sistema Centro de prestação de contas</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_sistema_Centro_de_presta%C3%A7%C3%A3o_de_contas&amp;diff=1276"/>
		<updated>2010-07-22T13:14:57Z</updated>

		<summary type="html">&lt;p&gt;Teagom: Nova página: #CENTRO DE PRESTAÇÃO DE CONTAS - Beta  -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. Este programa é um software livre; você pode redistribui-lo ...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#CENTRO DE PRESTAÇÃO DE CONTAS - Beta&lt;br /&gt;
&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
Este programa é um software livre; você pode redistribui-lo e/ou &lt;br /&gt;
modifica-lo dentro dos termos da Licença Pública Geral GNU como &lt;br /&gt;
publicada pela Fundação do Software Livre (FSF); na versão 2 da &lt;br /&gt;
Licença, ou (na sua opnião) qualquer versão.&lt;br /&gt;
&lt;br /&gt;
Este programa é distribuido na esperança que possa ser  util, &lt;br /&gt;
mas SEM NENHUMA GARANTIA; sem uma garantia implicita de ADEQUAÇÂO a qualquer&lt;br /&gt;
MERCADO ou APLICAÇÃO EM PARTICULAR. Veja a&lt;br /&gt;
Licença Pública Geral GNU para maiores detalhes.&lt;br /&gt;
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.&lt;br /&gt;
&lt;br /&gt;
Realização &lt;br /&gt;
	Nós Digitais / http://www.nosdigitais.teia.org.br&lt;br /&gt;
&lt;br /&gt;
Deselvolvimento	&lt;br /&gt;
	Futuria Serviços de Informática / http://www.futuria.com.br&lt;br /&gt;
&lt;br /&gt;
Requisitos da máquina/servidor&lt;br /&gt;
	C.P.C&lt;br /&gt;
	http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	python 2.6&lt;br /&gt;
	sudo apt-get install python2.6&lt;br /&gt;
&lt;br /&gt;
	django 1.2.1&lt;br /&gt;
	http://djangoproject.com&lt;br /&gt;
	sudo apt-get install python-django&lt;br /&gt;
&lt;br /&gt;
	postgresql 8.3 &lt;br /&gt;
	sudo apt-get install postgresql-8.3&lt;br /&gt;
	&lt;br /&gt;
	python-psycopg2&lt;br /&gt;
	sudo apt-get install python-psycopg2&lt;br /&gt;
&lt;br /&gt;
	apache2 + mod_python + wsgi (se for rodar em um servidor para vários usuários)&lt;br /&gt;
	http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;br /&gt;
	&lt;br /&gt;
	Endereço de E-mail	&lt;br /&gt;
	Usuario e senha para notificação de perda da senha e notificação para o ADMIN do sistema, Não é necessário para rodar o sistema.&lt;br /&gt;
	usuario@dominio &lt;br /&gt;
	senha&lt;br /&gt;
	smtp server&lt;br /&gt;
&lt;br /&gt;
Instalando:&lt;br /&gt;
&lt;br /&gt;
    cd Desktop&lt;br /&gt;
    mkdir cpc&lt;br /&gt;
    cd cpc&lt;br /&gt;
&lt;br /&gt;
    Download do sistema:&lt;br /&gt;
	wget http://pc.nosdigitais.teia.org.br/cpc-beta.tar&lt;br /&gt;
    tar xfv cpc-beta.tar&lt;br /&gt;
&lt;br /&gt;
	Criando usuario e banco de dados PostgreSQL&lt;br /&gt;
	$sudo su postgres&lt;br /&gt;
	$psql&lt;br /&gt;
	=#create user money WITH PASSWORD 'money' superuser;&lt;br /&gt;
	=#create database money owner money;&lt;br /&gt;
	=#\q&lt;br /&gt;
	$exit&lt;br /&gt;
&lt;br /&gt;
    Abra o arquivo e configure as linhas necessárias e seu ambiente:&lt;br /&gt;
   		settings.py&lt;br /&gt;
&lt;br /&gt;
                linha&lt;br /&gt;
                 7 - ADMINS do sistema&lt;br /&gt;
                13 - BANCO DE DADOS&lt;br /&gt;
                59 - SERVIDOR NA INTERNET&lt;br /&gt;
&lt;br /&gt;
        Configuração para notifição para perda da senha de acesso.&lt;br /&gt;
        Se não for usar esse recurso, passe para o próximo passo.&lt;br /&gt;
                105 - smtp - server&lt;br /&gt;
                inic/views.py&lt;br /&gt;
                        linha 20  - from_mail &lt;br /&gt;
                        linha 144 - url - http:// &lt;br /&gt;
&lt;br /&gt;
	$./manager syncdb&lt;br /&gt;
		Se quiser pode criar um usuário admin respondendo YES e preencha os campos, ou NO para não! :)&lt;br /&gt;
&lt;br /&gt;
	Instalando grupos, acessos, pessoas e outros.&lt;br /&gt;
	$./install.py&lt;br /&gt;
&lt;br /&gt;
Rodando o aplicativo localmente:&lt;br /&gt;
	./manager runserver&lt;br /&gt;
&lt;br /&gt;
Abra o seu navegador no seguinte endereço:&lt;br /&gt;
    http://127.0.0.1:8000&lt;br /&gt;
&lt;br /&gt;
Para rodar em apache:&lt;br /&gt;
    http://www.aprendendodjango.com/preparando-um-servidor-com-linux/&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=1275</id>
		<title>Pontão Nós Digitais</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=1275"/>
		<updated>2010-07-22T13:12:46Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;!--- Caixa do Centro ----&amp;gt; &lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot; frame=&amp;quot;VOID&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;70%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Favicon.gif]] Bem-vindo à '''Wiki do Pontão Nós Digitais'''!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:Esta Wiki tem por papel principal servir de espaço virtual para:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*Registro das atividades de mapeamento dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt; &lt;br /&gt;
:*Registro das atividades de formação dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt; &lt;br /&gt;
:*Documentação de soluções baseadas no conceito de Redes Livres.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:Esperamos que todos possam fazer uso consciente e enriquecedor desta que pretende ser, entre outras, uma ferramenta importante de troca entre usuários de Redes Livres.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 5px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(255, 98, 0); width: 100%; background-color: rgb(255, 248, 191); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(255, 248, 191); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(142, 17, 0); background-color: rgb(255, 98, 0); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: left; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Download.png|40px]] Donwload!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
*[http://ark4n.wordpress.com/python Python para desenvolvedores] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/e/e2/Ffmpeg_traduzido_rev_14736.pdf Manual traduzido ffmpeg] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/f/fe/Steven_Johnson_-_Cultura_da_interface.pdf Livro Cultura Além das Redes - por Steve Johnson] &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/c/c3/Livroalemdasredes.pdf Além das Redes de Colaboração - org. Nelson De Luca Pretto e Sérgio Amadeu da Silveira]&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#f67878|cor3=#ffffff|titulo=Mapeamento dos Pontos de SP que Trabalham com Cultura Digital|conteudo= [[Imagem:Map-sp.png|right|60px]]&lt;br /&gt;
[[Divisões do estado de São Paulo| Pontos de Cultura e divisões do Estado de São Paulo]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
    category=Pontos de Cultura&lt;br /&gt;
    count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#007FFF|cor3=#ffffff|titulo=Datas e trampos - Calendário|conteudo=[[Imagem:Calendar.png|right|60px]]&lt;br /&gt;
* [[Projetos Especiais 2010]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Role&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;40%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#FFCC33|cor3=#ffffff|titulo=Oficinas e eventos realizados|conteudo=[[Imagem:Editor-texto90px.png‎|right|60px]]&lt;br /&gt;
[[Oficinas e Eventos Realizados]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=oficinas&lt;br /&gt;
  count=6&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ffd450|cor3=#fffeb4|titulo=Sistemas GNU/Linux|conteudo=[[Imagem:Gnu-linux.png|right|70px]]&lt;br /&gt;
[[Arch Linux 2009 - Instalação|1 - Arch Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Usando Pacman| 1.1 - Usando Pacman]] &amp;lt;br&amp;gt;&lt;br /&gt;
[[Debian Lenny - Instalação |2 - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Ubuntu 9.10 Karmic - Instalação |3 - Ubuntu 9.10 Karmic]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lubuntu|4 - Lubuntu]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Projeto Pandorga|5 - Pandorga]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puredyne|6 - Puredyne]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Puppy Linux|7 - Puppy Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
[[Lista de Comandos Básicos GNU/Linux|8 - Lista de Comandos Básicos GNU/Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff9333|cor3=#ffd450|titulo=Sistema e Redes|conteudo=[[‎Imagem:Redes_icon.png‎|right|60px]]&lt;br /&gt;
1 [[ Instalação Wireless, ACER 5040 e LENOVO SL400, atheros e 5100 Intel 802.11n,802.11b e 802.11g]]&amp;lt;br&amp;gt; &lt;br /&gt;
2 [[Gerenciar Biblioteca]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3 [[Modelos de Rede]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.1 [[LTSP - Linux Terminal Server Project]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.2 [[LTSP4.2 no Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.3 [[Diskless]]&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#000000|cor2=#ff4800|cor3=#ff9333|titulo=Web|conteudo=[[‎Imagem:Webicon.png‎|right|60px]]&lt;br /&gt;
1 [[Instalação Mediawiki - Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
2 [[Instalação Joomla]]&amp;lt;br&amp;gt;&lt;br /&gt;
3 [[Instalação ZenPhoto]]&amp;lt;br&amp;gt;&lt;br /&gt;
4 [[Instalando o PHL]]&amp;lt;br&amp;gt;&lt;br /&gt;
5 [[WordPress - Instalação]]&amp;lt;br&amp;gt;&lt;br /&gt;
6 [[Instalação - Semantic Scuttle]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; rowspan=&amp;quot;2&amp;quot; | &amp;lt;!--- CAIXA PRETA ----&amp;gt; &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; style=&amp;quot;margin: 0px -8px; border-spacing: 8px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border: 3px solid rgb(139, 137, 137); width: 100%; background-color: rgb(239, 239, 239); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;5&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;background-color: rgb(238, 233, 233); -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;border: 1px solid rgb(0, 0, 0); background-color: rgb(139, 137, 137); font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 100%; text-align: center; padding-left: 7px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px;&amp;quot; | [[Image:Pontodecultura-logop.png|left|30px]] [[Sistema de informação de Pontos de Cultura]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; border=&amp;quot;0&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Sistema de informação&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
*[http://wiki.nosdigitais.teia.org.br/images/4/45/Sistema_de_informa%C3%A7%C3%A3o_-_documenta%C3%A7%C3%A3o.pdf Documentação do Sistema de Informação dos Pontos de Cultura]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| bgcolor=&amp;quot;#ccccff&amp;quot; width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; | &lt;br /&gt;
Ferramenta de gerenciamento financeiro de Pontos de Cultura&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; |&lt;br /&gt;
Versão Beta - 21.07.2010 &lt;br /&gt;
*[http://pc.nosdigitais.teia.org.br Ferramenta de gerenciamento finaceiro para Pontos de Cultura - Versão Beta 0.1]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;100%&amp;quot; valign=&amp;quot;TOP&amp;quot; |&lt;br /&gt;
*[[Instalando o sistema Centro de prestação de contas]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|- valign=&amp;quot;TOP&amp;quot;&lt;br /&gt;
| width=&amp;quot;75%&amp;quot; | &lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#FF0000|cor2=#FF0000|cor3=#FFC1C1|titulo=Gráfico|conteudo=[[Imagem: Art-palette.png‎‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Grafico&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#6E8B3D|cor2=#00CD00|cor3=#CAFF70|titulo=Audio|conteudo=[[Imagem:Nota_musical01.png|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Audio&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;  &amp;lt;br /&amp;gt; }} &lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;30%&amp;quot; valign=&amp;quot;top&amp;quot; | &lt;br /&gt;
{{Caixa|cor1=#00008B|cor2=#435eff|cor3=#6dafff|titulo=Vídeo|conteudo=[[Imagem:Countdown_film.jpg‎|right|45px]]&lt;br /&gt;
&amp;lt;dynamicpagelist&amp;gt;&lt;br /&gt;
  category=Video&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/dynamicpagelist&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}} &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Novos Artigos|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=new&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Atualizados|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=update&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;}} &lt;br /&gt;
| width=&amp;quot;33%&amp;quot; valign=&amp;quot;top&amp;quot; | {{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Quentes|conteudo=&lt;br /&gt;
&amp;lt;dynamicarticlelist&amp;gt;&lt;br /&gt;
  type=hot&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/dynamicarticlelist&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;!-- CAIXA PRETAAA &lt;br /&gt;
{{Caixa|cor1=#696969|cor2=#000000|cor3=#8B8989|titulo=&amp;lt;font color=ghostwhite&amp;gt;Sistema de informação dos Pontos de Cultura&amp;lt;/font&amp;gt;|conteudo=[[Imagem:Metareciclage.png|right|55px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless&amp;diff=998</id>
		<title>Diskless</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless&amp;diff=998"/>
		<updated>2010-02-04T11:20:39Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Linux Image (Kernel) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 # REDE LAN&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 	address 192.168.0.1	   &lt;br /&gt;
        # ip do servidor&lt;br /&gt;
 	netmask 255.255.255.0&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
 	network 192.168.0.0&lt;br /&gt;
        # classe da rede geral&lt;br /&gt;
	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 # para ip dinamico. pode variar dependendo da sua conexão.&lt;br /&gt;
&lt;br /&gt;
Iniciaro serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
&lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
de &lt;br /&gt;
 '''BOOT=local''' &lt;br /&gt;
para &lt;br /&gt;
 '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless&amp;diff=962</id>
		<title>Diskless</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless&amp;diff=962"/>
		<updated>2010-01-28T13:28:52Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Serviço DHCP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 # REDE LAN&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 	address 192.168.0.1	   &lt;br /&gt;
        # ip do servidor&lt;br /&gt;
 	netmask 255.255.255.0&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
 	network 192.168.0.0&lt;br /&gt;
        # classe da rede geral&lt;br /&gt;
	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 # para ip dinamico. pode variar dependendo da sua conexão.&lt;br /&gt;
&lt;br /&gt;
Iniciaro serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
&lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # raiz&lt;br /&gt;
         option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
&lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
 de BOOT=local &lt;br /&gt;
 para '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=845</id>
		<title>Instalando o PHL</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=845"/>
		<updated>2009-12-08T13:08:10Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Instalando e configurando sistema PHL - Personal Home Library - Biblioteca&lt;br /&gt;
&lt;br /&gt;
PHL é um sistema para gerenciar uma biblioteca, empréstimo, consulta, cadastros e tudo aquilo que uma biblioteca necessita para funcionar.  Aqui mostro como instalar o PHL, não tenho conhecimento de como gerenciar o sistema, banco de dados, usuários, livros e outros.&lt;br /&gt;
&lt;br /&gt;
Todos os passos a seguir deverá ser feito com usuário ROOT!&lt;br /&gt;
&lt;br /&gt;
 O simbolo de # significa um comando,  tipo, # ls -la&lt;br /&gt;
&lt;br /&gt;
Autor do PHL   &lt;br /&gt;
 http://www.elysio.com.br/&lt;br /&gt;
&lt;br /&gt;
Ambiente&lt;br /&gt;
Linux Debian Lenny&lt;br /&gt;
Apache2&lt;br /&gt;
&lt;br /&gt;
Instalando o apache&lt;br /&gt;
 # apt-get install apache2&lt;br /&gt;
&lt;br /&gt;
Pacotes instalados no sistema, pode usar o comando:  # dpkg -l | grep -i apache&lt;br /&gt;
&lt;br /&gt;
 ii  apache2    2.2.11-2ubuntu2.5   Apache HTTP Server metapackage&lt;br /&gt;
 ii  apache2-mpm-prefork   2.2.11-2ubuntu2.5   Apache HTTP Server - traditional non-threade&lt;br /&gt;
 ii  apache2-utils    2.2.11-2ubuntu2.5    utility programs for webservers&lt;br /&gt;
 ii  apache2.2-common    2.2.11-2ubuntu2.5    Apache HTTP Server common files&lt;br /&gt;
 ii  libapache2-mod-php5    5.2.6.dfsg.1-3ubuntu4.4 server-side, HTML-embedded scripting languag&lt;br /&gt;
 ii  libapr1    1.2.12-5ubuntu0.1    The Apache Portable Runtime Library&lt;br /&gt;
 ii  libaprutil1    1.2.12+dfsg-8ubuntu0.3   The Apache Portable Runtime Utility Library&lt;br /&gt;
&lt;br /&gt;
Diretório que vamos usar para descompactar o tar.gz do PHL&lt;br /&gt;
 /usr/local/src/  &lt;br /&gt;
&lt;br /&gt;
Diretorio padrao Apache&lt;br /&gt;
 /var/www &lt;br /&gt;
&lt;br /&gt;
Diretorio CGI do apache&lt;br /&gt;
 /usr/lib/cgi/bin&lt;br /&gt;
&lt;br /&gt;
Diretorio do PHL dentro do apache&lt;br /&gt;
 /var/www/http&lt;br /&gt;
&lt;br /&gt;
Download&lt;br /&gt;
 http://www.elysio.com.br/site/downloads.html&lt;br /&gt;
&lt;br /&gt;
vamos para o diretorio src&lt;br /&gt;
 # cd /usr/local/src/&lt;br /&gt;
&lt;br /&gt;
pegue o pacote mais novo no site e altere o nome do pacote no comando wget&lt;br /&gt;
 # wget -c http://www.elysio.com.br/downloads/phl82_090619.tar.gz&lt;br /&gt;
&lt;br /&gt;
vamos descompactar o pacote:&lt;br /&gt;
 # tar zxfv phl82_090619.tar.gz &lt;br /&gt;
&lt;br /&gt;
um diretorio &amp;quot;http&amp;quot; foi criado, é o conteudo do PHL. Vamos copia-lô para o diretorio www do apache para que fique acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
 # cp /usr/local/src/http   /var/www/. -prav&lt;br /&gt;
&lt;br /&gt;
 # cd /var/www/http/&lt;br /&gt;
&lt;br /&gt;
inicie o apache2&lt;br /&gt;
 # /etc/init.d/apache2 start&lt;br /&gt;
&lt;br /&gt;
vamos editar o arquivo cgi-bin/phl82.cip para alterar alguns parâmetros no PHL. Vamos precisar colocar o caminho completo nas configurações. Para isso vamos usar o comando SED:&lt;br /&gt;
&lt;br /&gt;
Os camandos abaixo fazem essas alterações:&lt;br /&gt;
&lt;br /&gt;
fazendo uma copia do original &lt;br /&gt;
 # cp cgi-bin/phl82.cip cgi-bin/phl82.cip.original&lt;br /&gt;
&lt;br /&gt;
alterando o original para o caminho do diretorio apache.&lt;br /&gt;
 # more cgi-bin/phl82.cip.original | sed s/http/'var\/www\/http'/g &amp;gt; cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
o conteudo original do arquivo:&lt;br /&gt;
&lt;br /&gt;
 phl_*=/http/bases/phl_*&lt;br /&gt;
 actab=/http/bases/actab&lt;br /&gt;
 uctab=/http/bases/uctab&lt;br /&gt;
 menu*=/http/www/phl82/html/menu*&lt;br /&gt;
 cabe*=/http/www/phl82/html/cabe*&lt;br /&gt;
 mens*=/http/www/phl82/html/mens*&lt;br /&gt;
 rest*=/http/www/phl82/html/rest*&lt;br /&gt;
 inde*=/http/www/phl82/html/inde*&lt;br /&gt;
 logo*=/http/www/phl82/html/logo*&lt;br /&gt;
 atra*=/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
 aler*=/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
 disp*=/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
 usua*=/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
 phl.css=/http/www/phl82/css/phl.css&lt;br /&gt;
 tab_*=/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
como deve ficar:&lt;br /&gt;
&lt;br /&gt;
 00*=/var/www/http/bases/00*&lt;br /&gt;
 phl_*=/var/www/http/bases/phl_*&lt;br /&gt;
 actab=/var/www/http/bases/actab&lt;br /&gt;
 uctab=/var/www/http/bases/uctab&lt;br /&gt;
 menu*=/var/www/http/www/phl82/html/menu*&lt;br /&gt;
 cabe*=/var/www/http/www/phl82/html/cabe*&lt;br /&gt;
 mens*=/var/www/http/www/phl82/html/mens*&lt;br /&gt;
 rest*=/var/www/http/www/phl82/html/rest*&lt;br /&gt;
 inde*=/var/www/http/www/phl82/html/inde*&lt;br /&gt;
 logo*=/var/www/http/www/phl82/html/logo*&lt;br /&gt;
 atra*=/var/www/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
 aler*=/var/www/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
 disp*=/var/www/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
 usua*=/var/www/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
 phl.css=/var/www/http/www/phl82/css/phl.css&lt;br /&gt;
 tab_*=/var/www/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
verifique se o arquivo  foi alterado corretamente:&lt;br /&gt;
 # more cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
Feito isso, vamos criar um link do PHL para o diretorio CGI do apache:&lt;br /&gt;
&lt;br /&gt;
 # ln -s /var/www/http/cgi-bin/*   /usr/lib/cgi-bin/.&lt;br /&gt;
&lt;br /&gt;
Vamos criar outro link, do PHL82 para a raiz do diretorio apache, assim deixamos o sistema PHL acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
 # ln -s /var/www/http/www/phl82  /var/www/.&lt;br /&gt;
&lt;br /&gt;
 # chown www-data.www-data /var/www/http -R&lt;br /&gt;
&lt;br /&gt;
Agora já podemos acessar o PHL pelo navegador, http://ip_servidor/phl82/&lt;br /&gt;
&lt;br /&gt;
Se você quer acessar apenas o endereço do servidor e ir direto ao PHL82, faça o link do phl82/index.html para o document root do apache /var/www&lt;br /&gt;
&lt;br /&gt;
criando link:&lt;br /&gt;
 # ln -s http/www/phl82/index.html    /var/www/. -f&lt;br /&gt;
&lt;br /&gt;
agora é só acessar o http://ip_servidor com o navegador que irá abrir diretamente o PHL82.&lt;br /&gt;
&lt;br /&gt;
Feito!&lt;br /&gt;
Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=844</id>
		<title>Instalando o PHL</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=844"/>
		<updated>2009-12-08T13:05:37Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Instalando e configurando sistema PHL - Personal Home Library - Biblioteca&lt;br /&gt;
&lt;br /&gt;
PHL é um sistema para gerenciar uma biblioteca, empréstimo, consulta, cadastros e tudo aquilo que uma biblioteca necessita para funcionar.  Aqui mostro como instalar o PHL, não tenho conhecimento de como gerenciar o sistema, banco de dados e outros.&lt;br /&gt;
&lt;br /&gt;
Todos os passos a seguir deverá ser feito com usuário ROOT!&lt;br /&gt;
&lt;br /&gt;
 O simbolo de # significa um comando,  tipo, # ls -la&lt;br /&gt;
&lt;br /&gt;
Autor do PHL   &lt;br /&gt;
 http://www.elysio.com.br/&lt;br /&gt;
&lt;br /&gt;
Ambiente&lt;br /&gt;
Linux Debian Lenny&lt;br /&gt;
Apache2&lt;br /&gt;
&lt;br /&gt;
Instalando o apache&lt;br /&gt;
 # apt-get install apache2&lt;br /&gt;
&lt;br /&gt;
Pacotes instalados no sistema, pode usar o comando:  # dpkg -l | grep -i apache&lt;br /&gt;
&lt;br /&gt;
 ii  apache2    2.2.11-2ubuntu2.5   Apache HTTP Server metapackage&lt;br /&gt;
 ii  apache2-mpm-prefork   2.2.11-2ubuntu2.5   Apache HTTP Server - traditional non-threade&lt;br /&gt;
 ii  apache2-utils    2.2.11-2ubuntu2.5    utility programs for webservers&lt;br /&gt;
 ii  apache2.2-common    2.2.11-2ubuntu2.5    Apache HTTP Server common files&lt;br /&gt;
 ii  libapache2-mod-php5    5.2.6.dfsg.1-3ubuntu4.4 server-side, HTML-embedded scripting languag&lt;br /&gt;
 ii  libapr1    1.2.12-5ubuntu0.1    The Apache Portable Runtime Library&lt;br /&gt;
 ii  libaprutil1    1.2.12+dfsg-8ubuntu0.3   The Apache Portable Runtime Utility Library&lt;br /&gt;
&lt;br /&gt;
Diretório que vamos usar para descompactar o tar.gz do PHL&lt;br /&gt;
 /usr/local/src/  &lt;br /&gt;
&lt;br /&gt;
Diretorio padrao Apache&lt;br /&gt;
 /var/www &lt;br /&gt;
&lt;br /&gt;
Diretorio CGI do apache&lt;br /&gt;
 /usr/lib/cgi/bin&lt;br /&gt;
&lt;br /&gt;
Diretorio do PHL dentro do apache&lt;br /&gt;
 /var/www/http&lt;br /&gt;
&lt;br /&gt;
Download&lt;br /&gt;
 http://www.elysio.com.br/site/downloads.html&lt;br /&gt;
&lt;br /&gt;
vamos para o diretorio src&lt;br /&gt;
 # cd /usr/local/src/&lt;br /&gt;
&lt;br /&gt;
pegue o pacote mais novo no site e altere o nome do pacote no comando wget&lt;br /&gt;
 # wget -c http://www.elysio.com.br/downloads/phl82_090619.tar.gz&lt;br /&gt;
&lt;br /&gt;
vamos descompactar o pacote:&lt;br /&gt;
 # tar zxfv phl82_090619.tar.gz &lt;br /&gt;
&lt;br /&gt;
um diretorio &amp;quot;http&amp;quot; foi criado, é o conteudo do PHL. Vamos copia-lô para o diretorio www do apache para que fique acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
 # cp /usr/local/src/http   /var/www/. -prav&lt;br /&gt;
&lt;br /&gt;
 # cd /var/www/http/&lt;br /&gt;
&lt;br /&gt;
inicie o apache2&lt;br /&gt;
 # /etc/init.d/apache2 start&lt;br /&gt;
&lt;br /&gt;
vamos editar o arquivo cgi-bin/phl82.cip para alterar alguns parâmetros no PHL. Vamos precisar colocar o caminho completo nas configurações. Para isso vamos usar o comando SED:&lt;br /&gt;
&lt;br /&gt;
Os camandos abaixo fazem essas alterações:&lt;br /&gt;
&lt;br /&gt;
fazendo uma copia do original &lt;br /&gt;
 # cp cgi-bin/phl82.cip cgi-bin/phl82.cip.original&lt;br /&gt;
&lt;br /&gt;
alterando o original para o caminho do diretorio apache.&lt;br /&gt;
 # more cgi-bin/phl82.cip.original | sed s/http/'var\/www\/http'/g &amp;gt; cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
o conteudo original do arquivo:&lt;br /&gt;
&lt;br /&gt;
 phl_*=/http/bases/phl_*&lt;br /&gt;
 actab=/http/bases/actab&lt;br /&gt;
 uctab=/http/bases/uctab&lt;br /&gt;
 menu*=/http/www/phl82/html/menu*&lt;br /&gt;
 cabe*=/http/www/phl82/html/cabe*&lt;br /&gt;
 mens*=/http/www/phl82/html/mens*&lt;br /&gt;
 rest*=/http/www/phl82/html/rest*&lt;br /&gt;
 inde*=/http/www/phl82/html/inde*&lt;br /&gt;
 logo*=/http/www/phl82/html/logo*&lt;br /&gt;
 atra*=/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
 aler*=/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
 disp*=/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
 usua*=/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
 phl.css=/http/www/phl82/css/phl.css&lt;br /&gt;
 tab_*=/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
como deve ficar:&lt;br /&gt;
&lt;br /&gt;
 00*=/var/www/http/bases/00*&lt;br /&gt;
 phl_*=/var/www/http/bases/phl_*&lt;br /&gt;
 actab=/var/www/http/bases/actab&lt;br /&gt;
 uctab=/var/www/http/bases/uctab&lt;br /&gt;
 menu*=/var/www/http/www/phl82/html/menu*&lt;br /&gt;
 cabe*=/var/www/http/www/phl82/html/cabe*&lt;br /&gt;
 mens*=/var/www/http/www/phl82/html/mens*&lt;br /&gt;
 rest*=/var/www/http/www/phl82/html/rest*&lt;br /&gt;
 inde*=/var/www/http/www/phl82/html/inde*&lt;br /&gt;
 logo*=/var/www/http/www/phl82/html/logo*&lt;br /&gt;
 atra*=/var/www/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
 aler*=/var/www/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
 disp*=/var/www/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
 usua*=/var/www/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
 phl.css=/var/www/http/www/phl82/css/phl.css&lt;br /&gt;
 tab_*=/var/www/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
verifique se o arquivo  foi alterado corretamente:&lt;br /&gt;
 # more cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
Feito isso, vamos criar um link do PHL para o diretorio CGI do apache:&lt;br /&gt;
&lt;br /&gt;
 # ln -s /var/www/http/cgi-bin/*   /usr/lib/cgi-bin/.&lt;br /&gt;
&lt;br /&gt;
Vamos criar outro link, do PHL82 para a raiz do diretorio apache, assim deixamos o sistema PHL acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
 # ln -s /var/www/http/www/phl82  /var/www/.&lt;br /&gt;
&lt;br /&gt;
 # chown www-data.www-data /var/www/http -R&lt;br /&gt;
&lt;br /&gt;
Agora já podemos acessar o PHL pelo navegador, http://ip_servidor/phl82/&lt;br /&gt;
&lt;br /&gt;
Se você quer acessar apenas o endereço do servidor e ir direto ao PHL82, faça o link do phl82/index.html para o document root do apache /var/www&lt;br /&gt;
&lt;br /&gt;
criando link:&lt;br /&gt;
 # ln -s http/www/phl82/index.html    /var/www/. -f&lt;br /&gt;
&lt;br /&gt;
agora é só acessar o http://ip_servidor com o navegador que irá abrir diretamente o PHL82.&lt;br /&gt;
&lt;br /&gt;
Feito!&lt;br /&gt;
Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instala%C3%A7%C3%A3o_Mediawiki_-_Debian_Lenny&amp;diff=843</id>
		<title>Instalação Mediawiki - Debian Lenny</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instala%C3%A7%C3%A3o_Mediawiki_-_Debian_Lenny&amp;diff=843"/>
		<updated>2009-12-08T13:01:39Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Imagem:685px-MediaWiki-notext.svg.png|thumbs|right|200px|logotipo Mediawiki]]&lt;br /&gt;
'''MediaWiki''' é um livre voltado a construção de plataformas Wiki, como esta página wiki.nosdigitais. Escrito principalmente em PHP e utilizando sistemas de gestão de base de dados '''MySQL''', o wikimedia é licenciado sob '''GPL''' e está em sua versão '''1.15.1'''. Esta tecnologia é utilizada principalmente nos projectos da Wikimedia - Wikipedia, Wikisource, Wikiquote, etc. Sua utlização é cada vez mais frequente também por comunidades livres que desejam construir seus conteúdos colaborativamente pela Internet.&lt;br /&gt;
&lt;br /&gt;
== Instalação ==&lt;br /&gt;
&lt;br /&gt;
Vamos instalar uma wiki? Em poucos passos você poderá instalar e configurar sua própria Wiki utilizando um servidor Debian Lenny. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1° - Verifique se o sistema operacional está atualizado e funcionando corretamente, sem instabilidades. Você poderá adicionar a lista de [http://wiki.nosdigitais.teia.org.br/Sources.list repositórios padrão] e dar um update e depois um upgrade em seu sistema. Neste caso estamos nos baseando em Debian Lenny, mas você poderá proceder da mesma forma para outra distribuições. &lt;br /&gt;
&lt;br /&gt;
2° - Instale os softwares requeridos para o funcionamento da wiki:&lt;br /&gt;
&lt;br /&gt;
* Apache&lt;br /&gt;
* Mysql ou Postgres&lt;br /&gt;
* PHP5&lt;br /&gt;
&lt;br /&gt;
3° - Faça o download do software&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4° - Extraia o arquivo e copie para a pasta adequada&lt;br /&gt;
&lt;br /&gt;
5 - Verifique o estatus de funcionamento&lt;br /&gt;
&lt;br /&gt;
[[Imagem:Captura da tela.png|center|thumb|400px|Tela de apresentação da Wikimedia]]&lt;br /&gt;
&lt;br /&gt;
== Configurando sua Wiki ==&lt;br /&gt;
&lt;br /&gt;
== Referências ==&lt;br /&gt;
&lt;br /&gt;
[http://www.mediawiki.org/ http://www.mediawiki.org/]&lt;br /&gt;
&lt;br /&gt;
http://www.mediawiki.org/wiki/How_to_Install_MediaWiki_on_Ubuntu&lt;br /&gt;
&lt;br /&gt;
https://help.ubuntu.com/community/MediaWiki&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=842</id>
		<title>Instalando o PHL</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=842"/>
		<updated>2009-12-08T12:59:32Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Instalando e configurando sistema PHL - Personal Home Library - Biblioteca&lt;br /&gt;
&lt;br /&gt;
PHL é um sistema para gerenciar uma biblioteca, empréstimo, consulta, cadastros e tudo aquilo que uma biblioteca necessita para funcionar.  Aqui mostro como instalar o PHL, não tenho conhecimento de como gerenciar o sistema, banco de dados e outros.&lt;br /&gt;
&lt;br /&gt;
Todos os passos a seguir deverá ser feito com usuário ROOT!&lt;br /&gt;
&lt;br /&gt;
 O simbolo de # significa um comando,  tipo, # ls -la&lt;br /&gt;
&lt;br /&gt;
Autor do PHL   &lt;br /&gt;
 http://www.elysio.com.br/&lt;br /&gt;
&lt;br /&gt;
Ambiente&lt;br /&gt;
Linux Debian Lenny&lt;br /&gt;
Apache2&lt;br /&gt;
&lt;br /&gt;
Instalando o apache&lt;br /&gt;
 # apt-get install apache2&lt;br /&gt;
&lt;br /&gt;
Pacotes instalados no sistema, pode usar o comando:  # dpkg -l | grep -i apache&lt;br /&gt;
&lt;br /&gt;
ii  apache2    2.2.11-2ubuntu2.5   Apache HTTP Server metapackage&lt;br /&gt;
ii  apache2-mpm-prefork   2.2.11-2ubuntu2.5   Apache HTTP Server - traditional non-threade&lt;br /&gt;
ii  apache2-utils    2.2.11-2ubuntu2.5    utility programs for webservers&lt;br /&gt;
ii  apache2.2-common    2.2.11-2ubuntu2.5    Apache HTTP Server common files&lt;br /&gt;
ii  libapache2-mod-php5    5.2.6.dfsg.1-3ubuntu4.4 server-side, HTML-embedded scripting languag&lt;br /&gt;
ii  libapr1    1.2.12-5ubuntu0.1    The Apache Portable Runtime Library&lt;br /&gt;
ii  libaprutil1    1.2.12+dfsg-8ubuntu0.3   The Apache Portable Runtime Utility Library&lt;br /&gt;
&lt;br /&gt;
Diretório que vamos usar para descompactar o tar.gz do PHL&lt;br /&gt;
 /usr/local/src/  &lt;br /&gt;
&lt;br /&gt;
Diretorio padrao Apache&lt;br /&gt;
 /var/www &lt;br /&gt;
&lt;br /&gt;
Diretorio CGI do apache&lt;br /&gt;
 /usr/lib/cgi/bin&lt;br /&gt;
&lt;br /&gt;
Diretorio do PHL dentro do apache&lt;br /&gt;
 /var/www/http&lt;br /&gt;
&lt;br /&gt;
Download&lt;br /&gt;
 http://www.elysio.com.br/site/downloads.html&lt;br /&gt;
&lt;br /&gt;
vamos para o diretorio src&lt;br /&gt;
 # cd /usr/local/src/&lt;br /&gt;
&lt;br /&gt;
pegue o pacote mais novo no site e altere o nome do pacote no comando wget&lt;br /&gt;
# wget -c http://www.elysio.com.br/downloads/phl82_090619.tar.gz&lt;br /&gt;
&lt;br /&gt;
vamos descompactar o pacote:&lt;br /&gt;
# tar zxfv phl82_090619.tar.gz &lt;br /&gt;
&lt;br /&gt;
um diretorio &amp;quot;http&amp;quot; foi criado, é o conteudo do PHL. Vamos copia-lô para o diretorio www do apache para que fique acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
# cp /usr/local/src/http   /var/www/. -prav&lt;br /&gt;
&lt;br /&gt;
# cd /var/www/http/&lt;br /&gt;
&lt;br /&gt;
inicie o apache2&lt;br /&gt;
# /etc/init.d/apache2 start&lt;br /&gt;
&lt;br /&gt;
vamos editar o arquivo cgi-bin/phl82.cip para alterar alguns parâmetros no PHL. Vamos precisar colocar o caminho completo nas configurações. Para isso vamos usar o comando SED:&lt;br /&gt;
&lt;br /&gt;
os camandos abaixo fazem essas alterações:&lt;br /&gt;
&lt;br /&gt;
fazendo uma copia do original &lt;br /&gt;
# cp cgi-bin/phl82.cip cgi-bin/phl82.cip.original&lt;br /&gt;
&lt;br /&gt;
alterando o original para o caminho do diretorio apache.&lt;br /&gt;
# more cgi-bin/phl82.cip.original | sed s/http/'var\/www\/http'/g &amp;gt; cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
o conteudo original do arquivo:&lt;br /&gt;
&lt;br /&gt;
phl_*=/http/bases/phl_*&lt;br /&gt;
actab=/http/bases/actab&lt;br /&gt;
uctab=/http/bases/uctab&lt;br /&gt;
menu*=/http/www/phl82/html/menu*&lt;br /&gt;
cabe*=/http/www/phl82/html/cabe*&lt;br /&gt;
mens*=/http/www/phl82/html/mens*&lt;br /&gt;
rest*=/http/www/phl82/html/rest*&lt;br /&gt;
inde*=/http/www/phl82/html/inde*&lt;br /&gt;
logo*=/http/www/phl82/html/logo*&lt;br /&gt;
atra*=/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
aler*=/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
disp*=/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
usua*=/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
phl.css=/http/www/phl82/css/phl.css&lt;br /&gt;
tab_*=/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
como deve ficar:&lt;br /&gt;
&lt;br /&gt;
00*=/var/www/http/bases/00*&lt;br /&gt;
phl_*=/var/www/http/bases/phl_*&lt;br /&gt;
actab=/var/www/http/bases/actab&lt;br /&gt;
uctab=/var/www/http/bases/uctab&lt;br /&gt;
menu*=/var/www/http/www/phl82/html/menu*&lt;br /&gt;
cabe*=/var/www/http/www/phl82/html/cabe*&lt;br /&gt;
mens*=/var/www/http/www/phl82/html/mens*&lt;br /&gt;
rest*=/var/www/http/www/phl82/html/rest*&lt;br /&gt;
inde*=/var/www/http/www/phl82/html/inde*&lt;br /&gt;
logo*=/var/www/http/www/phl82/html/logo*&lt;br /&gt;
atra*=/var/www/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
aler*=/var/www/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
disp*=/var/www/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
usua*=/var/www/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
phl.css=/var/www/http/www/phl82/css/phl.css&lt;br /&gt;
tab_*=/var/www/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
verifique se o arquivo  foi alterado corretamente:&lt;br /&gt;
# more cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
Feito isso, vamos criar um link do PHL para o diretorio CGI do apache:&lt;br /&gt;
&lt;br /&gt;
# ln -s /var/www/http/cgi-bin/*   /usr/lib/cgi-bin/.&lt;br /&gt;
&lt;br /&gt;
Vamos criar outro link, do PHL82 para a raiz do diretorio apache, assim deixamos o sistema PHL acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
# ln -s /var/www/http/www/phl82  /var/www/.&lt;br /&gt;
&lt;br /&gt;
chown www-data.www-data /var/www/http -R&lt;br /&gt;
&lt;br /&gt;
Agora já podemos acessar o PHL pelo navegador, http://ip_servidor/phl82/&lt;br /&gt;
&lt;br /&gt;
Se você quer acessar apenas o endereço do servidor e ir direto ao PHL82, faça o link do phl82/index.html para o document root do apache /var/www&lt;br /&gt;
&lt;br /&gt;
criando link:&lt;br /&gt;
# ln -s http/www/phl82/index.html    /var/www/. -f&lt;br /&gt;
&lt;br /&gt;
agora é só acessar o http://ip_servidor com o navegador que irá abrir diretamente o PHL82.&lt;br /&gt;
&lt;br /&gt;
Feito!&lt;br /&gt;
:D&lt;br /&gt;
&lt;br /&gt;
Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=841</id>
		<title>Instalando o PHL</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Instalando_o_PHL&amp;diff=841"/>
		<updated>2009-12-08T12:58:28Z</updated>

		<summary type="html">&lt;p&gt;Teagom: Nova página: Instalando e configurando sistema PHL - Personal Home Library - Biblioteca  PHL é um sistema para gerenciar uma biblioteca, empréstimo, consulta, cadastros e tudo aquilo que uma bibl...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Instalando e configurando sistema PHL - Personal Home Library - Biblioteca&lt;br /&gt;
&lt;br /&gt;
PHL é um sistema para gerenciar uma biblioteca, empréstimo, consulta, cadastros e tudo aquilo que uma biblioteca necessita para funcionar.  Aqui mostro como instalar o PHL, não tenho conhecimento de como gerenciar o sistema, banco de dados e outros.&lt;br /&gt;
&lt;br /&gt;
Todos os passos a seguir deverá ser feito com usuário ROOT!&lt;br /&gt;
&lt;br /&gt;
O simbolo de # significa um comando,  tipo, # ls -la&lt;br /&gt;
&lt;br /&gt;
Autor do PHL   &lt;br /&gt;
http://www.elysio.com.br/&lt;br /&gt;
&lt;br /&gt;
Ambiente&lt;br /&gt;
Linux Debian Lenny&lt;br /&gt;
Apache2&lt;br /&gt;
&lt;br /&gt;
Instalando o apache&lt;br /&gt;
apt-get install apache2&lt;br /&gt;
&lt;br /&gt;
Pacotes instalados no sistema, pode usar o comando:  # dpkg -l | grep -i apache&lt;br /&gt;
&lt;br /&gt;
ii  apache2    2.2.11-2ubuntu2.5   Apache HTTP Server metapackage&lt;br /&gt;
ii  apache2-mpm-prefork   2.2.11-2ubuntu2.5   Apache HTTP Server - traditional non-threade&lt;br /&gt;
ii  apache2-utils    2.2.11-2ubuntu2.5    utility programs for webservers&lt;br /&gt;
ii  apache2.2-common    2.2.11-2ubuntu2.5    Apache HTTP Server common files&lt;br /&gt;
ii  libapache2-mod-php5    5.2.6.dfsg.1-3ubuntu4.4 server-side, HTML-embedded scripting languag&lt;br /&gt;
ii  libapr1    1.2.12-5ubuntu0.1    The Apache Portable Runtime Library&lt;br /&gt;
ii  libaprutil1    1.2.12+dfsg-8ubuntu0.3   The Apache Portable Runtime Utility Library&lt;br /&gt;
&lt;br /&gt;
/usr/local/src/  é o diretório que vamos usar para descompactar o tar.gz do PHL&lt;br /&gt;
&lt;br /&gt;
Diretorio padrao Apache&lt;br /&gt;
/var/www &lt;br /&gt;
&lt;br /&gt;
Diretorio CGI do apache&lt;br /&gt;
/usr/lib/cgi/bin&lt;br /&gt;
&lt;br /&gt;
Diretorio do PHL dentro do apache&lt;br /&gt;
/var/www/http&lt;br /&gt;
&lt;br /&gt;
Download&lt;br /&gt;
http://www.elysio.com.br/site/downloads.html&lt;br /&gt;
&lt;br /&gt;
vamos para o diretorio src&lt;br /&gt;
# cd /usr/local/src/&lt;br /&gt;
&lt;br /&gt;
pegue o pacote mais novo no site e altere o nome do pacote no comando wget&lt;br /&gt;
# wget -c http://www.elysio.com.br/downloads/phl82_090619.tar.gz&lt;br /&gt;
&lt;br /&gt;
vamos descompactar o pacote:&lt;br /&gt;
# tar zxfv phl82_090619.tar.gz &lt;br /&gt;
&lt;br /&gt;
um diretorio &amp;quot;http&amp;quot; foi criado, é o conteudo do PHL. Vamos copia-lô para o diretorio www do apache para que fique acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
# cp /usr/local/src/http   /var/www/. -prav&lt;br /&gt;
&lt;br /&gt;
# cd /var/www/http/&lt;br /&gt;
&lt;br /&gt;
inicie o apache2&lt;br /&gt;
# /etc/init.d/apache2 start&lt;br /&gt;
&lt;br /&gt;
vamos editar o arquivo cgi-bin/phl82.cip para alterar alguns parâmetros no PHL. Vamos precisar colocar o caminho completo nas configurações. Para isso vamos usar o comando SED:&lt;br /&gt;
&lt;br /&gt;
os camandos abaixo fazem essas alterações:&lt;br /&gt;
&lt;br /&gt;
fazendo uma copia do original &lt;br /&gt;
# cp cgi-bin/phl82.cip cgi-bin/phl82.cip.original&lt;br /&gt;
&lt;br /&gt;
alterando o original para o caminho do diretorio apache.&lt;br /&gt;
# more cgi-bin/phl82.cip.original | sed s/http/'var\/www\/http'/g &amp;gt; cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
o conteudo original do arquivo:&lt;br /&gt;
&lt;br /&gt;
phl_*=/http/bases/phl_*&lt;br /&gt;
actab=/http/bases/actab&lt;br /&gt;
uctab=/http/bases/uctab&lt;br /&gt;
menu*=/http/www/phl82/html/menu*&lt;br /&gt;
cabe*=/http/www/phl82/html/cabe*&lt;br /&gt;
mens*=/http/www/phl82/html/mens*&lt;br /&gt;
rest*=/http/www/phl82/html/rest*&lt;br /&gt;
inde*=/http/www/phl82/html/inde*&lt;br /&gt;
logo*=/http/www/phl82/html/logo*&lt;br /&gt;
atra*=/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
aler*=/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
disp*=/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
usua*=/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
phl.css=/http/www/phl82/css/phl.css&lt;br /&gt;
tab_*=/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
como deve ficar:&lt;br /&gt;
&lt;br /&gt;
00*=/var/www/http/bases/00*&lt;br /&gt;
phl_*=/var/www/http/bases/phl_*&lt;br /&gt;
actab=/var/www/http/bases/actab&lt;br /&gt;
uctab=/var/www/http/bases/uctab&lt;br /&gt;
menu*=/var/www/http/www/phl82/html/menu*&lt;br /&gt;
cabe*=/var/www/http/www/phl82/html/cabe*&lt;br /&gt;
mens*=/var/www/http/www/phl82/html/mens*&lt;br /&gt;
rest*=/var/www/http/www/phl82/html/rest*&lt;br /&gt;
inde*=/var/www/http/www/phl82/html/inde*&lt;br /&gt;
logo*=/var/www/http/www/phl82/html/logo*&lt;br /&gt;
atra*=/var/www/http/www/phl82/php/mail_lote/atra*&lt;br /&gt;
aler*=/var/www/http/www/phl82/php/mail_lote/aler*&lt;br /&gt;
disp*=/var/www/http/www/phl82/php/mail_lote/disp*&lt;br /&gt;
usua*=/var/www/http/www/phl82/php/mail_lote/usua*&lt;br /&gt;
phl.css=/var/www/http/www/phl82/css/phl.css&lt;br /&gt;
tab_*=/var/www/http/cgi-bin/phl82/tabs/tab_*&lt;br /&gt;
&lt;br /&gt;
verifique se o arquivo  foi alterado corretamente:&lt;br /&gt;
# more cgi-bin/phl82.cip&lt;br /&gt;
&lt;br /&gt;
Feito isso, vamos criar um link do PHL para o diretorio CGI do apache:&lt;br /&gt;
&lt;br /&gt;
# ln -s /var/www/http/cgi-bin/*   /usr/lib/cgi-bin/.&lt;br /&gt;
&lt;br /&gt;
Vamos criar outro link, do PHL82 para a raiz do diretorio apache, assim deixamos o sistema PHL acessivel pelo navegador.&lt;br /&gt;
&lt;br /&gt;
# ln -s /var/www/http/www/phl82  /var/www/.&lt;br /&gt;
&lt;br /&gt;
chown www-data.www-data /var/www/http -R&lt;br /&gt;
&lt;br /&gt;
Agora já podemos acessar o PHL pelo navegador, http://ip_servidor/phl82/&lt;br /&gt;
&lt;br /&gt;
Se você quer acessar apenas o endereço do servidor e ir direto ao PHL82, faça o link do phl82/index.html para o document root do apache /var/www&lt;br /&gt;
&lt;br /&gt;
criando link:&lt;br /&gt;
# ln -s http/www/phl82/index.html    /var/www/. -f&lt;br /&gt;
&lt;br /&gt;
agora é só acessar o http://ip_servidor com o navegador que irá abrir diretamente o PHL82.&lt;br /&gt;
&lt;br /&gt;
Feito!&lt;br /&gt;
:D&lt;br /&gt;
&lt;br /&gt;
Tiago de Souza Moraes&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=840</id>
		<title>Pontão Nós Digitais</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Pont%C3%A3o_N%C3%B3s_Digitais&amp;diff=840"/>
		<updated>2009-12-08T12:57:21Z</updated>

		<summary type="html">&lt;p&gt;Teagom: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center&amp;quot;&amp;gt;[[Imagem:logonos.png|http://www.nosdigitais.teia.org.br]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--- Caixa do Centro ----&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;border-spacing:8px;margin:0px -8px&amp;quot;&lt;br /&gt;
| style=&amp;quot;width: 60%; border: 3px solid #8B8989; background-color: #EEE9E9; vertical-align: top;  -moz-border-radius:10px&amp;quot; | &lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;5&amp;quot; style=&amp;quot;vertical-align:top; background-color:#EEE9E9;  -moz-border-radius:10px&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color: #8B8989; font-family:Verdana, Arial, Helvetica, sans-serif; font-size: 100%; border: 1px solid #000000; text-align: left;  padding-left: 7px;   -moz-border-radius:10px&amp;quot;  |[[Imagem:Pontodecultura-logop.png|30px]] Bem-vindo à '''Wiki do Pontão Nós Digitais'''!&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:Esta Wiki tem por papel principal servir de espaço virtual para:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:* Registro das atividades de mapeamento dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt;&lt;br /&gt;
:* Registro das atividades de formação dos Pontos de Cultura do estado de São Paulo que possuem trabalhos com Cultura Digital;&amp;lt;br&amp;gt;&lt;br /&gt;
:* Documentação de soluções baseadas no conceito de Redes Livres.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:Esperamos que todos possam fazer uso consciente e enriquecedor desta que pretende ser, entre outras, uma ferramenta importante de troca entre usuários de Redes Livres.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; width=100% align=center&lt;br /&gt;
|width=33% valign=top|{{Caixa|cor1=#D2691E|cor2=#FFCC33|cor3=#FFFF99|titulo=Documentação sobre Sistemas GNU/Linux e Redes (Diskless/LTSP/Outras)|conteudo=[[Imagem:Redes_icon.png‎|right|60px]]&lt;br /&gt;
1 [[Debian Lenny - Instalação]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.1 [[Lista de Comandos Básicos GNU/Linux]]&amp;lt;br&amp;gt;&lt;br /&gt;
:1.2 [[ Instalação Wireless, ACER 5040 e LENOVO SL400, atheros e 5100 Intel 802.11n,802.11b e 802.11g]]&amp;lt;br&amp;gt; &lt;br /&gt;
2 [[Modelos de Rede]]&amp;lt;br&amp;gt;&lt;br /&gt;
:2.1 [[LTSP - Linux Terminal Server Project]]&amp;lt;br&amp;gt;&lt;br /&gt;
:2.2 [[LTSP4.2 no Debian Lenny]]&amp;lt;br&amp;gt;&lt;br /&gt;
:2.3 [[Diskless]]&amp;lt;br&amp;gt;&lt;br /&gt;
3 [[Gerenciar Biblioteca]]&amp;lt;br&amp;gt;&lt;br /&gt;
:3.1 [[Instalando o PHL ]]&lt;br /&gt;
4 [[Usando Pacman]] &amp;lt;br&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
|width=33% valign=top|{{Caixa|cor1=#e31b23|cor2=#eb4f55|cor3=#f5a3a7|titulo=Soluções utilizadas pelos Pontos (Arquitetura de redes/Distros/Softwares)|conteudo=[[Imagem:Editor-texto90px.png‎|right|50px]]&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
  category=Solucoes dos Pontos&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt; }} &lt;br /&gt;
&lt;br /&gt;
|width=33% valign=top|{{Caixa|cor1=#D2691E|cor2=#FFCC33|cor3=#FFFF99|titulo=Oficinas realizadas|conteudo=[[Imagem:Editor-texto90px.png‎|right|50px]]&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
  category=oficinas&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt; }} &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; width=90% align=center&lt;br /&gt;
|width=40% valign=top|{{Caixa|cor1=#B8860B|cor2=#DAA520|cor3=#EEDD82|titulo=Mapeamento dos Pontos de SP que Trabalham com Cultura Digital|conteudo= &lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
    category=Pontos de Cultura&lt;br /&gt;
    count=10&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
|width=40% valign=top|{{Caixa|cor1=#36648B|cor2=#007FFF|cor3=#87CEFF|titulo=Descrição do Role dos Instrutores|conteudo=&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
  category=Role&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; width=90% align=center&lt;br /&gt;
&lt;br /&gt;
|width=33% valign=top| &lt;br /&gt;
{{Caixa|cor1=#6C7B8B|cor2=#778899|cor3=#BEBEBE|titulo=Gráfico|conteudo=[[Imagem: Art-palette.png‎‎|right|45px]]&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
  category=Grafico&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
}} &lt;br /&gt;
&lt;br /&gt;
|width=33% valign=top|&lt;br /&gt;
{{Caixa|cor1=#6E8B3D|cor2=#A2CD5A|cor3=#CAFF70|titulo=Audio|conteudo=[[Imagem:Nota_musical01.png|right|45px]]&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
  category=Audio&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;  &amp;lt;br /&amp;gt; }} &lt;br /&gt;
&lt;br /&gt;
|width=33% valign=top|&lt;br /&gt;
{{Caixa|cor1=#EE9A00|cor2=#FFD700|cor3=#FFFF00|titulo=Vídeo|conteudo=[[Imagem:Countdown_film.jpg‎|right|45px]]&lt;br /&gt;
&amp;lt;DynamicPageList&amp;gt;&lt;br /&gt;
  category=Video&lt;br /&gt;
  count=10&lt;br /&gt;
&amp;lt;/DynamicPageList&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt; &amp;lt;br /&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; cellspacing=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot; width=100% align=center&lt;br /&gt;
|width=33% valign=top|{{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Novos Artigos|conteudo=&lt;br /&gt;
&amp;lt;DynamicArticleList&amp;gt;&lt;br /&gt;
  type=new&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/DynamicArticleList&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
|width=33% valign=top|{{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Atualizados|conteudo=&lt;br /&gt;
&amp;lt;DynamicArticleList&amp;gt;&lt;br /&gt;
  type=update&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/DynamicArticleList&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
|width=33% valign=top|{{Caixa|cor1=#DDDDA4|cor2=#F0F3CD|cor3=#FEFFF2|titulo=Artigos Quentes|conteudo=&lt;br /&gt;
&amp;lt;DynamicArticleList&amp;gt;&lt;br /&gt;
  type=hot&lt;br /&gt;
  count=5&lt;br /&gt;
&amp;lt;/DynamicArticleList&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
|}&lt;br /&gt;
----&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless&amp;diff=690</id>
		<title>Diskless</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Diskless&amp;diff=690"/>
		<updated>2009-11-18T13:41:42Z</updated>

		<summary type="html">&lt;p&gt;Teagom: /* Como funciona? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[imagem:Modelo 3 - rede centralizada - diskless-fine.png|thumb|right||650px|Modelo de rede baseada no conceito de Terminais Inteligentes. Clique na imagem para ampliar.]]&lt;br /&gt;
&lt;br /&gt;
== Sistema Diskless ==&lt;br /&gt;
=== O que é Diskless? ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; É um conjunto de serviços, instalados em um servidor, que fornecem todos os arquivos necessários para a montagem de um sistema operacional transparente - cliente -, via rede, como se fosse local.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt; Seu conceito de uso está baseado na idéia de rede centralizada formada por Fat Clients ou Terminais Inteligentes, na qual cada computador-cliente é dependente de um servidor. Diferentemente do modelo Thin Client (Terminais Inteligentes), este modelo utiliza o processamento e os recursos que o computador-cliente oferece. Na prática isso significa que quanto mais recursos de hardware o computador-cliente oferece mais desempenho a estação poderá ter. &amp;lt;/p&amp;gt;&lt;br /&gt;
=== Histórico ===&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;O intento de criar, dentro de um modelo centralizado, um software ou um conjunto de ferramentas que atendessem, administrativamente, computadores-clientes com mais recursos de hardware foi uma preocupação de muitos programadores durante bastante tempo na história da evolução do computadores pessoais. &amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p align=”Justify”&amp;gt;Partindo dessa necessidade e desta problemática, a empresa [http://www.async.com.br/ Async Open Source] criou a solução Diskless Desktop, uma arquitetura de rede que, como o próprio nome diz, trabalha sem disco rígido e possibilita compartilhamento de arquivos, impressoras, serviço de e-mail, intranet e bases de dados, ficando os dados de seus usuários em servidores protegidos. Esta documentação é fruto da releitura da pequena documentação inicial produzida pela Async Open Source e pela contribuição dos instrutores do Pontão Nós Digitais.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Vantagens e desvantagens ===&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellpadding=&amp;quot;1&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#98FB98;&amp;quot;&amp;gt;Vantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Segurança de um sistema operacional GNU/Linux'''&lt;br /&gt;
::Usar um sistema operacional GNU/Linux como provedor de serviços em servidor aumenta consideravelmente a segurança do sistema operacional em si e a segurança dos dados armazenados por ele.&lt;br /&gt;
&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Atualização de fácil administração'''&lt;br /&gt;
::Quando temos uma rede descentralizada, a atualização dos sistemas operacionais que compõem a rede, em muitos casos, torna-se bastante demorada e despendiosa ao Administrador de Rede. Utilizando uma rede baseada em Terminais Inteligentes esta problemática deixa de existir pois a atualização do servidor tem efeito para todos os terminais.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Inserção fácil de novas máquinas na Rede'''&lt;br /&gt;
::Colocar um novo computador na Rede de Terminais Inteligentes é muito mais fácil, bastando ao administrador editar alguns poucos arquivos!&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Acesso aos seus arquivos em qualquer computador-cliente'''&lt;br /&gt;
&lt;br /&gt;
::Imagine uma rede com 10 computadores na qual todos aqueles que fazem uso destas máquinas diariamente não tem máquina definida para trabalhar. Imagine um telecentro com 20 (vinte) ou mais computadores cujos utilizadores podem armazenar seus arquivos por um determinado período de tempo. Como fica o gerenciamento dos arquivos utilizados por essas pessoas? Numa rede descentralizada cada qual terá de utilizar o mesmo computador que utilizou no dia anterior. Isto não ocorre no uso de Terminais Inteligentes. Todos os arquivos ficam salvos no servidor, dentro da pasta pessoal de cada usuário, e o acesso a eles pode se dar a partir de qualquer computador-cliente.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
:* '''Economia de valor na compra de disco'''&lt;br /&gt;
::Terminais inteligentes não fazem uso de disco rígido - Hard Disk - para armazenamento de quaisquer dados. Isto diminui o valor de custo empregado na montagem de uma rede além de contar com a diminuição de ruido do disco rígido - sempre presente em máquinas desktop completas.&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;th style=&amp;quot;background:#FFD700;&amp;quot;&amp;gt;Desvantagens&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Efeito para todos os terminais em caso de problema, quebra do sistema'''&lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt; &lt;br /&gt;
:* '''Chaves criptografadas para cada cliente''' &lt;br /&gt;
&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Como funciona? ===&lt;br /&gt;
Tudo começa pela interface/placa de rede ethernet, pois é o ponto de partida para a configuração do computador-cliente. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carregará o driver e as informações da rede local passada pelo serviço '''DHCP''' e '''TFTP'''. Nesse momento já teremos a placa de rede com um ip e o tftp será o responsável pela transferência dos arquivos iniciais do sistema.&lt;br /&gt;
										&lt;br /&gt;
Outro serviço importante é o NFS. Ele será o responsável para que o computador-cliente tenha acesso aos arquivos do servidor. Após montado, o sistema está mapeado para executar os próximos serviços e carregar os restante dos arquivos necessários da Diskless. &lt;br /&gt;
&lt;br /&gt;
NIS tem o papel de validação do usuário e senha do computador cliente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 	+------------------------------	+				&lt;br /&gt;
 	|	    SERVIDOR            |                           COMPUTADOR CLIENTE, SEM DISCO RIGIDO.&lt;br /&gt;
         |                               |		            +---------------+&lt;br /&gt;
 	|  +-------------------------+	|          REDE LAN 	    |		    |&lt;br /&gt;
 	|  |     01 DHCP	     |	| &amp;lt;------------------------&amp;gt;|    CLIENTE    |&lt;br /&gt;
 	|  |     02 TFPT-BOOT	     |	|               	    |               |&lt;br /&gt;
 	|  |     03 NFS	             |	|			    +---------------+&lt;br /&gt;
 	|  |	 04 NIS	             |	|                      		&lt;br /&gt;
 	|  |	 05 OUTROS	     |	|&lt;br /&gt;
 	|  |	 ...                 |	|&lt;br /&gt;
 	|  +-------------------------+	|&lt;br /&gt;
 	|		      ^         |&lt;br /&gt;
 	|		      |         | &lt;br /&gt;
         |  Sistema Diskless   v         |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  |    /export              |  |&lt;br /&gt;
         |  |                         |  |&lt;br /&gt;
         |  +-------------------------+  |&lt;br /&gt;
         |                               |    &lt;br /&gt;
         +------------------------------ +&lt;br /&gt;
&lt;br /&gt;
=== Tutorial de Instalação ===&lt;br /&gt;
Este tutorial é dividido em duas partes principais: Servidor e Cliente. Em cada uma das partes será tratado o modelo de construção de cada um destes elementos. Aqui está elencado passo-a-passo todo processo de montagem de uma rede baseada no modelo de Terminais Inteligentes - Fat Client.&lt;br /&gt;
&lt;br /&gt;
=== Variáveis de ambiente ===&lt;br /&gt;
Variáveis de ambiente '''DESSE EXEMPLO''', faça as alterações necessárias de acordo com o seu ambiente.&lt;br /&gt;
&lt;br /&gt;
REDE&lt;br /&gt;
 endereço 192.168.0.0&lt;br /&gt;
 netmask 255.255.255.0&lt;br /&gt;
 broadcast 192.168.0.255&lt;br /&gt;
 dominio reggae.com.br&lt;br /&gt;
&lt;br /&gt;
SERVIDOR&lt;br /&gt;
 ip 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
INTERFACES DE REDE SERVIDOR (placa de rede)&lt;br /&gt;
 eth0 - rede local / LAN&lt;br /&gt;
 eth1 - internet   / WAN&lt;br /&gt;
&lt;br /&gt;
CLIENTES&lt;br /&gt;
 jimicliff 192.168.0.10 &lt;br /&gt;
 natirutis 192.168.0.11&lt;br /&gt;
&lt;br /&gt;
NIS &lt;br /&gt;
 domain rock&lt;br /&gt;
&lt;br /&gt;
=== Ambiente de comandos ===&lt;br /&gt;
Quando executado o comando '''sudo chroot /export/diskless/.''' estaremos simulando um cliente Diskless para algumas operações que só funcionam se o sistema existiver '''montado'''.  Qualquer comando que for executado depois desse, ('''sudo chroot /export/diskless/.''')  está sendo executado dentro da Diskless, no cliente Diskless, por isso sempre verifique em qual ambiente você está antes de executar qualquer comando. A documentação foi dividida em duas partes, servido e cliente para evitar erros.&lt;br /&gt;
&lt;br /&gt;
linha de comando do servidor:&lt;br /&gt;
              bobmarley@bobmarley:/export$ sudo chroot /export/diskless&lt;br /&gt;
              [sudo] password for bobmarley: &amp;lt;digite a senha&amp;gt;&lt;br /&gt;
&lt;br /&gt;
linha de comando da Diskless:&lt;br /&gt;
Aqui já estamos simulando o sistema Diskless&lt;br /&gt;
              root@bobmarley:/# &lt;br /&gt;
&lt;br /&gt;
Tudo que estiver dentro do quadro serrilhado e '''negrito''' é um comando:&lt;br /&gt;
 ''' COMANDO '''&lt;br /&gt;
&lt;br /&gt;
dentro do quadro serrilhado é um texto informativo importante ou o conteudo de arquivo seguido do comando em negrito:  &lt;br /&gt;
 CONTEUDOO DO ARQUIVO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Estrutura de diretórios ===&lt;br /&gt;
Até o final da documentação, você terá criado a estrutura de diretórios abaixo, '''NÂO É NECESSÁRIO CRIAR NADA AGORA'''&lt;br /&gt;
&lt;br /&gt;
 	/								(raiz)&lt;br /&gt;
 	/export/hardy							(diskless image)&lt;br /&gt;
 	/export/state		  			                (Diretorio temporario /var dos clientes)&lt;br /&gt;
 	/export/diskless -&amp;gt; hardy					(link diskless)&lt;br /&gt;
 	/export/tftpboot/boot						(sistema de boot)&lt;br /&gt;
 	/export/tftpboot/boot/vmlinuz     -&amp;gt; ../../diskless/vmlinuz	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/initrd.img  -&amp;gt; ../../diskless/initrd.img	(link para arquivo do sistema)&lt;br /&gt;
 	/export/tftpboot/boot/generic.script			        (FTPT Boot)&lt;br /&gt;
 	/export/tftpboot/pxe					        (Imagem boot-rom)&lt;br /&gt;
&lt;br /&gt;
=== Placa rede Cliente ===&lt;br /&gt;
Essa é uma parte bastante importante na Diskless. Partimos do princípio que o cliente não tem sistema algum para iniciar. Para todo cliente deve existir uma placa de rede Ethernet 10/100 ou 10/100/1000 mbit, quanto mais rápida melhor. Temos que descobrir a marca e modelo da placa de rede do cliente para fazer a configuração personalizada no DHCP para cada cliente.&lt;br /&gt;
&lt;br /&gt;
Nessa configuração utilizaremos a imagem GPXE para a placa de rede ethernet se comunicar com o servidor a partir do serviço DHCP. Abordaremos mais na configuração do DHCP. (http://etherboot.org/wiki/start#etherbootgpxe_wiki)&lt;br /&gt;
Leia, http://etherboot.org/wiki/romburning&lt;br /&gt;
&lt;br /&gt;
=== Abordando problemas com /var ===&lt;br /&gt;
------------------------&lt;br /&gt;
No /var não é preciso criar diretório/arquivos, pois tem dois scripts que irão realizar isso.&lt;br /&gt;
/var é um diretório do sistema que inclui diversos arquivos do tipo, histórico do sistema, erros, estado atual de cada serviço e outros, gerando um log.&lt;br /&gt;
Como a Diskless é uma “imagem” de um sistema operacional, tudo mostra que todos os clientes teriam o mesmo /VAR, com isso, clientes diferentes precisam fazer tarefas diferentes no mesmo arquivo ao mesmo tempo.&lt;br /&gt;
Por isso o /var de cada cliente deverá ser montado separado. Não haverá alteração para o cliente, mas no servidor esses arquivos serão guardados em  '''/export/state/nome_cliente/var'''.&lt;br /&gt;
&lt;br /&gt;
== Servidor: instalando o sistema ==&lt;br /&gt;
O servidor dos Terminais Inteligentes será o provedor de acesso de sistema de todos os demais computadores-clientes da rede. Sua configuração e instalação é mais demorada e deve ser feita com zelo e critério, pois este será a base dos demais serviços do qual desfrutarão os computadores-clientes.&lt;br /&gt;
&lt;br /&gt;
=== Instalando GNU/Linux Ubuntu 8.04 ===&lt;br /&gt;
-----------------------------------------&lt;br /&gt;
Instale o sistema operacional GNU/Linux Ubuntu 8.04 Servidor ou Destkop na máquina que será o servidor de sua rede. Segue o modelo a seguir para um servidor que irá ter muitos usuários e arquivos comuns entre eles.&lt;br /&gt;
&lt;br /&gt;
'''Qual a diferença?'''&lt;br /&gt;
  Ubuntu Server&lt;br /&gt;
   Tempo de atualização, quatro anos&lt;br /&gt;
   Opção de RAID para os discos&lt;br /&gt;
   Não instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
  Ubuntu Desktop&lt;br /&gt;
   Tempo de atualização, dois anos&lt;br /&gt;
   Sem Opção de RAID para os discos&lt;br /&gt;
   Instala parte gráfica por padrão&lt;br /&gt;
&lt;br /&gt;
'''- Importante -'''&lt;br /&gt;
Durante a instalação, particione o disco com um ponto de montagem chamado '''/export'''. Este ponto de montagem será o local onde ficarão armazenados todos os arquivos do sistema Diskless.&lt;br /&gt;
&lt;br /&gt;
 Suponhamos um HD de 120GB como exemplo, ajuste de acordo com suas necessidades:&lt;br /&gt;
 49GB       /		(raiz, /boot /usr /var /tmp outros)&lt;br /&gt;
 35GB 	    /home       (arquivos dos usuários)&lt;br /&gt;
 35GB 	    /export     (arquivos do sistema diskless)&lt;br /&gt;
 1GB 	    swap        (sistema de memória temporária) &lt;br /&gt;
&lt;br /&gt;
É importante alertar que a tendência do tamanho dos arquivos e das imagens de cada cliente Diskless é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade de clientes e usuários na rede.&lt;br /&gt;
&lt;br /&gt;
Feito o particionamento, faça a instalação padrão do sistema escolhendo um usuário e senha que terá permissão de root para os próximos passos.&lt;br /&gt;
&lt;br /&gt;
Após iniciar o sistema volte a este ponto e prossiga com as orientações do tutorial.&lt;br /&gt;
&lt;br /&gt;
Para iniciar a contrução da Diskless, faz-se necessário a criação de alguns diretórios próprios. Crie os diretórios.&lt;br /&gt;
&lt;br /&gt;
Comando para criar a Estrutura de Diretórios do Diskless.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe'''&lt;br /&gt;
&lt;br /&gt;
Remover tabela de montagem e fazer um link para outro arquivo&lt;br /&gt;
 '''sudo rm /etc/mtab'''&lt;br /&gt;
 '''sudo ln -s /proc/mounts /etc/mtab'''&lt;br /&gt;
&lt;br /&gt;
Criar link de diretorio hardy para ambiente diskless. Hardy é o nome da versão do Ubuntu que vamos usar e para facilitar a identificação de versão e organização criamos o dirtorio com próprio nome.&lt;br /&gt;
 '''cd /export'''&lt;br /&gt;
 '''sudo ln -s hardy diskless'''&lt;br /&gt;
 '''cd /export/diskless'''&lt;br /&gt;
&lt;br /&gt;
Criar o arquivo '''/export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /export/tftpboot/boot/generic.script'''&lt;br /&gt;
&lt;br /&gt;
conteudo:&lt;br /&gt;
&lt;br /&gt;
 #!gpxe &lt;br /&gt;
 kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash &lt;br /&gt;
 initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img&lt;br /&gt;
 boot&lt;br /&gt;
&lt;br /&gt;
=== Configurando arquivos de interface de rede ===&lt;br /&gt;
&lt;br /&gt;
Partimos do princípio que todos os clientes terão acesso a internet, por isso o servidor deve ter duas placas de rede, uma onde chega a internet (rede WAN) e outra que atenderá os clientes da diskless (rede LAN).&lt;br /&gt;
&lt;br /&gt;
Para esse exemplo usaremos a range de IP 192.168.0.0 para a rede LAN, pode ser alterado de acordo com a sua necessidade. O IP da rede WAN normalmente é fornecido pelo provedor quando não existe um IP fixo, utilizaremos um exemplo para  diferenciar uma rede da outra.&lt;br /&gt;
&lt;br /&gt;
Vamos PÁRAR ao serviço de rede:&lt;br /&gt;
&lt;br /&gt;
 '''sudo /etc/init.d/networking stop'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo, '''/etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo nano /etc/network/interfaces'''&lt;br /&gt;
&lt;br /&gt;
conteudo do arquivo:&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
 # REDE LAN&lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 	address 192.168.0.1	   &lt;br /&gt;
        # ip do servidor&lt;br /&gt;
 	netmask 255.255.255.0&lt;br /&gt;
        # mascara de rede&lt;br /&gt;
        broadcast 192.168.0.255    &lt;br /&gt;
 	network 192.168.0.0&lt;br /&gt;
        # classe da rede geral&lt;br /&gt;
	&lt;br /&gt;
 # REDE WAN&lt;br /&gt;
 auto eth1&lt;br /&gt;
 iface eth1 inet dhcp&lt;br /&gt;
 # para ip dinamico. pode variar dependendo da sua conexão.&lt;br /&gt;
&lt;br /&gt;
Iniciaro serviço de rede: &lt;br /&gt;
 '''sudo /etc/init.d/networking start'''&lt;br /&gt;
&lt;br /&gt;
=== Compartilhando Internet ===&lt;br /&gt;
&lt;br /&gt;
Lembramos que eth0 é placa de rede LAN, e interface de rede eth1 e para internet/WAN, o nat deve ser feito sempre para a interface de internet/WAN, faça as modificações necessárias se precisar.&amp;lt;br&amp;gt;&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/rc.local''' e adicione as seguintes linhas:&lt;br /&gt;
&lt;br /&gt;
 # LIMPA REGRAS&lt;br /&gt;
 iptables -F &lt;br /&gt;
 iptables -X &lt;br /&gt;
 iptables -Z &lt;br /&gt;
&lt;br /&gt;
 # NAT &lt;br /&gt;
 iptables -F -t nat &lt;br /&gt;
 iptables -Z -t nat &lt;br /&gt;
 iptables -X -t nat&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 # CARREGA MODULOS&lt;br /&gt;
 modprobe iptable_nat &lt;br /&gt;
 modprobe ip_conntrack_ftp &lt;br /&gt;
 modprobe ip_conntrack &lt;br /&gt;
 modprobe ip_nat_ftp&lt;br /&gt;
&lt;br /&gt;
 iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE&lt;br /&gt;
 #                               a ethX deve apontar sua interface Wan/Internet&lt;br /&gt;
 exit 0&lt;br /&gt;
&lt;br /&gt;
Rodar o script para o compartilhamento de internet ter efeito.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/rc.local'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/sysctl.conf''' e descomente as linhas que por padrão vem comentada:&lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv4 &lt;br /&gt;
 net.ipv4.ip_forward=1 &lt;br /&gt;
 # Uncomment the next line to enable packet forwarding for IPv6 &lt;br /&gt;
 net.ipv6.ip_forward=1&lt;br /&gt;
&lt;br /&gt;
Carregar configurações:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo sysctl -p'''&lt;br /&gt;
&lt;br /&gt;
Pode aparecer uma mensagem dizendo que IPv6 não esta &amp;quot;conhecido&amp;quot; &amp;quot;habilitado&amp;quot;...não se preocupar. Rede IPv6 não esta usando.&lt;br /&gt;
&lt;br /&gt;
=== Atualizando lista de programas ===&lt;br /&gt;
Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo apt-get update'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
aguarde até finalizar a atualização.&lt;br /&gt;
&lt;br /&gt;
=== ROM MATIC ===&lt;br /&gt;
Placa rede Cliente&lt;br /&gt;
&lt;br /&gt;
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.&amp;lt;br&amp;gt;&lt;br /&gt;
O endereço http://rom-o-matic.net é o site onde encontraremos o PXE para download e configurar o serviço DHCP, abra o endereço no navegador.&lt;br /&gt;
&lt;br /&gt;
Passos:&amp;lt;br&amp;gt;&lt;br /&gt;
   No computador client, rode o live cd do ubuntu para encontrar as informações necessárias.&amp;lt;br&amp;gt; leia, http://etherboot.org/wiki/romburning &amp;lt;br&amp;gt;&lt;br /&gt;
'''#lspci -vnn | grep Ethernet''' &lt;br /&gt;
 03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX '''[14e4:170c]''' (rev 02) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
para exemplo, vamos usar o '''b44:14e4170c -- [14e4,170c], vendor and device IDs (14e4 e 170c respectivamente). ''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
lembre-se que o código dever ser trocado o : por ,  ficando assim '''14e4,170c''' &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:&lt;br /&gt;
&lt;br /&gt;
Escolha a marca e versão da placa de rede &amp;lt;br&amp;gt; &lt;br /&gt;
1 - Choose NIC/ROM type:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Escolha o formato '''PXE'''&lt;br /&gt;
2 - Choose ROM output format:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Download&lt;br /&gt;
3 - “GET ROOM”&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Salve na sua Area de trabalho (Desktop) e depois copie com permissão de root para dentro do diretório '''/export/tftpboot/pxe/'''. Para o exemplo, o nome desse arquivo será rom-matic'''.pxe'''&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Exemplo: &lt;br /&gt;
'''&lt;br /&gt;
 '''cd &amp;lt;enter&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
 '''sudo cp Desktop/gpxe-git-b44.pxe  /export/tftpboot/pxe/'''&lt;br /&gt;
&lt;br /&gt;
Se o seu Ubuntu está em português o diretorio Desktop muda de nome:&amp;lt;br&amp;gt;&lt;br /&gt;
sudo cp Área\ de\ Trabalho/gpxe-git-b44.pxe   /export/tftpboot/pxe/&lt;br /&gt;
&lt;br /&gt;
=== Serviço DHCP ===&lt;br /&gt;
&lt;br /&gt;
Antes de qualquer coisa precisamos instalar o pacote DHCP:&lt;br /&gt;
 '''sudo apt-get install dhcp3-server'''&lt;br /&gt;
&lt;br /&gt;
Mova o arquivo original para deixar ele como esta.&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo mv /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.original '''&lt;br /&gt;
&lt;br /&gt;
Obtenha o número MAC - endereço físico - dos computadores clientes.&lt;br /&gt;
&lt;br /&gt;
 Dica: para obter o endereço físico do computador-cliente você poderá usar o comando '''ifconfig'''.&lt;br /&gt;
 Proceda da seguinte maneira: no computador cliente, insira um live cd e faça-o rodar.&lt;br /&gt;
 Abra um terminal de comandos ou use o sistema diretamente no modo texto. No terminal, digite '''ifconfig''' e veja a linha:&lt;br /&gt;
 ''eth0      Link encap:Ethernet  Endereço de HW '''00:00:ec:5d:c3:33''' ''&lt;br /&gt;
 O número em negrito é o endereço físico da placa de rede do cliente.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''' e adicione as linhas indicadas nos comentários.&lt;br /&gt;
&lt;br /&gt;
 authoritative;&lt;br /&gt;
 use-host-decl-names on;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # gPXE stuff - Padrao PXE&lt;br /&gt;
 option space gpxe; &lt;br /&gt;
 option gpxe-encap-opts code 175 = encapsulate gpxe; &lt;br /&gt;
 option gpxe.bus-id code 177 = string; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Sub-rede &lt;br /&gt;
 subnet 192.168.0.0 netmask 255.255.255.0 { &lt;br /&gt;
   # IP servidor, caminho raiz para os arquivos necessários&lt;br /&gt;
   option root-path &amp;quot;192.168.0.1:/export/diskless&amp;quot;;&lt;br /&gt;
   # Gateway&lt;br /&gt;
   option routers 192.168.0.1;&lt;br /&gt;
   # DNS&lt;br /&gt;
   option domain-name-servers 192.168.0.1;&lt;br /&gt;
   # Dominio	&lt;br /&gt;
   option domain-name &amp;quot;raggea.com.br&amp;quot;;&lt;br /&gt;
 &amp;lt;br&amp;gt;  &lt;br /&gt;
   # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Religar o dhcp3-server:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo /etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
esse é um log do cerviço que está funcionando corretamente, &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''comando tail -f /var/log/syslog'''&lt;br /&gt;
&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Internet Systems Consortium DHCP Server V3.0.6&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: Copyright 2004-2007 Internet Systems Consortium.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: All rights reserved.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: For info, please visit http://www.isc.org/sw/dhcp/&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:45 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 deleted host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 new dynamic host decls to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: Wrote 0 leases to leases file.&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: No subnet declaration for eth0 (200.200.200.2) REDE WAN &amp;lt;br&amp;gt; &lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: ** Ignoring requests on eth0.  If this is not what&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    you want, please write a subnet declaration&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    in your dhcpd.conf file for the network segment&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd:    to which interface eth0 is attached. **&amp;lt;br&amp;gt;&lt;br /&gt;
Sep  1 16:09:46 bobmarley dhcpd: &lt;br /&gt;
&lt;br /&gt;
A linha '''No subnet declaration for eth0 (200.200.200.2) REDE WAN ** Ignoring requests on eth0''' &amp;lt;br&amp;gt;&lt;br /&gt;
diz que requisições vinda pela ETH0 serão ignoradas.&lt;br /&gt;
 &lt;br /&gt;
===Servidor: adicionando máquinas===&lt;br /&gt;
&lt;br /&gt;
'''Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 127.0.1.1       bobmarley&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
listar todas seus terminais aqui.&lt;br /&gt;
Não remover nada, apenas adicionar, a ordem não tem efeito no resultado.&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts.allow'''&lt;br /&gt;
conteudo&lt;br /&gt;
 ALL : 192.168.0.0&lt;br /&gt;
&lt;br /&gt;
===Servidor: TFPT-HPA===&lt;br /&gt;
--------------&lt;br /&gt;
Antes de qualquer coisa, instale o pacote necessário:&amp;lt;br&amp;gt;&lt;br /&gt;
'''sudo apt-get install tftpd-hpa'''&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''sudo nano /etc/inetd.conf''' como mostra a seguir:&amp;lt;br&amp;gt;&lt;br /&gt;
De:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv&lt;br /&gt;
&lt;br /&gt;
=== Debootstrap ===&lt;br /&gt;
Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, nesse momento os arquivos da Diskless serão instalado em /export/hardy.&lt;br /&gt;
&lt;br /&gt;
Instale o pacote:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo apt-get install debootstrap'''&lt;br /&gt;
&lt;br /&gt;
E em seguinda execute o debootstrap:&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''sudo debootstrap hardy /export/hardy'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e espere, isso pode levar horas dependendo a máquina.&lt;br /&gt;
&lt;br /&gt;
 I: Configuring libc6...&lt;br /&gt;
 I: Configuring initramfs-tools...&lt;br /&gt;
 I: Base system installed successfully.&lt;br /&gt;
&lt;br /&gt;
Se terminar a instalação com frase acima...foi tudo certo.&lt;br /&gt;
&lt;br /&gt;
=== Serviço NFS ===&lt;br /&gt;
Criar links de boot&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vamos para o diretŕio do sistema &lt;br /&gt;
 '''cd /export/tftpboot/boot'''&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/vmlinuz vmlinuz'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
criando links simbólicos do sistema para o boot:&lt;br /&gt;
 '''sudo ln -s ../../diskless/initrd.img  initrd.img'''&lt;br /&gt;
&lt;br /&gt;
etwork File System, é com essa serviço que vamos acessar e tornar os arquivos remotos como se fossem locais, de modo transparente.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes NFS:&lt;br /&gt;
 '''sudo apt-get install nfs-common nfs-kernel-server'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/exports''' para permitir a montagem do cliente&lt;br /&gt;
 '''sudo nano /etc/exports'''&lt;br /&gt;
&lt;br /&gt;
conteudo&lt;br /&gt;
&lt;br /&gt;
 /home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) &lt;br /&gt;
 /export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	&lt;br /&gt;
&lt;br /&gt;
Reiniciar o serviço NFS&lt;br /&gt;
 '''sudo /etc/init.d/nfs-common restart'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nfs-kernel-server restart'''&lt;br /&gt;
&lt;br /&gt;
=== Serviço NIS === &lt;br /&gt;
&lt;br /&gt;
NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.&lt;br /&gt;
&lt;br /&gt;
Instalando pacotes:&lt;br /&gt;
 '''sudo apt-get install portmap nis'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: '''rock'''&lt;br /&gt;
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/default/nis''' e altere o parâmentro NISSERVER:&lt;br /&gt;
 # Are we a NIS server and if so what kind (values: false, slave, master)?&lt;br /&gt;
 de NISSERVER=false&lt;br /&gt;
 para NISSERVER=master&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/yp.conf''' e adicione a seguinte linha: &lt;br /&gt;
  # ypserver ypserver.network.com&lt;br /&gt;
  ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''sudo nano /etc/ypserv.securenets''' coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.&lt;br /&gt;
 # Always allow access for localhost&lt;br /&gt;
 255.0.0.0	127.0.0.0&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # This line gives access to everybody. PLEASE ADJUST!&lt;br /&gt;
 # 0.0.0.0		0.0.0.0&lt;br /&gt;
 # comente esta linha acima&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # esta e sua rede local do diskless&lt;br /&gt;
 255.255.255.0 	192.168.0.0&lt;br /&gt;
&lt;br /&gt;
Agora que temos tudo configurado, vamos iniciar servidor NIS:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /etc/init.d/nis restart'''&lt;br /&gt;
&lt;br /&gt;
E também temos que gerar o base de dados no NIS pela primeira vez, execute:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo /usr/lib/yp/ypinit -m'''&lt;br /&gt;
&lt;br /&gt;
Vai aparecer o nome do '''SERVIDOR bobmarley''' nas seguintes linhas,  verifique se o nome do servidor está correto e tecle '''CTRL+D'', veja se o resultado é o mesmo que segue abaixo seguido de '''UPDATING....'''&lt;br /&gt;
&lt;br /&gt;
 bobmarley@bobmarley:/export/tftpboot/boot$ sudo /usr/lib/yp/ypinit -m&lt;br /&gt;
 At this point, we have to construct a list of the hosts which will run NIS&lt;br /&gt;
 servers.  bobmarley is in the list of NIS server hosts.  Please continue to add&lt;br /&gt;
 the names for the other hosts, one per line.  When you are done with the&lt;br /&gt;
 list, type a &amp;lt;control D&amp;gt;.&lt;br /&gt;
        next host to add:  bobmarley&lt;br /&gt;
        next host to add:  &lt;br /&gt;
 The current list of NIS servers looks like this:&lt;br /&gt;
 bobmarley&lt;br /&gt;
 Is this correct?  [y/n: y]  y  &lt;br /&gt;
 We need a few minutes to build the databases...&lt;br /&gt;
 Building /var/yp/rock/ypservers...&lt;br /&gt;
 Running /var/yp/Makefile...&lt;br /&gt;
 make[1]: Entrando no diretório `/var/yp/rock'&lt;br /&gt;
 Updating passwd.byname...&lt;br /&gt;
 Updating passwd.byuid...&lt;br /&gt;
 Updating group.byname...&lt;br /&gt;
 Updating group.bygid...&lt;br /&gt;
 Updating hosts.byname...&lt;br /&gt;
 Updating hosts.byaddr...&lt;br /&gt;
 Updating rpc.byname...&lt;br /&gt;
 Updating rpc.bynumber...&lt;br /&gt;
 Updating services.byname...&lt;br /&gt;
 Updating services.byservicename...&lt;br /&gt;
 Updating netid.byname...&lt;br /&gt;
 Updating protocols.bynumber...&lt;br /&gt;
 Updating protocols.byname...&lt;br /&gt;
 Updating netgroup...&lt;br /&gt;
 Updating netgroup.byhost...&lt;br /&gt;
 Updating netgroup.byuser...&lt;br /&gt;
 Updating shadow.byname...&lt;br /&gt;
 make[1]: Saindo do diretório `/var/yp/rock'&lt;br /&gt;
&lt;br /&gt;
 bobmarley has been set up as a NIS master server.&lt;br /&gt;
&lt;br /&gt;
 Now you can run ypinit -s bobmarley on all slave server.&lt;br /&gt;
&lt;br /&gt;
Para testar o NIS digitamos: '''ypcat passwd''', se tudo estiver ok!, aparecerá uma linha nesse formato:&lt;br /&gt;
 usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash&lt;br /&gt;
&lt;br /&gt;
=== Log ===&lt;br /&gt;
&lt;br /&gt;
Segue baixo o log do DHCP do SERVIDOR das REQUISIÇÕES do CLIENTE DISKLESS. Esse sistema  não está funcionando por completo, porque ainda temos que configura-ló. '''Na boot, o YPBIND vai ficar procurando um servidor que não existe, isso é normal, espere até que o sistema continue com o boot.'''&lt;br /&gt;
&lt;br /&gt;
sudo tail -n 100 /var/log/syslog&lt;br /&gt;
&lt;br /&gt;
 Sep 21 15:02:52 bobmarley kernel: [  225.436112] eth1: link down&lt;br /&gt;
 Sep 21 15:02:56 bobmarley kernel: [  229.204523] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:13 bobmarley kernel: [  246.298295] eth1: link down&lt;br /&gt;
 Sep 21 15:03:15 bobmarley kernel: [  247.941352] eth1: link up, 100Mbps, full-duplex, lpa 0xC1E1&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPDISCOVER from '''00:15:f2:c8:22:2f via eth1'''&lt;br /&gt;
 Sep 21 15:03:17 bobmarley dhcpd: DHCPOFFER on '''192.168.0.10''' to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPREQUEST for '''192.168.0.10''' (192.168.0.1) from '''00:15:f2:c8:22:2f''' via eth1&lt;br /&gt;
 Sep 21 15:03:21 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6491]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley -s[6491]: tftp: client does not accept options &lt;br /&gt;
 '''Sep 21 15:03:21 bobmarley -s[6493]: RRQ from 192.168.0.10 filename /export/tftpboot/pxe/gpxe-git-forcedeth.pxe''' &lt;br /&gt;
 Sep 21 15:03:21 bobmarley kernel: [  254.048871] eth1: link down&lt;br /&gt;
 Sep 21 15:03:23 bobmarley kernel: [  256.158345] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:25 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:26 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:28 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:29 bobmarley -s[6495]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/generic.script''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6498]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/vmlinuz''' &lt;br /&gt;
 '''Sep 21 15:03:30 bobmarley -s[6501]: RRQ from 192.168.0.10 filename /export/tftpboot/boot/initrd.img''' &lt;br /&gt;
 Sep 21 15:03:35 bobmarley kernel: [  268.189017] eth1: link down&lt;br /&gt;
 Sep 21 15:03:37 bobmarley kernel: [  270.289487] eth1: link up, 100Mbps, full-duplex, lpa 0xC5E1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPDISCOVER from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPOFFER on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:39 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPREQUEST for 192.168.0.10 (192.168.0.1) from 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 Sep 21 15:03:40 bobmarley dhcpd: DHCPACK on 192.168.0.10 to 00:15:f2:c8:22:2f via eth1&lt;br /&gt;
 '''Sep 21 15:03:40 bobmarley mountd[5554]: authenticated mount request from 192.168.0.10:1016 for /export/hardy (/export)'''&lt;br /&gt;
&lt;br /&gt;
Aqui finalizamos as configurações do servidor.&lt;br /&gt;
&lt;br /&gt;
'''NAO SEGUIR PARA O PRÓXIMO PASSO SE O COMPUTADOR CLIENTE NÃO ESTIVER BOOTANDO MESMO COM OS ERROS APARECENDO NO BOOT!'''&lt;br /&gt;
&lt;br /&gt;
== Cliente: Configurando o sistema ==&lt;br /&gt;
&lt;br /&gt;
Todas as configurações intituladas '''Cliente''' deve ser feitas no ambiente '''chroot'''. Todos os arquivos dentro de '''/export/diskless''' são do sistema Diskless, qualquer arquivo modificado dentro desse diretório tem efeito direto sobre o sistema Diskless. &lt;br /&gt;
&lt;br /&gt;
''' ERRO '''&lt;br /&gt;
&lt;br /&gt;
 perl: warning: Setting locale failed.&lt;br /&gt;
 perl: warning: Please check that your locale settings:&lt;br /&gt;
        LANGUAGE = &amp;quot;pt_BR:pt:en&amp;quot;,&lt;br /&gt;
        LC_ALL = (unset),&lt;br /&gt;
        LANG = &amp;quot;pt_BR.UTF-8&amp;quot;&lt;br /&gt;
     are supported and installed on your system.&lt;br /&gt;
 perl: warning: Falling back to the standard locale (&amp;quot;C&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
'''Esse erro vai aparecer na hora de instalar de alguns pacotes, não se preocupe ele será resolvido nos próximos passos.'''&lt;br /&gt;
&lt;br /&gt;
=== Inicial ===&lt;br /&gt;
&lt;br /&gt;
Aqui simulamos o ambiente cliente Diskless: &lt;br /&gt;
'''sudo chroot /export/diskless'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A partir de agora estaremos configurando o sistema Diskless que será usado pelos clientes.&amp;lt;br&amp;gt;&lt;br /&gt;
Vamos instalar e configurar cada serviço para não perder o foco.&lt;br /&gt;
&lt;br /&gt;
Montamos o sistema /proc:&lt;br /&gt;
 '''mount none /proc -t proc'''&lt;br /&gt;
&lt;br /&gt;
atualizando a lista de pacotes:&lt;br /&gt;
 '''apt-get update'''&lt;br /&gt;
&lt;br /&gt;
pacotes de linguagen:&lt;br /&gt;
 '''apt-get install language-pack-br language-pack-br-base'''&lt;br /&gt;
&lt;br /&gt;
A seguir vamos apagar o NOME do COMPUTADOR CLIENTE. como se trata de diversas máquinas com nomes diferentes, o nome ao cliente será fornecido pelo serviço de DHCP do servidor.&lt;br /&gt;
&lt;br /&gt;
Apagar o arquivo:&lt;br /&gt;
 '''rm /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
vamos criar um arquivo em branco:&lt;br /&gt;
 '''touch /etc/hostname'''&lt;br /&gt;
&lt;br /&gt;
Criar diretorio, por padrão isso não vem criado. &amp;lt;br&amp;gt;&lt;br /&gt;
 '''mkdir /var/run/network'''&lt;br /&gt;
&lt;br /&gt;
Somente adicione''' o nomes das maquinas cliente no arquivo:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''sudo nano /etc/hosts'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
&lt;br /&gt;
'''Configurando rede de cliente/Ambiente Diskless'''&lt;br /&gt;
&lt;br /&gt;
Vamos editar o arquivo '''/etc/network/interfaces''' e adicionar as linhas abaixo, por padrão esse arquivo está vazio.&lt;br /&gt;
&lt;br /&gt;
''' NAO ADICIONAR AUTO ETH0, QUEBRA O SISTEMA NA INICIALIZAÇÃO '''&lt;br /&gt;
&lt;br /&gt;
 nano /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
 auto lo&lt;br /&gt;
   iface lo inet loopback&lt;br /&gt;
   iface eth0 inet dhcp &lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
Portmap é um serviço que &amp;quot;lista&amp;quot; alguns serviços do sistema, não todos, o serviço tem que ter suporte ao Portmap.&lt;br /&gt;
Edite o arquivo '''/etc/hosts.allow''' para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:&lt;br /&gt;
 '''nano /etc/hosts.allow'''&lt;br /&gt;
&lt;br /&gt;
adicione o parâmetro na última linha&lt;br /&gt;
 '''portmap : 192.168.0.1'''&lt;br /&gt;
&lt;br /&gt;
===NIS===&lt;br /&gt;
NIS é o serviço responsavél pela autenticação do usuário e senha. Mais informações [http://www.linux-nis.org/]&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o NIS&amp;lt;br /&amp;gt;&lt;br /&gt;
 '''apt-get install nis'''&lt;br /&gt;
&lt;br /&gt;
Vamos Aumentar o tempo para a execução do NIS, pois o NIS necessita que outros serviços estajam funcionando para iniciar.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''update-rc.d -f nis remove'''&amp;lt;br&amp;gt;&lt;br /&gt;
 '''ln -s /etc/init.d/nis /etc/rcS.d/S70nis'''&lt;br /&gt;
&lt;br /&gt;
Aqui vamos configurar o NIS para ele se comunicar com o servidor, onde vai validar o usuário e senha. Edite o arquivo '''/etc/yp.conf''' e configure a linha do servidor:&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/yp.conf'''&lt;br /&gt;
&lt;br /&gt;
adicionar o parâmetro na ultima linha:&lt;br /&gt;
&lt;br /&gt;
 ypserver 192.168.0.1&lt;br /&gt;
&lt;br /&gt;
salva e sai do editor.&lt;br /&gt;
&lt;br /&gt;
A diferença entre os três próximos arquivos é a quantidade de dois pontos (:) de uma para o outro, deve ser colocado no final de cada arquivo. Acontece o seguinte, o NIS verifica o arquivo de autenticação local, não encontrando aquele usuário na maquina local, ele vai verificar no servidor se existe ou não.&lt;br /&gt;
&lt;br /&gt;
Abra os arquivos a seguir e adicione as linhas necessárias:&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/passwd''' e adicione na última linha:&lt;br /&gt;
 +::::::  #(seis :)&lt;br /&gt;
&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/group''' e adicione na última linha: &lt;br /&gt;
 +:::  #(três :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/shadow''' e adicione na última linha:&lt;br /&gt;
 +::::::::  #(oito :)&lt;br /&gt;
salva e sai.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
UM EXEMPLO DO /etc/passwd&lt;br /&gt;
&lt;br /&gt;
 stunnel4:x:123:126::/var/run/stunnel4:/bin/false&lt;br /&gt;
 festival:x:124:29::/home/festival:/bin/false&lt;br /&gt;
 '''+::::::  &amp;lt; ULTIMA LINHA &amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
=== Linux Image (Kernel) ===&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o Kernel (linux-image):&lt;br /&gt;
'''apt-get install linux-image'''&lt;br /&gt;
&lt;br /&gt;
Como o sistema funciona com base em um rede e não local (discos, HD), precisamos alterar o parametro '''BOOT''' do arquivo '''/etc/initramfs-tools/initramfs.conf''' e gerar o novo '''initrd.img''' em seguida. Com isso faremos com que o sistema de boot do cliente (sistema Diskless) carregue modulos de rede para ter acesso ao servidor e seus serviços.&lt;br /&gt;
&lt;br /&gt;
* Precisamos alterar o arquivo: '''nano /etc/initramfs-tools/initramfs.conf''' para poder bootar via NFS, altere: &lt;br /&gt;
 de BOOT=local &lt;br /&gt;
 para '''BOOT=nfs''' &lt;br /&gt;
&lt;br /&gt;
salva e saia do editor.&lt;br /&gt;
&lt;br /&gt;
Agora que temos o arquivo alterado, vamos atualizar o sistema de boot:&lt;br /&gt;
&lt;br /&gt;
* Recriando o initrd.img:&amp;lt;br&amp;gt;&lt;br /&gt;
'''update-initramfs -u'''&lt;br /&gt;
&lt;br /&gt;
esse mensagem deverá aparecer:&lt;br /&gt;
&lt;br /&gt;
 root@bobmarley:/# update-initramfs -u&lt;br /&gt;
 update-initramfs: Generating /boot/initrd.img-2.6.24-16-generic&lt;br /&gt;
&lt;br /&gt;
=== NFS ===&lt;br /&gt;
NFS é serviço para disponibilizar um determinado diretorio do servidor em modo transparente, como se os arquivos estivessem localmente, evitando problemas. É extramente necessário o funcionamento desse serviço, já que os arquivos do sistema é todo remoto em todo o tempo para o client, boot, trabalho e na hora de desligar.&lt;br /&gt;
&lt;br /&gt;
Vamos instalar o serviço:&lt;br /&gt;
&lt;br /&gt;
 '''apt-get install nfs-common'''&lt;br /&gt;
&lt;br /&gt;
'''Configurando sistema de arquivos'''&lt;br /&gt;
&lt;br /&gt;
Inserir estas linhas no arquivo '''/etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/fstab'''&lt;br /&gt;
&lt;br /&gt;
 /dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 &lt;br /&gt;
 none            /tmp            tmpfs   defaults                0 0 &lt;br /&gt;
 none            /media          tmpfs   defaults                0 0 &lt;br /&gt;
 none            /var/tmp        tmpfs   noexec                  0 0 &lt;br /&gt;
 none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 &lt;br /&gt;
 192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Scripts de inicialização, /VAR ===&lt;br /&gt;
&lt;br /&gt;
Esses scripts foram desenvolvidos para resolver o problema do /var.&amp;lt;br&amp;gt;&lt;br /&gt;
Ele faz algumas verificações de diretórios, caso não exista, ele crie.&amp;lt;br&amp;gt;&lt;br /&gt;
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.&lt;br /&gt;
&lt;br /&gt;
'''Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor, se estiver usando as configurações e parâmetros do tutorial não é necessário alterar nada.'''&lt;br /&gt;
&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;     # possivel alterar para sua rede&lt;br /&gt;
&lt;br /&gt;
Criar arquivo '''mountnfs-diskless.sh'''.  Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 '''nano /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          mountnfs-diskless&lt;br /&gt;
 # Required-Start:    mountnfs&lt;br /&gt;
 # Required-Stop:&lt;br /&gt;
 # Default-Start:     S&lt;br /&gt;
 # Default-Stop:&lt;br /&gt;
 # Short-Description: Mount diskless file systems&lt;br /&gt;
 # Description:       Mount diskless file systems&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Mounting station-specific directories&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 MTOPTS=&amp;quot;rsize=32768,async,wsize=32768,nfsvers=3,tcp&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 # Start off with mounting the state directory&lt;br /&gt;
 mount -o $MTOPTS $SERVER:/export/state /state&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/spool/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating spool directory $DIR&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
     ln -s ../mail mail&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     # Copy postfix skeleton environment over&lt;br /&gt;
     #cp -R --preserve /etc/server-skel/postfix/ .&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir cron&lt;br /&gt;
     mkdir texmf &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
     #chmod 710 cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/ &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/var/log/&amp;quot;&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Creating log directory $DIR&amp;quot;&lt;br /&gt;
     mkdir $DIR&lt;br /&gt;
     cd $DIR&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     mkdir apt&lt;br /&gt;
     mkdir ksymoops&lt;br /&gt;
     mkdir gdm&lt;br /&gt;
     mkdir news&lt;br /&gt;
     chown news:proxy news&lt;br /&gt;
     chmod 2755 news&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir postgresql&lt;br /&gt;
     #chgrp postgres postgresql&lt;br /&gt;
     #chmod 775 postgresql&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
     #mkdir cups&lt;br /&gt;
     #chown cupsys:lpadmin cups&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/state/`hostname`/etc/cups/&amp;quot;&lt;br /&gt;
 if [ -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;Mounting station-specific CUPS directory&amp;quot;&lt;br /&gt;
     mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups&lt;br /&gt;
 fi&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 : exit 0&lt;br /&gt;
&lt;br /&gt;
Criar arquivo: '''nfs-common-diskless'''. Inicialmente estará em branco pois o arquivo está sendo criado.&lt;br /&gt;
 &lt;br /&gt;
 '''nano /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
 ### BEGIN INIT INFO&lt;br /&gt;
 # Provides:          nfs-common-diskless&lt;br /&gt;
 # Required-Start:    $network&lt;br /&gt;
 # Default-Start:     2 3 4 5&lt;br /&gt;
 # Default-Stop:      0 1 6&lt;br /&gt;
 # Short-Description: NFS support files common to client and server&lt;br /&gt;
 # Description:       NFS is a popular protocol for file sharing across&lt;br /&gt;
 #                    TCP/IP networks. This service provides various&lt;br /&gt;
 #                    support functions for NFS mounts.&lt;br /&gt;
 ### END INIT INFO&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 . /lib/lsb/init-functions&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DESC=&amp;quot;NFS diskless common setup&amp;quot;&lt;br /&gt;
 SERVER=&amp;quot;192.168.0.1&amp;quot;&lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 log_daemon_msg &amp;quot;Starting $DESC&amp;quot; &lt;br /&gt;
 &amp;lt;br&amp;gt;&lt;br /&gt;
 DIR=&amp;quot;/var/lib/nfs/`hostname`&amp;quot;&lt;br /&gt;
 if mount | grep -qs /var/lib/nfs; then&lt;br /&gt;
     log_daemon_msg &amp;quot;NFS state directory already mounted&amp;quot;&lt;br /&gt;
 exit 1&lt;br /&gt;
 fi&lt;br /&gt;
 if [ ! -d $DIR ] ; then&lt;br /&gt;
     log_daemon_msg &amp;quot;New machine; creating NFS directory.&amp;quot;&lt;br /&gt;
     mkdir -p $DIR&lt;br /&gt;
 fi&lt;br /&gt;
 mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/&lt;br /&gt;
 log_end_msg $?&lt;br /&gt;
&lt;br /&gt;
Vamos dar permissão de execução para os dois arquivos criados:&amp;lt;br&amp;gt;&lt;br /&gt;
 '''chmod +x /etc/init.d/mountnfs-diskless.sh'''&lt;br /&gt;
depois&lt;br /&gt;
 '''chmod +x /etc/init.d/nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
Fazer links simbólicos para a inicialização do sistema:&lt;br /&gt;
&lt;br /&gt;
 '''ln -s /etc/init.d/mountnfs-diskless.sh  /etc/rcS.d/S45mountnfs-diskless'''&lt;br /&gt;
depois&lt;br /&gt;
 '''ln -s /etc/init.d/nfs-common-diskless   /etc/rcS.d/S43nfs-common-diskless'''&lt;br /&gt;
&lt;br /&gt;
== '''Ambiente gráfico ''' ==&lt;br /&gt;
&lt;br /&gt;
Para finalizar vamos instalar o ambiente gráfico.&lt;br /&gt;
&lt;br /&gt;
X-Window é o servidor gráfico do Linux, sem ele os gerenciadores de janela, Gnome, KDE, XFCE e outros não tem funcionalidade, por isso vamos instalar o servidor mais o gerenciador de janelas padrão do Ubuntu, o Gnome.&lt;br /&gt;
&lt;br /&gt;
Isso pode levar um bom tempo dependendo da velocidade da conexão da internet que você tem, por isso vá tomar uma água, ler e-mails, jogar WII e outros... ;)&lt;br /&gt;
&lt;br /&gt;
Demora porque será feito o download dos arquivos necessários, +-500MB. Essa instalação irá resolver o problema de &amp;quot;PERL LOCALES&amp;quot; que falamos acima. &lt;br /&gt;
&lt;br /&gt;
 '''apt-get install ubuntu-desktop'''&lt;br /&gt;
&lt;br /&gt;
Chegamos ao final da configuração do cliente. Teoricamente o sistema Diskless já está funcionando. O não funcionamento dos serviços, devem ser verificados os '''LOGS''' do sistema no servidor, '''/var/log/syslog''' ou  '''/var/log/messages'''. Os serviços foram montados com nivél de prioridade, pois um depende do outro para funcionar.&lt;br /&gt;
&lt;br /&gt;
== Acesso de admin == &lt;br /&gt;
Como o próprio nome diz, admistrador. Um usuário com acesso ao admin, no grupo admin, tem acesso a comandos restritos como instalar programas, atualizações do sistema, adicionar novos usuários e etc. Tudo isso com o comando '''sudo &amp;lt;comando&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Para acesso admin dentro do sistema Diskless, adicione o grupo ADMIN:&lt;br /&gt;
 '''groupadd admin'''&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''/etc/sudoers'''. &lt;br /&gt;
&lt;br /&gt;
Altere a linha ou adicione&lt;br /&gt;
&lt;br /&gt;
 '''nano /etc/sudoers'''&lt;br /&gt;
de&lt;br /&gt;
  #%sudo ALL=NOPASSWD: ALL&lt;br /&gt;
&lt;br /&gt;
Para:&lt;br /&gt;
 %admin  ALL=(ALL) ALL&lt;br /&gt;
&lt;br /&gt;
Colocando um usuário no grupo admin:&lt;br /&gt;
 '''sudo usermod -g admin'''&lt;br /&gt;
&lt;br /&gt;
veja mais opções em chmod --help.  Diferença entre -g e -G&lt;br /&gt;
&lt;br /&gt;
== Adicionando nova máquina no sistema Diskless ==&lt;br /&gt;
&lt;br /&gt;
Editar o arquivo '''sudo nano /etc/dhcp3/dhcpd.conf''', e colocar os parametros necessários para o novo cliente.&lt;br /&gt;
Não esquecendo que precisamos saber a marca e modelo da placa de rede, vai para o passo 1.3.1 caso não lembre.&lt;br /&gt;
  &lt;br /&gt;
 host natirutis {  &lt;br /&gt;
  		# endereço fisico da placa de rede do cliente&lt;br /&gt;
          	hardware ethernet XX:XX:XX:XX:XX; &lt;br /&gt;
  		# IP que esse cliente irá receber&lt;br /&gt;
          	fixed-address 192.168.0.11; &lt;br /&gt;
          	if not exists gpxe.bus-id { &lt;br /&gt;
   			# Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
               	filename &amp;quot;/export/tftpboot/pxe/rom-matic.pxe&amp;quot;; &lt;br /&gt;
           	} else { &lt;br /&gt;
   			# Script de inicialização com parametros do tftpboot&lt;br /&gt;
              	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
          	}	 &lt;br /&gt;
      	}&lt;br /&gt;
&lt;br /&gt;
uma parte desse arquivo desse ficar assim:&lt;br /&gt;
&lt;br /&gt;
 # nome da maquina, utilizaremos em outros arquivos&lt;br /&gt;
   host jimicliff { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:22:54; &lt;br /&gt;
         # IP que esse cliente irá receber&lt;br /&gt;
      	 fixed-address 192.168.0.10; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
  	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-b44.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
 		# Script de inicialização com parametros do tftpboot&lt;br /&gt;
 	       	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
         }	 &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
   host natirutis { &lt;br /&gt;
         # endereço fisico da placa de rede do cliente&lt;br /&gt;
         hardware ethernet 00:15:f2:c8:23:54; &lt;br /&gt;
 	 # IP que esse cliente irá receber&lt;br /&gt;
       	 fixed-address 192.168.0.11; &lt;br /&gt;
         if not exists gpxe.bus-id { &lt;br /&gt;
 	 # Drive da placa de rede do cliente, passo 1.3.1&lt;br /&gt;
       		filename &amp;quot;/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe&amp;quot;;&lt;br /&gt;
       	} else { &lt;br /&gt;
   	# Script de inicialização com parametros do tftpboot&lt;br /&gt;
        	filename &amp;quot;/export/tftpboot/boot/generic.script&amp;quot;; &lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
reinciar o serviço DHCPD para que as alterações tenham efeito:&lt;br /&gt;
 '''/etc/init.d/dhcp3-server restart'''&lt;br /&gt;
&lt;br /&gt;
Edite o arquivo '''/etc/hosts''' e declare o nome e IP do novo terminal na ultima linha:&lt;br /&gt;
 &lt;br /&gt;
 127.0.0.1       localhost&lt;br /&gt;
 192.168.0.1     bobmarley&lt;br /&gt;
 192.168.0.10 	 jimicliff&lt;br /&gt;
 '''192.168.0.11 	 natirutis'''&lt;br /&gt;
&lt;br /&gt;
salva e sai do arquivo.&lt;br /&gt;
&lt;br /&gt;
Com todas essas inserções no sistema, o novo terminal pode ser ligado. A principio os sistema /var será criado no boot, por isso reinicie o terminal.&lt;br /&gt;
Usando qualquer usuário cadastrado no sistema tem acesso ao novo terminal, nenhuma mudança é necessária.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Criando usuário ==&lt;br /&gt;
Antes disso vamos alterar algumas coisas no sistema.&lt;br /&gt;
&lt;br /&gt;
Alterar o arquivo '''/etc/adduser.conf'''. Esse arquivo tem os parâmetros do comando '''adduser''' que por padrão não vem configurado com os grupos necessários para o sistema. Esses grupos servem para que o usuário tenha acesso a alguns dispositivos da máquina, som, impressora, pendrive e outros.&lt;br /&gt;
&lt;br /&gt;
procure pelo parametro:&lt;br /&gt;
 #EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha, ficando:&lt;br /&gt;
 EXTRA_GROUPS=&amp;quot;dialout cdrom floppy audio video plugdev users&amp;quot;&lt;br /&gt;
&lt;br /&gt;
procure por:&lt;br /&gt;
 #ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
remove a # inicial da linha:&lt;br /&gt;
 ADD_EXTRA_GROUPS=1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Adicionando usuario com login Rogers&lt;br /&gt;
 '''adduser rogers'''&lt;br /&gt;
digite e confirme a senha&lt;br /&gt;
&lt;br /&gt;
Depois de adicionar um usuário, é necessário gerar o novo banco de acessos do NIS, para isso execute os comandos a seguir:&lt;br /&gt;
&lt;br /&gt;
Colocar na base de dados do NIS&lt;br /&gt;
 '''cd /var/yp'''&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
gerar o banco de dados no sistema NIS&lt;br /&gt;
 '''make'''&lt;br /&gt;
&lt;br /&gt;
[[Categoria:Diskless]]&lt;br /&gt;
[[Categoria:Redes]]&lt;br /&gt;
[[Categoria:Linux]]&lt;/div&gt;</summary>
		<author><name>Teagom</name></author>
	</entry>
</feed>