terça-feira, março 23, 2010

FreeNAS – Network Attached Storage (parte03) LAN interface e configuração de IP


Depois de feita a instalação do FreeNAS no seu Cartão de Memória, HardDrive ou PenDrive, e o computador ter sido reiniciado, nós precisaremos inicializar o computador a partir desse dispositivo e configurar algumas coisas.

Depois que o computador foi reiniciado o seguinte menu aparecerá:

"Console setup"
"*********************"
1) Assign Interface
2) Set LAN IP address
3) Reset WebGUI password
4) Reset to factory defaults
5) Ping host
6) Shell
7) Shutdown system
8) PowerOff system


A configuração padrão do FreeNAS é usar o primeiro NIC (Network Interface Card) com o endereço IP 192.168.1.250.

  • Selecione 1 e pressione ‘Enter’ no nome de sua Ethernet Interface (em0 no meu caso, a sua pode ser diferente);

  • Press ‘Enter’ na Opção 1 (Interface), selecione ‘y’ e reset o PC;
(Esse reset é recomendado pelo m0n0wall, autor do FreeNAS, mas talvez seja possível ignorá-lo)
  • Depois que o computador for resetado e o menu aparecer outra vez, selecione a Opção ‘2’DHCP client. Senão, digite sua configuração para o endereço IP (192.168.0.1 and /24 no meu caso); e escolha se você usará ou não

  • Ainda no menu principal, selecione a Opção ‘5’ e ping outro dispositivo da sub-rede e tenha certeza se tudo esta funcionando bem (lembre que não é possível pingar um computador protegido por um FireWall). Desabilite o FireWall primeiro.
Nota: FreeBSD não usa nomes genericos para as interfaces de rede como o Linux (eth0 por exemplo). O nome da interface de rede dependerá do driver usado:

  • fxp0 : Para a primeiro Intel EtherExpress chipset NIC encontrado
  • fxp1 : Para o segungo Intel EtherExpress chipset NIC encontrado
  • bge0: Para o primeiro Broadcom BCM570XX Gigabit NIC encontrado
  • nve0: Para o primeiro nVidia nForce MCP chipset encontrado
  • etc…
Aviso: fwip0 é a porta firewire. Caso você veja fwip0 na sua lista, NÃO USE ISSO.

  • Taxas de transferência do FreeNAS são muito mais dependentes da velocidade da rede muito mais do que da velocidade da CPU e do desempenho da memória;
  • Se sua experiência de utilização do FreeNAS estiver muito lenta tente conectar o Desktop diretamente ao NAS através de um cabo crossover;
  • Configurações de velocidade e de Duplex podem então ser ajustadas e testadas quando tiver um computador diretamente conectado;

Caso qualquer coisa não esteja correta você pode sempre selecionar a opção "4) Reset to factory defaults" e reconfigurar tudo.

No próximo post veremos a configuração básica do NAS

segunda-feira, março 22, 2010

FreeNAS – Network Attached Storage (parte02) instalação


Esse tutorial assume que o computador onde será instalado o FreeNAS é capaz de inicializar a partir de um CD e que possui um HD (também pode ser um pendrive) e que exista um ou mais HDs para o armazenamento.

  • Faça o download da ISO do FreeNAS em um dos links do post anterior e grave a imagem em um CD-ROM;
  • Coloque o CD do FreeNas na badeja e inicialize o computador a partir dele (não coloque sua pendrive agora, coloque-a apenas quando vir o console menu, caso contrário o LiveCD irá escrever suas configurações na raiz de sua pendrive e isso levará a sua instalação a falha);
  • Espere até que o menu de instalação do FreeNAS apareça na tela;
  • Se você quiser instalar o FreeNAS em uma pendrive então a coloque agora, o FreeNAS irá exibir informações do novo dispositivo na tela, pressione 'Enter' para voltar ao console menu;
  • Selecione a opção 9 para instalar o FreeNAS no seu HD ou em sua pendrive

"Console setup"
"*********************"
1) Assign Interface
2) Set LAN IP address
3) Reset WebGUI password
4) Reset to factory defaults
5) Ping host
6) Shell
7) Reboot system
8) Shutdown system
9) Install/Upgrade to hard drive/flash device, etc.


  • Você pode optar por uma instalação com apenas um HD (opção 2 ou 3), que irá particionar o HD onde a primeira partição será o Sistema Operacional e a segunda será a área de armazenamento de dados(DATA)

"Install"
"*********************"
1) Install 'embedded' OS on HDD/Flash/USB
2) Install 'embedded' OS on HDD/Flash/USB + DATA + SWAP partition
3) Install 'full' OS on HDD + DATA + SWAP partition
4) upgrade 'embedded' OS from CDROM
5) Upgrade 'full' OS from CDROM
6) Upgrade and convert 'full' OS to 'embedded'


Caso você selecione a opção 1:
FreeNAS 'embedded' installer for Flash device or HDD.
- Create 1 partition for OS image
- Uses a RAM disk to limit read/write access to the device
Warning: There will be some limitations:
1. This will erase ALL partition and data on the destination disk
2. You can't use your destination disk for sharing data
Installing on USB key is the preferred way:
It saves you an IDE or SCSI channel for more hard drives.


Essa opção instalará FreeNAS em um drive dedicado ao Sistema Operacional (esse drive não poderá ser usado como armazenamento). Essa é a opção recomendada no caso de estar usando um Cartão de Memória ou uma pendrive.
  • Selecione o drive de CD onde se encontra o FreeNAS (acd0, por exemplo, se você tiver apenas um ATA CDROM drive).
  • Selecione o HDD onde será instalado e inicializado o FreeNAS (da0, por exemplo, se você estiver instalando em uma pendrive).
Se você selecionar 2 ou 3: Isso irá instalar o FreeNAS em uma partição do disco e o resto do disco será formatado em UFS para ser usado como armazenamento (DADOS).
  • Selecione o drive de CD onde se encontra o FreeNAS (acd0, por exemplo, se você tiver apenas um ATA CDROM drive).
  • Selecione o HDD onde será instalado e inicializado o FreeNAS (ad0, por exemplo, se você quer instalar no HD master no ATA channel 1).
Em ambos os casos, uma vez FreeNAS está instalado, siga as instruções, remova o CD e quando o menu aparecer novamente
  • Pressione ESC ou selecione 'Exit' e volte para o menu principal;
  • Selecione 7 para reiniciar o computador;
Use as opções "4 ou 5 ou 6 Upgrade an existing release from CDROM” apenas para fazer um upgrade de uma versão existente instalada

Aviso # Instalando o FreeNAS em qualquer disco, este será formatado. # Sempre faça um backup de suas configurações antes de qualquer atualização. # Se o FreeNAS é o servidor principal (CIFS) em sua rede, após a atualização você deve reiniciar seus clientes.

OBS1: Se você tiver instalado em uma pendrive: Tenha certeza que a BIOS de seu computador esta configurada para iniciar através da USB (USB hard drive) – algumas BIOS não dão suporte a isso (“USB FDD” ou “USB ZIP” podem ser testadas).

Depois da primeira inicialização:
  • Verifique se a opção 9 do menu não esta mais presente: Se essa opção estiver presente, você ainda esta inicializando o sistema através do CDROM;
OBS2:
FreeNAS usa FreeBSD como Sistema Operacional base, e o FreeBSD não é um Linux!!!! Os discos no FreeBSD são nomeados da seguinte forma:

  • /dev/ad0 : É o primeiro ATA hard drive no ATA channel 1;
  • /dev/ad1 : É o segundo ATA hard drive no ATA channel 1;
  • /dev/ad2 : É o primeiro ATA hard drive no ATA channel 2;
  • /dev/acd0: É o primeiro ATA CD/DVD drive detectado;
  • /dev/da0: É o primeiro SCSI hard drive. PenDrive device no FreeBSD usa um SCSI driver, então esse nome também pode simbolizar o seu PenDrive;
  • /dev/da0p1: O 'p' representa uma partição do tipo EFI/GPT, e o '1' representa a primeira partição desse dispositivo. Esse é o novo padrão a partir da versão 0,684;
  • /dev/da0s1: O 's' representa o tipo de partição da antiga norma. Para qualquer outro sistema de arquivos UFS que você deve procurar uma partição "Type S";
  • /dev/raid5/RAIDname: 'RAID' é apenas o array de devices;
  • /dev/raid5/RAIDp1: este é o sistema de arquivos no dispositivo RAID;

Aviso Final: FreeNAS é um sistema operacional "standalone" e uma aplicação NAS. Instalando FreeNAS você estará apagando qualquer dado existente no disco de inicialização. Os arquivos existentes serão eliminados como parte do processo de instalação. O processo de instalação do FreeNAS não suporta dual-boot.

No próximo tutorial veremos como configurar o sistema instalado...

sexta-feira, março 19, 2010

FreeNAS - Network Attached Storage (parte01)


Vamos ver como criar um NAS(network-attached storage) usando FreeNAS, mostrarei os passos necessários em alguns posts. Porém neste apresentarei apenas as informações básicas do sistema.

FreeNAS é um sistema embarcado open source baseado no FreeBSD que implementa um NAS(Network-Attached Storage). FreeNAS pode ser instalado em pendrive, flash, HD ou inicializado pelo CD.

Sistema Base:

Hardware Requirements:
  • Computador com no mininmo 128Mb de RAM, um CD-ROM driver ou ainda:
    • Floppy Disk (para configuração do sistema) e um ou mais Hard Drives (como storage)
    • USB bootavel ou flash(64Mb minimo) e um ou mais Hard Drives (como storage)
    • Hard Drive bootavel e ou mais Hard Drives (como storage)
    • Hard Drive bootavel0(que será particionado entre FreeNAS e Dados)
  • Ou uma máquina virtual como VMware/QEMU, configurado como será descrito.

Network Protocols supported:

Serviços Extras:

Hard drive/Gerencia do dispositivo:

  • ZFS
  • Software RAID 0,1,5 e combinações(1+0,1+1, etc…)
  • Criptografia de Disco (usando cartão de aceleração de criptografia se presente)
  • Filesystem: UFS, Ext2/3, FAT, NTFS
  • Partição: MBR e GPT
  • iSCSI initiator

Network:

  • 802.1q vlan tagging
  • Wireless
  • link aggregation
  • Wake On Lan

Monitoramento

Download:

FreeNAS AMD64 ISO - FreeNAS-amd64-LiveCD-0.7.1.5065.iso
FreeNAS AMD64 IMG - FreeNAS-amd64-embedded-0.7.1.5065.img
FreeNAS i386 ISO - FreeNAS-i386-LiveCD-0.7.1.5024.iso
FreeNAS i386 IMG - FreeNAS-i386-embedded-0.7.1.5024.img

Faça o download e no próximo post começaremos a instalação e no último a configuração de fato.

quinta-feira, março 11, 2010

Mini2440 e Micro2440 - Servidor TFTP

O servidor tftp assim como o NFS servirá para transferir alguns arquivos para o seu Mini2440 ou micro2440, a configuração dele é tão simples quanto a do NFS, porém esse não é um serviço que ficará sempre habilitado, não recomendo deixá-lo habilitado a cada vez que o PC ligar, então talvez seja interessante você criar um pequeno script para iniciar o serviço sempre que você achar necessário.

Pronto agora você tem um servidor TFTP para usar junto a sua placa e enviar os arquivos necessários a ela. Coloque os arquivos na pasta /var/lib/tftpboot/ para que o u-boot possa baixar os arquivos que enviaremos mais tarde corretamente.

Mini2440 e Micro2440 - Servidor NFS

Você precisará de um servidor NFS para fazer algumas coisas, transferir alguns arquivos para o sua placa de desenvolvimento.

Pronto, você já pode tentar acessar seu compartilhamento NFS. Caso algo não funcione verifique seus arquivos de configuração.

Mini2440 e Micro2440 - Pacotes necessários.

Comprei uma placa Mini2440 há um tempo mas nunca tive muito tempo para mexer nela, ela veio com um gerenciador de boot chamado SUPERVIVI e com um Linux que imagino ser uma versão da própria FriendlyARM e com interface gráfica baseada em QT.

Tentei usá-la durante algum tempo mas a interface gráfica adorava dar umas travadas absurdas, não sei porque, mas acontecia constantemente, eu pensei que conseguiria configurar tudo que desejava já nesse modelo que vinha na placa, mas com os constantes travamentos percebi que seria necessário uma grande alteração minha.

Então comecei a pesquisar como colocar uma versão de Linux melhor, mais robusta, ou simplesmente mais estável, eu já me contentaria com a estabilidade. Confesso que até o momento ainda não consegui configurar o que é necessário para que o Mini2440 que tenho funcione bem mas posso ir mostrando o pouco que evolui até o presente momento. Logo que comecei tive os três primeiros dias completamente infernais. Pensei sinceramente em desistir. Mas o bom humor voltou. Então vamos ao que interessa.

Antes de realmente formatar e pensar em mudar absolutamente tudo vamos definir qual será nosso ambiente de desenvolvimento.

Apesar de eu ser um usuário Arch Linux ando um tanto revoltado com o bug de gerencia de memória dessa distro então optei por usar o Fedora Core 12. Você precisará dos seguintes pacotes:
  • git =>1.6.3.3
  • bitbake =>1.8.18
  • bison
  • flex
  • e2fsprogs
  • m4
  • curl
  • ncurses libraries and development headers
  • zlib development libraries and headers
  • cvs
  • subversion
  • unzip
  • bzip2 and its development libraries and headers
  • libusb
  • libusb-dev
Necessário instalar também:
  • Servidor NFS
  • Servidor TFTP
  • Compilador ARM
E recomendo também instalar "Development Tools":
Veremos nos posts a seguir como instalar tudo isso e configurar. Depois de termos feito essas configurações faremos o mal com o dispositivo.

segunda-feira, março 01, 2010

Porta serial e Python

Há um tempo venho fazendo alguns experimentos com Python e algumas libs dessa linguagem no minimo interessante e como faz um tempo que não posto absolutamente nada aqui resolvi colocar alguns rascunhos de scripts que andei brincando ultimamente.
Primeiro você precisará fazer a instalação da biblioteca pyserial, para tal use o script abaixo: Esse script é apenas um loopback da porta serial feito usando a lib pyserial

Para que esse programa funcione você precisa ter um loopback plugado na sua porta serial. Então escreveremos os seguinte código em um script ou no próprio terminal Python.
Pronto. Agora você tem um programa para testar sua porta serial através de um loopback feito em Python e sem toda a complicação de C/C++. Se vocês tiverem tempo podem dar uma boa olhada na documentação da Pyserial.