Diskless

De Pontão Nós Digitais
Revisão de 14h21min de 2 de junho de 2009 por 189.35.24.242 (discussão)
Ir para navegaçãoIr para pesquisar

D I S K L E S S

  • 1 SERVIDOR
  • 1.1 Diskless
  • 1.1.1 O que é?
  • 1.1.2 Vantagem e desvantagem
  • 1.1.3 Como funciona
  • 1.1.4 Placa de rede Cliente
  • 1.1.5 Estrutura de diretório
  • 1.1.6 Problemas com /var
  • 1.2 Instalando Linux Ubuntu 8.04
  • 1.2.1 Particionando disco, export (partição Diskless)
  • 1.2.2 Configurando rede
  • 1.2.3 Compartilhando internet
  • 1.2.4 Atualizando lista de programas
  • 1.3 Instalando serviços iniciais DHCP e TFTP
  • 1.3.1 Placa rede Cliente - http://rom-o-matic.net
  • 1.3.2 DHCP
  • 1.3.3 TFPT-HPA
  • 1.4 Debootstrap
  • 1.5 NFS
  • 1.6 NIS
  • 2 CLIENTE
  • 2.1 Scripts de inicialização, /var
  • 2.2 Rede /etc/network/interfaces
  • 2.3 Configurando partições
  • 2.3.1 /etc/fstab
  • 2.4 NFS
  • 2.5 NIS
  • 2.6 Instalando X Window e Desktop
  • 2.7 Instalando novo cliente


  • 1.1 - Diskless SERVIDOR
  • 1.1.1 – O que é Diskless?

É um conjunto de serviços em um servidor capazes de fornecer todos os arquivo necessários para montar um sistema operacional transparente, como se fosse local.

  • 1.1.2 - Vantagem e desvantagem

Vantagens
Segurança Linux
Atualização de apenas um sistema para efeitos em todos os terminais
Colocar um novo computador na rede
Acesso aos seus arquivos em qualquer computador cliente
Diminui o ruido do disco rídigo
Economia de valor na compra de disco

Desvantagens
Efeito para todos os terminais em caso de problema, quebra do sistema
Chaves criptogradas para cada cliente


1.1.3 – Como funciona?

	+------------------------------	+				+---------------+
	|	SERVIDOR		|	        		|		|
	|				|       ETHERNET 		|		|
	|       01 DHCP			| <------------------------>	|  CLIENTE	|
	|       02 TFPT-BOOT		|               		|               |
	|       03 NFS			|				|		|
	|	04 DISKLESS		|                      		+---------------+
	|	05 NIS			|
	|	06 OUTROS SERVIÇOS	|
	|	07 OUTROS SERVIÇOS	|
	|	08 OUTROS SERVIÇOS	|
	|	09 OUTROS SERVIÇOS	|
	|	10 OUTROS SERVIÇOS	|
	|	11 OUTROS SERVIÇOS	|
	+------------------------------	+


SERVIDOR
1 - Instalando Linux Ubuntu 8.04

1.2.1 - Particionando disco, /export (partição Diskless)
{desenho do cat do /etc/fstab do servidor com particoes ja criada}
O servidor deve ter suas patições comuns e uma /export, onde ficará todo a diskless.

Essa partição deve ter um tamanho razoável dependendo do tamanho total do seu disco.
É sempre bom lembrar que a tendência do tamanho da imagem é sempre aumentar, pois temos os updates, softwares, /var e outros que ocuparam mais espaço no futuro, tudo depende da quantidade clientes na rede.
Acredito que 20GB ou mais é um espaço bom para este exemplo que vamos montar. Crie as partições comuns e uma (/export) onde ficará a diskless.
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.
Após iniciar o sistema volte ao passo 1.1.5 e crie a estrutura de diretórios da Diskless.

  • 1.1.5 – Estrutura de diretórios

Comando para criar a Estrutura de Diretórios do Diskless.
cd /export
sudo mkdir -p hardy state tftpboot/boot tftpboot/pxe

	/								(raiz)
	/export/hardy							(diskless image)
	/export/state							(/var clientes)
	/export/diskless -> hardy					(link diskless)
	/export/diskless/state		  			        (Diretorio temporario /var
	/export/tftpboot/boot						(sistema de boot)
	/export/tftpboot/boot/vmlinuz     -> ../../diskless/vmlinuz	(link para arquivo do sistema)
	/export/tftpboot/boot/initrd.img  -> ../../diskless/initrd.img	(link para arquivo do sistema)
	/export/tftpboot/boot/generic.script			        (FTPT Boot)
	/export/tftpboot/pxe					        (Imagem boot-rom)


SERVIDOR
* 1.1 Rede

Tudo começa pela placa de rede ethernet, pois é tudo que o cliente tem. A partir do boot pela placa de rede, a Diskless começa a funcionar. A placa de rede carrega o drive e as informações da rede local passada pelo serviço DHCP. Nessa hora já temos a placa de rede com um ip e o ftpt é o responsável pela transferência dos arquivos iniciais do sistema.

NFS é o serviço que faz com 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. NIS tem o papel de validação do usuário e senha do computador cliente.

  • 1.1.4 – Placa rede Cliente

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/100mbit, 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.

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)


Remover tabela de montagem e fazer um link para outro arquivo
sudo rm /etc/mtab
sudo ln -s /proc/mounts /etc/mtab

Criar link de diretorio hardy para ambiente diskless:
cd /export
sudo ln -s hardy diskless
cd /export/diskless
sudo mkdir state


Criar o arquivo sudo nano /export/tftpboot/boot/generic.script com o seguinte conteudo:

#!gpxe 
kernel tftp://192.168.0.1//export/tftpboot/boot/vmlinuz vga=normal quiet splash 
initrd tftp://192.168.0.1//export/tftpboot/boot/initrd.img
boot
  • 1.1.6 – Problemas com /var

No /var não é preciso criar diretorio/arquivos, pois tem dois scripts irão realizar isso.
/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.
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.
Por isso o /var de cada cliente deverá ser montado separado. Não haverá aleração para o cliente, mas no servidor esses arquivos serão guardados em /export/state/nome_cliente/var.


  • 1.2.2 – Configurando rede

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).
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.

Encerre a interface de rede:
sudo /etc/init.d/networking stop
Edite o arquivo, sudo nano /etc/network/interfaces

auto lo
iface lo inet loopback

# REDE LAN auto eth0 iface eth0 inet static address 192.168.0.1 # ip do servidor netmask 255.255.255.0 # mascara de rede broadcast 192.168.0.255 network 192.168.0.0 # classe da rede geral
# REDE WAN auto eth1 iface eth1 inet dhcp # para ip dinamico. pode variar dependendo da sua conexao.


Ligar interface de rede:
sudo /etc/init.d/networking start


SERVIDOR

  • 1.2.3 – Compartilhando Internet

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.
Edite o arquivo sudo nano /etc/rc.local e adicione as seguintes linhas:

# LIMPA REGRAS
iptables -F 
iptables -X 
iptables -Z 

# NAT iptables -F -t nat iptables -Z -t nat iptables -X -t nat
# CARREGA MODULOS modprobe iptable_nat modprobe ip_conntrack_ftp modprobe ip_conntrack modprobe ip_nat_ftp
iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE # a ethX deve apontar sua interface Wan/Internet
exit 0


Rodar o script para o compartilhamento de internet ter efeito.
sudo /etc/rc.local

Edite o arquivo sudo nano /etc/sysctl.conf e descomente as linhas que por padrão vem comentada:

# Uncomment the next line to enable packet forwarding for IPv4 
net.ipv4.ip_forward=1 
# Uncomment the next line to enable packet forwarding for IPv6 
net.ipv6.ip_forward=1

Carregar configurações:
sudo sysctl -p

Pode aparecer uma mensagem dizendo que IPv6 não esta "conhecido" "habilitado"...não se preocupar. Rede IPv6 não esta usando.


  • 1.2.4 - Atualizando lista de programas

Agora que temos internet, temos que atualizar a lista de pacotes do Ubuntu para fazer instalar o servidores, segue os passos:\\ sudo apt-get update
aguarde até finalizar a atualização.


SERVIDOR

  • 1.3 - Instalando serviços iniciais DHCP e TFTP

1.3.1 - Placa rede Cliente
ROM-o-matic.net dynamically generates gPXE and Etherboot network booting images.
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.

Passos:
#lspci -vnn | grep Ethernet

03:00.0 Ethernet controller [0200]: Broadcom Corporation BCM4401-B0 100Base-TX [14e4:170c] (rev 02)

[14e4:170c] É o modelo do drive para pegar no: http://rom-o-matic.net/

gPXE Releases; Current top of Development Tree; gPXE git (current-top-of-git-tree) Image Generator:

Escolha a marca e versão da placa de rede e depois botao “GET ROOM” para download. Salve em uma pasta qualquer 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

1.3.2 – DHCP

Antes de qualquer coisa precisamos instalar o pacote DHCP:
sudo apt-get install dhcp3-server

Edite o arquivo sudo nano /etc/dhcp3/dhcpd.conf e adicione as linhas:

authoritative;
use-host-decl-names on;

# gPXE stuff - Padrao PXE option space gpxe; option gpxe-encap-opts code 175 = encapsulate gpxe; option gpxe.bus-id code 177 = string;
# Sub-rede subnet 192.168.0.0 netmask 255.255.255.0 { # IP servidor, caminho raiz para os arquivos necessários option root-path "192.168.0.1:/export/diskless"; # Gateway option routers 192.168.0.1; # DNS option domain-name-servers 192.168.0.1; # Dominio option domain-name "diskless.com.br";
# nome da maquina, utilizaremos em outros arquivos host cliente_diskless0 { # endereço fisico da placa de rede do cliente hardware ethernet 00:15:f2:c8:22:54; # IP que esse cliente irá receber fixed-address 192.168.0.10; if not exists gpxe.bus-id { # Drive da placa de rede do cliente, passo 1.3.1 filename "/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe"; } else { # Script de inicialização com parametros do tftpboot filename "/export/tftpboot/boot/generic.script"; } } host cliente_diskless1 { # endereço fisico da placa de rede do cliente hardware ethernet 00:15:f2:c8:23:54; # IP que esse cliente irá receber fixed-address 192.168.0.11; if not exists gpxe.bus-id { # Drive da placa de rede do cliente, passo 1.3.1 filename "/export/tftpboot/pxe/gpxe-git-forcedeth-10de0057.pxe"; } else { # Script de inicialização com parametros do tftpboot filename "/export/tftpboot/boot/generic.script"; } } }

Religar o dhcp3-server:
sudo /etc/init.d/dhcp3-server restart


SERVIDOR

Adicione o nomes das maquinas cliente no arquivo:
sudo nano /etc/hosts

127.0.0.1     localhost
192.168.0.1   servidor
192.168.0.10 	cliente_diskless0
192.168.0.11 	cliente_diskless1
# listar todas seus clientes aqui
# nao remover nada a mais...apenas adicionar.

Vamos dar permissão para que todas as máquinas da rede local tenham acesso ao portmap, adicione a seguinte linha no arquivo:
sudo nano /etc/hosts.allow

ALL : 192.168.0.0


SERVIDOR

  • 1.3.3 – TFPT-HPA

Antes de qualquer coisa, instale o pacote necessário:
sudo apt-get install tftpd-hpa

Alterar o arquivo sudo nano /etc/inetd.conf como mostra a seguir:
De:

tftp        dgram   udp wait    root    /usr/sbin/in.tftpd  /usr/sbin/in.tftpd -s /var/lib/tftpboot

Para:

tftp        dgram   udp wait    root    /usr/sbin/in.tftpd -s /export/tftpboot/ -r blksize -vvvvvv


  • 1.4 Debootstrap

Debootstrap é uma ferramenta que cria a estrutura do sistema operacional, fazermos junto a configuração do boot.

Instale o pacote:
sudo apt-get install debootstrap

E em seguinda execute o debootstrap:
sudo debootstrap hardy /export/hardy
e espere, isso pode levar horas dependendo a máquina.

I: Configuring libc6...
I: Configuring initramfs-tools...
I: Base system installed successfully.

Se terminar a instalação com frase acima...foi tudo certo.

Terminado o download e instalado os pacotes, vamos reiniciar o sistema/maquina e fazer com que a diskless seja nosso sistema nativo para finalizar a instalação da imagem.

Execute:
sudo chroot /export/diskless
mount none /proc -t proc

a partir de agora estamos dentro da imagem da Diskless.

  • Instalando a imagem:

apt-get install linux-image nano nis

  • Precisamos alterar o arquivo:

nano /etc/initramfs-tools/initramfs.conf
para poder bootar via NFS, alterar de BOOT=local para BOOT=nfs


  • Recriando o initrd.img:

update-initramfs -u


1.5 NIS no Cliente

Aumentar o tempo para a execução do NIS, pois o NIS necessita de outros serviços para iniciar.\\ sudo chroot /export/diskless
update-rc.d -f nis remove
ln -s /etc/init.d/nis /etc/rcS.d/S70nis


SAIA DO CHROOT ANTES DE EXCUTAR OS PRÓXIMOS COMANDOS, DIGITE exit

Criar links de boot
cd /export/tftpboot/boot
sudo ln -s ../../diskless/vmlinuz vmlinuz
sudo ln -s ../../diskless/initrd.img initrd.img

SERVIDOR

  • 1.6 NFS

Network File System, é com essa serviço que vamos acessar e tornar os arquivos remotos com se fossem locais.

Instalando pacotes:
sudo apt-get install nfs-common nfs-kernel-server

Editar o arquivo sudo nano /etc/exports para permitir a montagem do cliente

/home      192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,async) 
/export    192.168.0.0/255.255.255.0(no_root_squash,rw,no_subtree_check,sync,insecure_locks) 	

Reiniciar
sudo /etc/init.d/nfs-common restart
sudo /etc/init.d/nfs-kernel-server restart


SERVIDOR

  • 1.6 NIS

NIS (Network Information Service), responsável pela validação do usuário e senha criados no Servidor.

Instalando pacotes:
sudo apt-get install portmap nis
Durante instalação, será solicitado um nome para o NIS, para exemplo vamos usar: servidor
Poderá ocorrer um erro (verá um [Fail]), mas não se preocupe.

Adicione o nome do servidor NIS da instalação no:
sudo nano /etc/hosts

127.0.0.1     localhost
192.168.0.1 	servidor            # referente ao NIS
192.168.0.10 	cliente_diskless0
192.168.0.11 	cliente_diskless1
# abaixo deixar sem retirar..somente adicionar


Edite o arquivo sudo nano /etc/default/nis e altere o parâmentro NISSERVER que esta no inicio, para:

# Are we a NIS server and if so what kind (values: false, slave, master)?
NISSERVER=master

Edite o arquivo sudo nano /etc/yp.conf e adicione a seguinte linha:

 # ypserver ypserver.network.com
 ypserver 192.168.0.1@]

Edite o arquivo sudo nano /etc/ypserv.securenets coloque as seguintes linhas para que apenas os membros da sua rede local tenham acesso.

# Always allow access for localhost
255.0.0.0	127.0.0.0

# This line gives access to everybody. PLEASE ADJUST! # 0.0.0.0 0.0.0.0 # comente esta linha acima
# esta e sua rede local do diskless 255.255.255.0 192.168.0.0@]

Agora que temos tudo configurado, vamos iniciar servidor NIS:
sudo /etc/init.d/nis restart

E também temos que gerar o base de dados no NIS pela primeira vez, execute:
sudo /usr/lib/yp/ypinit -m

Digite o nome do servidor que escolhemos na instalação do NIS: servidor e tecle CTRL+D para sai.
Em seguida deve aparecer varias linhas contendo a palavra Updating... , fora isso ouve algum erro.

Vai acontece algo proximo a isso:

At this point, we have to construct a list of the hosts which will run NIS
servers.  diskless-laptop is in the list of NIS server hosts.  Please continue to add
the names for the other hosts, one per line.  When you are done with the
list, type a <control D>.
        next host to add:  diskless-desktop
        next host to add:  
The current list of NIS servers looks like this:

diskless-desktop
Is this correct? [y/n: y] y We need a few minutes to build the databases... Building /var/yp/nserver/ypservers... Running /var/yp/Makefile... make[1]: Entering directory `/var/yp/nserver' Updating passwd.byname... Updating passwd.byuid... .....................varios Updating Updating netgroup.byuser... Updating shadow.byname... make[1]: Leaving directory `/var/yp/nserver'
diskless-desktop has been set up as a NIS master server.
Now you can run ypinit -s diskless-desktop on all slave server.


Para testar o NIS digitamos: ypcat passwd, se tudo estiver ok!, aparecerá uma linha nesse formato:

usuario:x:1000::1000:usuario,,,:/home/usuario:/bin/bash

Aqui finalizamos as configurações do servidor.



Cliente/Diskless
2.1 Scripts de inicialização, /var

Esses scripts foram desenvolvidos para resolver o problema do /var.
Ele faz algumas verificações de diretórios, caso não exista, ele crie.
Isso é importante para os computadores que já estão funcionando como aqueles que serão inseridos no futuro.

Edite os dois arquivos e arrume o parametro SERVER de acordo com o IP do seu servidor.

DESC="NFS diskless common setup"
SERVER="192.168.0.1"     # possivel alterar para sua rede

Para executar o próximo passo, temos que ter o sistema da Diskless montado, pois ele irá criar os links:

Remover /etc/hostname do Cliente/Diskless
rm /etc/hostname
touch /etc/hostname

Criar arquivo dentro do Cliente
mkdir /var/run/network


Criar arquivo mountnfs-diskless.sh
nano /etc/init.d/mountnfs-diskless.sh

### BEGIN INIT INFO
# Provides:          mountnfs-diskless
# Required-Start:    mountnfs
# Required-Stop:
# Default-Start:     S
# Default-Stop:
# Short-Description: Mount diskless file systems
# Description:       Mount diskless file systems
### END INIT INFO

. /lib/lsb/init-functions
DESC="NFS diskless common setup" SERVER="192.168.0.1"
log_daemon_msg "Mounting station-specific directories"
MTOPTS="rsize=32768,async,wsize=32768,nfsvers=3,tcp"
# Start off with mounting the state directory mount -o $MTOPTS $SERVER:/export/state /state
DIR="/state/`hostname`/var/spool/" if [ ! -d $DIR ] ; then log_daemon_msg "Creating spool directory $DIR" mkdir -p $DIR cd $DIR ln -s ../mail mail
# Copy postfix skeleton environment over #cp -R --preserve /etc/server-skel/postfix/ .
mkdir cron mkdir texmf
#mkdir cups #chown cupsys:lpadmin cups #chmod 710 cups fi mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/spool/
DIR="/state/`hostname`/var/log/" if [ ! -d $DIR ] ; then log_daemon_msg "Creating log directory $DIR" mkdir $DIR cd $DIR
mkdir apt mkdir ksymoops mkdir gdm mkdir news chown news:proxy news chmod 2755 news
#mkdir postgresql #chgrp postgres postgresql #chmod 775 postgresql
#mkdir cups #chown cupsys:lpadmin cups fi mount -o $MTOPTS,nolock $SERVER:/export${DIR} /var/log/
DIR="/state/`hostname`/etc/cups/" if [ -d $DIR ] ; then log_daemon_msg "Mounting station-specific CUPS directory" mount -o $MTOPTS $SERVER:/export${DIR} /etc/cups fi
log_end_msg $?
: exit 0@]


Criar arquivo: nfs-common-diskless
nano /etc/init.d/nfs-common-diskless

### BEGIN INIT INFO
# Provides:          nfs-common-diskless
# Required-Start:    $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: NFS support files common to client and server
# Description:       NFS is a popular protocol for file sharing across
#                    TCP/IP networks. This service provides various
#                    support functions for NFS mounts.
### END INIT INFO

. /lib/lsb/init-functions
DESC="NFS diskless common setup" SERVER="192.168.0.1"
log_daemon_msg "Starting $DESC"
DIR="/var/lib/nfs/`hostname`" if mount | grep -qs /var/lib/nfs; then log_daemon_msg "NFS state directory already mounted" exit 1 fi if [ ! -d $DIR ] ; then log_daemon_msg "New machine; creating NFS directory." mkdir -p $DIR fi mount -o $MTOPTS,nolock $SERVER:/export/diskless/${DIR} /var/lib/nfs/ log_end_msg $?

Dar permissao de execucao:
chmod +x /etc/init.d/mountnfs-diskless.sh
chmod +x /etc/init.d/nfs-common-diskless

Fazer links simbolicos
ln -s /etc/init.d/mountnfs-diskless.sh /etc/rcS.d/S45mountnfs-diskless
ln -s /etc/init.d/nfs-common-diskless /etc/rcS.d/S43nfs-common-diskless


2.1 – Cliente

A partir de agora estaremos configurando a imagem/ambiente Diskless que será passada aos clientes.
Antes de começarmos, vamos instalar o alguns pacotes necessários com o comando:
apt-get update
mount none /proc -t proc
apt-get install language-pack-br language-pack-br-base
apt-get install nfs-common portmap


  • 2.2 Configurando partições

Inserir estas linhas no arquivo nano /etc/fstab

/dev/root       /               nfs     defaults,rw,nolock,tcp  0 0 
none            /tmp            tmpfs   defaults                0 0 
none            /media          tmpfs   defaults                0 0 
none            /var/tmp        tmpfs   noexec                  0 0 
none            /var/yp/binding tmpfs   defaults,mode=755 	 0 0 
192.168.0.1:/home   /home       nfs  defaults,nfsvers=3,tcp,async,noatime,rw,rsize=32768,wsize=32768 0 0

Altere o valor do ip dentro do /etc/fstab, referente a sua rede:\\

192.168.0.1:/home
  • 2.3 Configurando rede de cliente/Ambiente Diskless

Vamos editar o arquivo nano /etc/network/interfaces e adicionar as linhas abaixo, por padrão esse arquivo está vazio.

auto lo
iface lo inet loopback

iface eth0 inet dhcp


!! NAO ADICIONAR AUTO ETH0 , QUEBRA O SISTEMA NA INICIALIZAÇÃO'


Edite o arquivo nano /etc/hosts.allow , para restrição de conexão, apenas o servidor pode conectar, adiciona a linha:\\

portmap : 192.168.0.1
  • 2.4 NIS

Edite o arquivo nano /etc/yp.conf e configure a linha do servidor.

ypserver 192.168.0.1

para acessar o servidor NIS.

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:

Abra os arquivo:
nano /etc/passwd e adicione

+::::::  #(seis :)

nano /etc/group e adicione

+:::  #(três :)

nano /etc/shadow e adicione

+::::::::  #(oito :)


Para acesso admin dentro do cliente/Ambiente Diskless:
groupadd admin

Editar nano /etc/sudoers
Altere a linha ou adicione

#%sudo ALL=NOPASSWD: ALL

Para:

%admin  ALL=(ALL) ALL
  • 2.5 Instalando X Window e Desktop

apt-get install ubuntu-desktop

Este passo pode demorar, pois sera feito download de arquivos do sistema.


Adicionando mais terminais/maquinas na sua rede.

  • 2.6 Instalando nova máquina

Editar o arquivo sudo nano /etc/dhcp3/dhcpd.conf, e colocar os parametros necessários para o novo cliente.
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.

 host cliente_disklessX {  
 		# endereço fisico da placa de rede do cliente
         	hardware ethernet XX:XX:XX:XX:XX; 
 		# IP que esse cliente irá receber
         	fixed-address 192.168.0.X; 
         	if not exists gpxe.bus-id { 
  			# Drive da placa de rede do cliente, passo 1.3.1
              	filename "/export/tftpboot/pxe/rom-matic.pxe"; 
          	} else { 
  			# Script de inicialização com parametros do tftpboot
             	filename "/export/tftpboot/boot/generic.script"; 
         	}	 
     	}

/etc/init.d/dhcp3-server restart

Abre o arquivo sudo nano /etc/hosts e insere o nome e IP do novo cliente,

 192.168.0.X		cliente_disklessX



Adicionando mais usuarios no servidor para usar nos terminais

*4 - Adicionando mais usuarios.
Adicionando usuario teste
adduser teste

Colocar na base de dados do NIS
cd /var/yp
make


*** SAIA DO CHROOT ANTES DE EXCUTAR OS PRÓXIMOS COMANDOS, DIGITE exit ***