sexta-feira, 16 de abril de 2010

Configurando NFS server!

Existem milhares de tutoriais na rede explicando como configurar um NFS server e depois explicando como montar em um client.
Beleza, este vai ser mais um porém alguns não explicam algumas coisas que podem ser interessantes e eu vou colocando aqui conforme as necessidades vão aparecendo. 

Como sempre a base dos sistemas é Debian-like, ou seja, Debian, Ubuntu e adjacentes ... 

Pré-requisitos : ter instalado os pacotes nfs-common em todas as máquinas, nfs-kernel-server (server), para instalar podemos usar o apt-get ou aptitude sem maiores problemas. 

Configurando o Server. 

É interessante sabermos quais serão as máquinas client que irão montar a área exportada pelo server, muitas vezes por necessidade ou por preguiça, muitos administradores fazem uma permissão para toda a rede ao invés de restringir o acesso apenas para a máquinas que realmente precisam montar a área. 
Tendo os IPs das máquinas client, é interessante declarar elas no /etc/hosts do server. Muitos já vão dizer que resolvem isso por DNS, mas e se tiver com algum problema com o NFS ? Porque não economizar o tráfego de rede e de acesso ao DNS e resolver isso no próprio servidor NFS? 

1- Editando e inserindo os clients no /etc/hosts do servidor NFS: 

      vi /etc/hosts 



      client-1    10.10.10.11


      client-2    10.10.10.12

2- Criando o compartilhamento NFS, editando o /etc/exports: 

  vi /etc/exports 


 /tmp  client-1(rw,no_root_squash) client-2(rw,no_root_squash)

Explicando um pouco : /tmp é a área do servidor NFS que desejo exportar, em seguida devemos dar um TAB, não use espaço, depois declare os clients e as permissões para cada um deles. 

ATENÇÃO :  Devemos usar TAB para separar a área a ser exportada dos clients, devemos usar apenas espaço para separar os clients e suas regras. 

3- Para subir ou inicializar o serviço de NFS Server, podemos fazê-lo de duas maneiras, direto via /etc/init.d ou pelo comando exportfs. 

# /etc/init.d/nfs-kernel-server start/stop/restart 
 Você pode usar o start para iniciar, stop para parar e o restart irá parar o serviço e em seguida iniciar novamente. 

#exportfs -a 
 A opção -a é a mais comum e usada, ela exporta ou não uma determinada área ou todas, para uma determinada área deve-se especificar a área no final do comando. 


4- Montando a área exportada nos clients. 
 Esta é apenas uma regra simples, básica mas bastante funcional para a montagem. 

# mount -t nfs -o defaults,_netdev server:/tmp /mnt 
   -t especifíca o tipo do sistema de arquivo
  -o defaults - usa valores padrão do mount (rw,async)
      _netdev - explicita que é necessário ter acesso a rede para esta montagem. 
  /mnt é o diretório local (no client) onde desejamos que seja montado o tmp exportado pelo server.

Se quiser colocar no fstab para montagem direta, inclua a seguinte linha: 



server:/tmp   /mnt  nfs   defaults,_netdev   0   0

Uma outra opção de montagem, bem comum é : 

# mount -t nfs -o rw,sync,auto,_netdev server:/tmp /mnt

e para o fstab ficaria assim : 

server:/tmp   /mnt  nfs  rw,sync,auto,_netdev   0  0 



Bom acho que é isso por enquanto... 

segunda-feira, 29 de março de 2010

Rodando VMs (Virtualbox) como um serviço no Windows!

Não é uma característica de grande importância para muitos, mas pra alguns isso pode ser um bom quebra galho !

No Sun Systems News foi publicada a seguinte matéria:
Running VirtualBox VMs as Services in Windows
With VBoxVmService, VMs Truly Run in the Background

Como essa matéria foi escrita pelo Joe Mocker, segue o link com a explicação de tudo !! http://blogs.sun.com/mock/entry/running_virtualbox_vms_as_services

sexta-feira, 19 de março de 2010

DICA - Instalando Debian em Servidor Dell 2900 III

Ouvi algumas pessoas tendo dificuldades em instalar alguns Linux em servidores Dell 2900.

Tive alguns pequenos problemas para instalar sim, mas nada muito grande no início e consegui instalar alguns linux flavors sem muitos problemas. Praticamente eu me dediquei mais aos que prefiro usar e que acredito ser um pouco melhor para meu dia a dia como Debian e seus derivados  e XenEnterprise da Citrix.

No caso do XenEnterprise eu não  tive nenhum problema durante todas as etapas da instalação, foi um processo muito limpo e tranquilo. Já com o Debian (5.0.4) o único probleminha foi com o reconhecimento da placa de rede, e ai que começa nosso principal tema deste post.

O problema de não reconhecer a placa de rede foi fácil de resolver pois foi mostrada um mensagem bem clara de ter perdido ou não achado o drive bnx2-06-4.0.5.fw para a instalação da placa de rede. Agora nada melhor que o Google para nos ajudar, até mesmo para não ter que perder tempo caçando o pacote correto no site da Debian.
Bingoo!! Logo de cara um sinal de eu não podia ser o único com este problema
e realmente não mais, me mostrou que meu raciocínio estava certo, no caminho correto. 
http://insanelabs.com/debian/debian-lenny-cannot-load-broadcom-nic-drivers-asking-for-firmware-bnx2-06-405fw-during-install/

Bem como o site e as dicas explicam, basta baixar o pacote  firmware-bnx2_0.4+etchnhalf.1_all.deb , copiar para um pendrive e na tela de aviso logo em seguida nos dá a opção de podermos tentar instalar o pacote a partir de uma device USB ou mídia removível.

Fácil demais,  parecia até coisa de windows, após colocado o pendrive com o pacote, o sistema já identificou as duas interface da máquina e já me pediu para escolher qual configurar.

Apenas um outro caso, aproveitando, um outro sistema que instalei neste mesmo equipamento foi o FreeNAS, baseado no FreeBSD 7.2, sua instalação também foi muito transparente.

O CentOS 5.4 rodou bem também, mas sem inventar muita coisa, pacotes adicionais não rolou na primeira vez e deixei de lado na segunda vez. Os pacotes comuns para servidor rodou bem e sem problemas.
Reconheceu todas as devices da máquina sem problemas também.


Por enquanto acho que é isso, fui....

quarta-feira, 10 de março de 2010

Dica rápida - Script para conversão de vídeo

Uma dica rápida para conversão de vídeos, podendo ser executado em lotes, ou seja, para podermos converter vários vídeos de uma só vez, coisa que normalmente em Windows teria de ser feito um por vez.

A fonte: http://www.gdhpress.com.br/linux/leia/index.php?p=cap1-15 passado pelo @cassiocardoso


for video in *; do
ffmpeg -i "$video" -f mp4 -vcodec mpeg4 -b 350000 -r 15 -s 320x240 \
-acodec aac -ar 24000 -ab 128 -ac 2 "$video".mp4
done

Para fechar, tenha disponível e instalado na máquina todos os codecs, se acontecerem alguns erros ou queiram fazer um teste antes, recomendo o uso do VLC, pois ele mostra e indica possíveis erros ou a falta de codec instalados.
referente a: Linux, Guia Prático: Usando o terminal (ver no Google Sidewiki)

terça-feira, 9 de março de 2010

SSH conectando Client x Server sem senha

Muitas pessoas precisam estabelecer conexões por ssh entre duas máquinas sem a necessidade de inserir senha mas que seja seguro. Através de algumas experiências, vou estar documentando um procedimento simples para esta tarefa.
As necessidades de exemplo para este tipo de configuração:
  • Automatização de conexão de programas para transferência de arquivos.
  • Sistemas ou aplicações para monitoramento de ambientes remotos.
  • Agilidade para administração de sistemas.
Não irei mencionar passos de instalação e configuração dos programas e servidor ssh.
Este documento terá como base sistemas Linux com o uso de distribuições Debian e Ubuntu.

Em nosso ambiente teremos uma máquina que será a client e uma servidor, em ambas estão instalados os pacotes openssh-client, apenas no server temos instalado o openssh-server.  A versão do protocolo SSH que iremos usar neste exemplo é a versão 2 ou SSH2.


Na máquina client, devemos determinar qual usuário iremos usar para poder se logar no servidor.  Em nosso exemplo vamos eleger o user.
Dentro do diretório /home/user deveremos ter um diretório oculto chamado .ssh, caso não tenha crie este diretório e recomendo fortemente que seja verificado as permissões deste diretório, para incrementar a segurança altere as permissões para 700.

Criando a chave de segurança.
Como a versão do protocolo a ser usado é o SSH2, iremos criar uma chave do tipo rsa:
[user@client ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is:
fb:d2:07:3b:64:b0:a7:13:c0:ae:62:b9:b1:c6:79:04 user@client
       Recomendo que em todas as perguntas seja dado apenas enter, afim de deixar os passphrase vazios. 

Enviando a chave para o servidor

Enviar o arquivo id_rsa.pub para o servidor, para isso podemos usar SFTP que é um sistema de tranferência de arquivos seguro e com base no ssh.
Ao enviar, você já pode salvar o arquivo id_rsa.pub  com outro nome, authorized_keys, ou ainda renomear ele no servidor ou executar o seguinte comendo :
cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys
Evitando problemas de segurança 
No diretório .ssh no servidor verifique as permissões para o arquivo authorized_keys, o ideal é que esteja com as permissões 700
As permissões de diretório também são importantes, principalmente as permissões do diretório .ssh sendo que para este o ideal são permissões 700

Se o ssh server estive iniciado e funcionando corretamente, podemos fazer o teste tentando conectar ao servidor a partir do client e a conexão será estabelecida sem a necessidade do uso da senha do user. 

Alguns links de sugestão e que foram usados para estudo : 
SSH Completo - Artigo do Site Viva o Linux escrito por Leandro Totino Pereira
http://www.vivaolinux.com.br/artigo/SSH-completo-%28passo-a-passo%29?pagina=1


Para Troubleshooting : 
http://sial.org/howto/openssh/publickey-auth/problems/