Como instalar o Android no Virtual Box

O Android é um dos principais sistemas operacionais para celulares na atualidade, muitos aparelhos

Principais Comandos e Diretórios no Linux

Principais Comandos e Diretórios no Linux - Esta referência mostra os principais comandos do Linux

Softwares para backup linux, windows e Mac

Backup - Soluçoes de backup para sistema linux, windows e / ou Mac – fwbackups, Bacula, Rsync, Mo

 

Como instalar o Android no Virtual Box

novembro 9, 2011 in Android

O Android é um dos principais sistemas operacionais para celulares na atualidade, muitos aparelhos modernos como o Motorola Milestone têm feito sucesso utilizando este sistema. Uma máquina virtual (ou Virtual Machine, ou simplesmente VM) é resumidamente uma “simulação de um computador”, neste tutorial vamos utilizar o Oracle Virtual Box para criar este computador “simulado” onde vamos instalar o Android.

Preparação:

Faça o download e instale o Oracle Virtual Box. No tutorial estou utilizando a versão 4.0.2 que é a última disponível até o momento do post. O aplicativo é gratuito.

Faça o download do Android x86, que é uma versão de Android compatível com os PC’s. No tutorial estou utilizando a versão 2.2 que é a última disponível até o momento do post. Existem versões específicas para alguns netbooks como o eeePC, no nosso caso utilizamos a versão genérica (generic).

Criando a Máquina Virtual:

No Oracle Virtual Box clique em Novo (Ctrl+N) para iniciar o Assistente de Criação de Máquina Virtual. Clique no botão “Próximo (N)” para continuar.

Na próxima janela definimos um nome e as configurações do sistema a ser instalado em nossa máquina virtual. Escolha a opção de sistema operacional Linux na versão Linux 2.6 conforme a imagem abaixo (defina um nome à sua escolha para a VM), clique em “Próximo (N)” para continuar.

Na próxima janela deve ser definido o tamanho de memória da máquina virtual, para o Android 512MB dá e sobra! Escolha o valor e clique em “Próximo (N)” para continuar.

Agora devemos definir um disco virtual que representa o HD de nossa máquina virtual. Certifique-se que estão ativas as opções Disco Rígido de Boot e Criar novo disco rígido. clique em “Próximo (N)” para iniciar o Assistente de Criação de Novo Disco Virtual. Clique em “Próximo (N)” para continuar.

Na próxima janela certifique-se que está ativa a opção Armazenamento dinamicamente expansível e clique em “Próximo (N)” para continuar.

Neste ponto definimos o tamanho de nosso HD virtual, novamente 512MB dá e sobra! Configure conforme a figura abaixo e clique em “Próximo (N)” para continuar e finalize os dois assistentes de criação.

Neste ponto já temos a nossa máquina virtual criada! Agora precisamos simular um boot com o cd do Android x86.

Selecione a VM criada e clique em Configurações (Ctrl+S).

No item Armazenamento, configure como Controladora IDE o arquivo de imagem de disco (*.iso) do Android x86 (clique no ícone de CD e escolha o arquivo). Veja na figura como deve ficar:

Atenção: Se o arquivo de imagem for movido ou renomeado, reconfigure a máquina virtual para o novo caminho.

Repare que agora temos uma simulação de um PC com o HD que criamos e um drive de CD com o disco do Android x86. Vamos simular um boot com Live CD.

Clique em OK para terminar. As configurações devem ficar como na imagem abaixo (repare que com um processo semelhante eu criei mais duas máquinas virtuais, Ubuntu e Windows):

Clique em Iniciar (T) e pronto! A máquina virtual será “ligada” e o Android inicia!

Para ativar o cursor do mouse (já que seu monitor não deve ser touch screen como nos celulares) :P , na janela da máquina virtual clique no item de menu Máquina > Desabilitar Integração de Mouse. Para alternar o mouse entre a VM e seu computador utilize a tecla Ctrl do lado direito do teclado.

E aqui está o menu de nosso Android:

Mesmo com algumas limitações óbvias (GPS, por exemplo), a máquina virtual é bastante realista.

Controles principais:

  • Clique com botão esquerdo = Selecionar
  • Clique com botão direito = Voltar
  • Tecla “Windows” = Home

Principais Comandos e Diretórios no Linux

agosto 23, 2011 in Introdução, Linux

comandos linux

Esta referência mostra os principais comandos do Linux e a estrutura do sistema de arquivos, é indicada para aqueles que não conseguem suprir suas necessidades através da interface gráfica ou que estejam usando micros no modo texto.

Lembrete Importante

Nesta página não explico a sintaxe dos comandos ou seu funcionamento detalhado, para isso consulte as páginas de manual dos mesmos.

Para ler as páginas de manual digite “man nome_do_comando” ou ainda, dependendo da documentação você pode ter mais detalhes digitando “info nome_do_comando”.

——————————————————————————–
Estrutura de Diretórios

Esta estrutura é muito parecida sistemas Linux/BSD e, observando-se a logica, é possível entender as pastas que não estão nesta lista como por exemplo as que estão dentro do /usr/local (que tem a mesma estrutura do /usr).

/root – Diretório HOME do Superusuário.
/home – Diretório HOME dos usuários comuns.
/bin – Comandos utilizados durante o boot e por usuários comuns.
/sbin – Como os comandos do /bin só que não são utilizados pelos usuários comuns.
/proc – Sistema de arquivos virtual (na memória) com dados do Kernel.
/boot – Arquivos utilizados durante a inicicialização do sistema e o Kernel.
/dev – Dispositivos (modem, mouse, teclado, etc..).
/etc – Arquivos de configurações do sistema.
/etc/skel – Padrão de arquivos para o diretório HOME de novos usuários.
/etc/sysconfig – Arquivos de configuração do sistema para os dispositivos.
/mnt – Local onde são montados discos e volumes temporários (disquete, outros HDs, CD-ROM, etc..).
/tmp – Arquivos temporários do sistema utilizados antes da inicialização do sistema ter sido concluída.
/var – Contém arquivos que são modificados com o decorrer do uso do sistema (e-mail , temporários, filas de impressão, manuais).
/var/lib – Bibliotecas que mudam enquanto o sistema está rodando.
/var/local – Arquivos variáveis de programas que estão rodando.
/var/lock – Travas para indicar que um programa está utilizando um determinado dispositivo.
/var/log – Arquivos de log do sistema (erros, logins, etc..)
/var/run – Arquivos importantes ao sistema úteis até o próximo boot (atualizações de softwares e kernel).
/var/spool – Diretório de filas de impressão, e-mail e outros
/var/tmp – Arquivos temporários dos programas
/var/catman – Um cache para manuais que são formatados na hora de serem utilizados.
/lib – Bibliotecas compatilhadas necessárias pelos programas do sistema.
/lib/modules – Modulos externos do kernel para dispositivos e funções.
/usr – Contém arquivos de todos os programas e bilbiotecas para o uso dos usuários do Linux.
/usr/bin – Executáveis em geral.
/usr/sbin – Executávies de administração do sistema não necessários pelo kernel, como por exemplo servidores.
/usr/include – Arquivos para serem utilizados em linguagens de programação.
/usr/lib – Bibliotecas dos executávies encontrados no /usr/bin
/usr/local – Arquivos de programas instalados localmente (apenas para alguns usuários).
/usr/man – Manuais
/usr/info – Documentos de Informações
/usr/X11R6 – Arquivos do X Window System e seus aplicativos.

——————————————————————————–
Comandos do Sistema de Arquivos

Aqui estão os comandos para lidar com o sistema de arquivos (HDs, drives e partições de rede).

badblocks – Utilizado para encontrar defeitos físicos no HD.
cfdisk – Similar ao fdisk só que com uma interface melhorada.
df – Mostra o espaço livre no disco.
dosfsck Verifica e repara sistemas FAT do DOS.
du – Mostra o espaço que ocupa um diretório e os arquivos internos.
dump – Usado para fazer o backup de um sistema ext2. O complemento deste comando é o restore.
dumpe2fs – Faz o backup de blocos do HD e grupos.
e2fsck – Verifica um volume ext2 em busca de erros.
e2label – Muda o nome de uma partição ext2.
fdisk – Usado para criar, editar e apagar partições no HD.
fdformat – Formata um disquete.
mount – Usado para “montar” um sistema de arquivos. O complemento deste comando é o umount.
restore – Usado para restaurar um sistema ext2.
umount – Desmonta o sitema de arquivos. O complemento é o comando mount.
cdrecord – Grava CDs.
cdparanoia – Grava CDs de audio.

——————————————————————————–
Manipulação de arquivos e diretórios

cd – Muda para um diretório. Se você não especificar nada ele muda para seu diretório HOME.
chmod – Muda as permissões para acesso aos arquivos e diretórios (Escrita, Leitura, etc..)
chown – Muda o propritário e grupo de um arquivo ou diretório.
chgrp – Muda o grupo de um arquivo ou diretório.
cp – Copia os arquivos de um diretório/pasta para outro diretório/pasta.
dir – Lista o conteúdo de um diretório (preferir o comando “ls”).
find – Procura arquivos com determinadas características na árvore de diretórios.
ln – Cria um link simbólico para um arquivo.
ls – Lista os arquivos de um diretório.
mc – Midinght Commander. Um gerenciador de arquivos completo para o console. MUITO BOM!
mkdir – Cria um diretório.
mv – Move ou renomeia um arquivo.
rm – Exclui arquivos.
rmdir – Exclui um diretório vazio.
vdir – Lista o conteúdo de um diretório.
wheris – Localiza o executável, código fonte e manual de um comando.
ghomemover_console – Programa escrito por Daniel Brooke Peig que faz a mudança de diretórios alterando as referências a arquivos.

——————————————————————————–
Edição e visualização de arquivos

ed – Editor de Texto
emacs – Editor de texto mais completo.
gitview – Visualizador de arquivos Hexadecimais.
head – Mostra as primeiras linhas de um arquivo.
jed – Editor
joe – Editor
less – Usado para visualizar arquivos.
more – Usado para visualizar arquivos.
pico – Editor de textos simples.
tail – Mostra as últimas linhas de um arquivo.
vi – Editor com uma interface de linha de comando.

——————————————————————————–
Compressão de arquivos, backup e restauração

ar – Cria, modifica e extrai arquivos.
bunzip2 – Descompactador de arquivos bZIP2.
bzip2 – Compactador de arquivos bZIP2.
bzip2recover – Recupera arquivos bzip2 danificados.
compress – Comprime informações.
gunzip – Descompacta um arquivo GZip.
gzip – Compacta arquivos no formato GZip.
rpm – Instalador de programas (pacotes) do RedHat.
tar – Compacta grupos de arquivos.
uncompress – Descompacta informações.
unzip – Descompacta arquivos ZIP.
zip – Compactador de arquivos ZIP.

——————————————————————————–
Gerenciamento de processos e aplicativos

gitps – Um gerenciador de processos com interface gráfica.
killall – Fecham todos os processos por nome.
sa – Mostra informações sobre os processos que estão sendo executados pelos usuários.
top – Mostra os processos que estão ocupando a manior quantidade de recursos do sistema.
CTRL-C – Fecha o programa em questão.
& – No final de cada comando faz com que o aplicativo rode em background.

——————————————————————————–
Ajuda

apropos – Mostra todos os comandos com a tecla e sua descrição.
help – Ajuda para os comandos do bash.
man – Mostra o manual de um comando.
info – Similar aos manuais porém com uma organização diferente. Normalmente são mais detalhados.

——————————————————————————–
Rede

domainname – Mostra ou ajusta o nome de domínio do sistema.
hostname – Usado para mostrar ou atualizar o nome do micro na rede.
finger – Mosta informações sobre um determinado usuário.
ftp – Programa de transferência de arquivos.
ifconfig – Configura a interface de rede.
netconf – Interface gráfica do RedHat para confiurar a rede.
netconfig – Outra interface gráfica para a configuração da rede.
netstat – Mostra informações sobre as conexões à rede.
ping – Manda um echo ICMP para um determinado sistema da rede.
rcp – Copia arquivos entre diferentes hosts da rede.
rlogin – Inicia um terminal em um Host remoto.
route – Mostra e manipula a tabela de roteamento.
rsh – Executa um comando em um host da rede.
rup – Mostra o status de um sistema na rede.
showmount – Mostra informações de sistemas NFS monstados sobre a rede.
telnet – Interface para o protocolo Telnet.
traceroute – Mostra o caminho dos pacotes até um determinado host.

——————————————————————————–
Comunicações e e-mail

mailx – E-Mail.
lynx – Browser de Internet para o console.
pine – Programa para e-maisl, notícias e mensagens na rede.
sendmail – Muito popular, envia e-mails.
smail – Outro famosos sistema de e-mails mais fácil de usar que o sendmail.
talk – Permite a conversa entre dois micros.
tin – Leitor de Notícias.

——————————————————————————–
Modos de execução do sistema

exit – Termina o shell.
halt – Congela o sistema .
logout – Faz o logout do usuário.
poweroff – Desliga o computador.
reboot – Reinicia o computador.
startx – Inicia o X-Window System.

——————————————————————————–
Configuração do sistema

kernelcfg – Interface gráfica para a configuração do Kernel em Sistemas RedHat.
linuxconf – Sistema de configurações gerais do RedHat.
mouseconfig – Aplicativo RedHat para a configuração do mouse.
printtool – Aplicativo do RedHat para a configuração de impressão.
quota – Mostra o uso do disco e seus limites.
samba – Utilizado para ligar/desligar/reiniciar o Samba (cliente de redes Microsoft).
setserial – Muda/Mostra informações sobre as portas seriais.
setup – Configura os dispositivos e os sistemas de arquivos.
timeconfig – Utilitário da RedHat para a configuração do relógio.
sndconfig – Utilitário RedHat para a configuração da placa de som.

——————————————————————————–
Informações do sistema

df – Mostra o espaço livre em disco.
du – Mostra o uso do disco.
free – Mostra a memória livre do disco.
lspci – Lista os dispositivos PCI.
pnpdump – Mostra informações sobre os dispositivos ISA.
pstree – Mostra a árvore de processos.
tload – Imprime um gráfico com os recursos do sistema.
vmstat – Mostra as estatísticas da memória virtual.

——————————————————————————–
Gerenciamento de usuários

adduser – Adiciona um usuário ao sistema.
groupadd – Cria um novo grupo.
groupdel – Apaga um grupo.
groupmod – Modifica um grupo.
groups – Imprime os grupos de um usuário.
logname – Mostra o login name do usuário.
passwd – Muda a senha.
smbclient – Cliente para redes SAMBA.
smbmount – Monta um sistema de arquivos SAMBA (Windows).
su – Muda o usuário para único.
sulogin – Login do modo de único usuário.
useradd – Adiciona um usuário.
userdel – Apaga um usuário e seus arquivos.
usermod – Modifica um usuário.
w – Mostra os usuários logados e o que estão fazendo.
wall – Manda uma mensagem para todos no terminal.

Softwares para backup linux, windows e Mac

dezembro 1, 2010 in Aplicativos, Backup, Linux, Redes, Samba, Segurança, Software

Se você está na indústria de TI ou você é um usuário avançado ou se você precisar ter uma ferramenta de backup pronta. Com esta ferramenta, você terá backups agendados, os backups de um tempo, backups locais, backups remotos, e muitos outros recursos. Aqui estão excelente soluções de backup para o sistema operacional Linux. Na verdade, alguns deles são realmente multi-plataforma e back-up Linux, Windows e / ou Mac.

fwbackups

È de longe, o mais fácil de todas as soluções de backup para Linux. É multiplataforma, tem uma interface amigável e pode fazer backups única ou recorrente backups agendados. A ferramenta fwbackups permite que você faça backups localmente ou remotamente em tar, tar.gz, tar.bZ, ou formato rsync. Você pode fazer backup de um computador inteiro ou um único arquivo. Ao contrário de muitos utilitários de backup, fwbackups é fácil de instalar, porque provavelmente será encontrada no repositório da sua distribuição. Tanto o backup ea restauração são incrivelmente fácil (mesmo agendar um remoto, backup agendada recorrente). Você também pode fazer backups incrementais ou diferenciais para acelerar o processo.

Bacula

Bacula é uma solução de backup poderoso do Linux, e é uma das poucas soluções de código aberto Linux backup que é realmente prontos para uma empresa. Mas, com esta disponibilidade da empresa vem de um nível de complexidade que não pode encontrar em qualquer outra solução. Ao contrário de muitas outras soluções, Bacula contém um número de componentes:

Director – Esta é a aplicação que supervisiona todas Bacula.
Console – Isso é como você se comunica com o Director Bacula.
File – Este é o aplicativo que é instalado na máquina para fazer o backup.
Storage – Esse aplicativo realiza a leitura e escrita para o seu espaço de armazenamento.
Catalog – Este aplicativo é responsável pelas bases de dados utilizadas.
Monitor – Este aplicativo permite a administrar a acompanhar a situação das diversas ferramentas do Bacula.

Bacula não é a melhor solução de backup para configurar e usar. É, no entanto, um dos mais poderosos. Então, se você está procurando poder e não estão preocupados em colocar no tempo para chegar até a velocidade com a configuração, Bacula é a sua solução.

Rsync

Rsync é uma das soluções de backup mais usado Linux. Com o rsync, você pode fazer flexível backups incrementais, seja localmente ou remotamente. Rsync pode atualizar árvores de diretório inteiras e sistemas de arquivos; preservar os laços, propriedades, permissões e privilégios; usar rsh, ssh, ou soquetes para conexão direta e apoio conexões anônimas. Rsync é uma ferramenta de linha de comando, apesar de front-ends disponíveis (como Grsync <http://freshmeat.net/projects/grsync/>). Mas o front-ends derrotar a flexibilidade de ter uma ferramenta de backup simples linha de comando. Uma das maiores vantagens de usar uma ferramenta de linha de comando é que você pode criar scripts simples de usar, em conjunto com o cron, para criar backups automatizados. Para isso, o rsync é perfeito.

Mondorescue

Mondorescue  é uma daquelas ferramentas que você tem em torno de recuperação de desastre, porque um dos seus pontos fortes é o backup de uma instalação inteira. Outro ponto forte da Mondorescue é que ele pode fazer backup de quase qualquer meio: CD, DVD, fita, NFS, duro, etc e Mondo suporta LVM 02/01, RAID, ext2, ext3, ext4, JFS, XFS, ReiserFS, e VFAT. Se o seu sistema de arquivo não estiver listado, há uma chamada no site da Mondo e-mail para os desenvolvedores de uma solicitação do sistema de arquivos e eles vão fazer o trabalho. Mondo é usado por grandes empresas, então você sabe que é confiável.

Simple backup solution

Simple backup solution com ele é possível fazer backup de arquivos e diretórios e permite expressões regulares a serem utilizados para fins de exclusão.
Como solução simple Backup utiliza arquivos compactados, não é a melhor solução para fazer backup de grandes quantidades de dados pré-comprimido (como arquivos multimídia). Uma das belezas da solução simple de backup é que inclui soluções de backup predefinidas que podem ser usados para fazer backup de diretórios, como / var, / etc /, / usr / local. SBS não está limitado a backups predefinidos. Você pode fazer cópias de segurança personalizados, backups manuais, e backups agendados. A interface de usuário é amigável. Uma das quedas da SBS é que ele não inclui uma solução de restauração como fwbackups faz.

Amanda

Amanda permite que um administrador para configurar um único servidor de backup e fazer backup de vários hosts para ele. É robusta e fiável. Um recurso interessante é que Amanda pode usar o Samba para fazer backup de clientes do Windows para o servidor de Amanda. É importante notar que, com Amanda, há pedidos separados para servidor e cliente. Para o servidor, apenas Amanda é necessário. Para o cliente, a aplicação Amanda cliente deve ser instalado.

Back In Time

O Back In Time lhe permite tirar fotos de listas pré-definidas e pode fazê-lo em uma programação. Esta ferramenta tem uma interface excelente e uma boa integração com o GNOME e KDE.
No entanto, ele não usa a compactação de backups, nem inclui uma ferramenta de restauração automatizada.
Esta é uma ferramenta somente desktop.

Box Backup

Box Backup é o único que não só é totalmente automatizada, mas ele pode usar criptografia para proteger seus backups. Box Backup utiliza tanto um daemon cliente e daemon do servidor, bem como um utilitário de restauração.
Box Backup usa certificados SSL para autenticar os clientes, assim as conexões estão seguras. Embora Box Backup é uma solução de linha de comando, é simples de configurar e implantar. Os dados são diretórios configurados, o servidor verifica os diretórios e, se novos dados for encontrado, ele é enviado para o servidor. Existem três componentes para instalar:
bbstored (daemon servidor de backup), bbackupd (daemon cliente), e bbackupquery (consulta de backup e restauração de ferramentas).
Box Backup está disponível para Linux, OpenBSD, Windows (Nativo only), NetBSD, FreeBSD, Darwin (OS X), e Solaris.

Kbackup

Kbackup é um utilitário de backup simples que faz o backup localmente, para qualquer mídia (disco rígido ou dispositivo montado) que pode ser gravado. Ele foi projetado para ser um dispositivo de backup que qualquer usuário pode tirar vantagem. Para esse efeito, é simples e não tem uma lista de recursos longa. Fora de ser capaz de fazer backup de arquivos e diretórios, a única característica outro é que o usuário pode salvar perfis de backup que pode ser aberto e apoiado rapidamente.
Kbackup usa o formato .tar para restaurar backups, que é muito simples de utilizar e  descompactar os arquivos de backup.

Freedom-ERP – Software livre de Gestão Empresarial

novembro 25, 2010 in Aplicativos, Software

 

Freedom-ERP – É um software livre de Gestão Empresarial. Pode ser utilizado em estabelecimentos comerciais, varejistas, atacadistas e industriais. Dividido em vários módulos, atende a diversas necessidades de empresas em diferentes áreas de atuação.

O Freedom-STD reúne em um único módulo, diversas funcionalidades necessárias para agilizar e controlar os processos de uma empresa.

Contém as principais funcionalidades existentes nos demais módulos do Freedom-ERP, além de suas próprias funções. seguem abaixo algumas características:

Cadastros de clientes;
fornecedores,
transportadoras;
comissionados (vendedores);
Grupos de produtos,
produtos;
classificações fiscais;
Entradas,
Saídas;
Estoque;
Contas a pagar;
Contas a receber;
Caixa e Bancos;
Boletos bancários;
Envio de informações fiscais para a receita estatual (Sintegra);
Relatórios e graficos gerenciais e muito mais…

O Módulo Financeiro Freedom disponibiliza ferramentas para o total controle financeiro de sua empresa, como  contas a pagar, contas a receber,  movimentação bancária, emissão de recibos, emissão de boletos bancários com código de barras (Banco do Brasil, Caixa Econômica Federal e Bradesco), arquivos de remessa padrão CNAB e CIAC, baixa automática de títulos através de arquivos de retorno (Banco do Brasil, Caixa Econômica Federal e Bradesco).

O FreedomFNC também possui diversos relatórios e gráficos gerenciais de fluxo de caixa, contas a pagar, contas a receber, Balancetes por Centro de Custo, Razão financeiro, etc…

Gerência
Oferece uma perfeita visão da situação financeira através de relatórios de fluxo de caixa, gráficos, balancetes, etc…
Utiliza plano de contas gerencial com centros de custos de receitas e despesas por unidade de negócios.

Pagamentos/Recebimentos
É possível emitir boletos bancários no padrão febraban, diretamente pelo sistema, bem como a geração de arquivos de remessa de cobrança padrão CNAB (Banco do Brasil) ou SIACC (Caixa Econômica Federal).
Manutenção de contas a pagar e receber por critérios de vencimento, customizáveis por diversos filtros de pesquisa.

Confira mais modulos no site: http://sites.google.com/a/stpinf.com/freedom-erp/

Instalando MacUbuntu no Ubuntu 10.10

novembro 11, 2010 in Aplicativos, Distribuições, Linux

O MacUbuntu é um programa que mexe totalmente na aparência do Ubuntu, deixando-o parecido com o Mac OS X. Alguns gostam e outros não. Mais descrições do programa podem ser obtidas em:
http://www.baixaki.com.br/linux/download/macbuntu.htm 

como também o download, obviamente. 

Infelizmente a versão do Baixaki não instala no Ubuntu 10.10, mas alterando-se o script de instalação ela poderá ser feita sem preocupações. 

Antes de instalar aqui no meu PC, desinstalei o Avant Window Manager para retirar as chances de haver algum conflito com o Docky, que será instalado. 
Alterando o script de instalação
Fazer isso é bem simples, com o programa descompactado em uma pasta, Macbuntu-10.04, vá em install.sh, dê duplo clique e selecione a opção “exibir” na janela que abrirá. 

Será mostrado o script no Gedit. 

Procure por: 

chk_system()
{
    echo “”
    echo “Checking Ubuntu version…”
    s=`cat /etc/issue | grep -i “$UBUNTU”`
    if [ ! -n "$s" ]; then
        echo “Failed. System not supported, script will end here”
        echo “To ignore their compatibility with current OS try ./install.sh force”
        echo “Exiting…”
        exit 1;
    fi
    echo “Passed”
}
 

 
 

Instalando MacUbuntu no Ubuntu 10.10

Instalando MacUbuntu no Ubuntu 10.10

 Exclua essa parte do script, salve e feche, depois é só clicar em install.sh de novo e selecionar a opção “executar em terminal” e fazer a instalação. Lembrando que se você não tem o compiz instalado, ele será instalado, portanto se seu computador não suportar os efeitos selecione opções coerentes durante a instalação.

Veja como ficou a UI do Ubuntu:

 
 

UI do Ubuntu

UI do Ubuntu

Bloqueie conteúdo adulto sem instalação alguma em sua casa/escritório com o OpenDNS FamilyShield

julho 24, 2010 in Aplicativos, Internet, Linux, Segurança

O OpenDNS é um serviço gratuito de resolução de DNS que oferece os quatro servidores para uso público, mapeado para o servidor operacional mais próximo pelo roteamento Anycast.

O OpenDNS lançou a algum tempo um serviço chamado FamilyShield, que permite controlar o acesso a internet deixando assim estes computadores livres de conteúdo adulto, este serviço é gratuito e não requer contas ou assinaturas tão pouco downloads ou software para se instalar.

Configurando seu sistema Linux com os novos servidores DNS

Você pode configurar qualquer dispositivo/sistema que suporte configuração de DNS tais como roteadores, consoles, modens ADSL, Linux, Windows e Machintoches com este serviço, porém, aqui falarei somente do sistema Linux.

Pressione as teclas ALT + F2 e escreva:

gksu gedit /etc/resolv.conf

Pressione ENTER, substitua gedit pelo seu editor de textos, no KDE por exemplo você deverá usar o kedit, informe sua senha e pressione enter novamente.

Substitua os DNS atuais por estes: 208.67.222.123, 208.67.220.123, como mostrado na imagem abaixo.

Note que comentei os DNS que haviam antes no arquivo.

Você pode passar estas instruções para seu roteador também, veja aqui passo-a-passos para Windows, MAC, telefones e outros e neste link o passo-a-passo para rotear seu router.

Assim que fizer a configuração tente acessar algum site com conteúdo impróprio, você verá uma imagem como a seguinte.

Testando o funcionamento

Para testar a configuração o OpenDNS disponibiliza um link, isto ajuda, para quando estiver na casa de um amigo você não ter que acessar algum site adulto para ver se a configuração está funcionando bem.

Clique neste link: https://store.opendns.com/familyshield/welcome, você deverá ver uma imagem como esta:

Caso contrário a configuração não está correta.

Instalando pacotes no Ubuntu e distros Debian-like

julho 23, 2010 in Aplicativos, Configuração, Linux

Depois de lê-lo, o famoso “gerenciamento de pacotes” ficará mais claro. Basta apenas 10 minutos de seu tempo ocioso para aprender sobre este tópico de forma rápida e fácil.

Servirá também para todas as distros derivadas do Debian e que tenham condições de usar o apt-get/synaptic, mesmo que exista um instalador de pacotes próprio.

Mas o que é gerenciamento de pacotes? Nada mais que a decisão tomada em relação aos pacotes instalados no computador, os recursos que serão adicionados ou removidos, as configurações existentes, enfim, todo o processo advindo da necessidade que o usuário tem em relação ao sistema operacional que utiliza.

É muito comum o usuário iniciante sentir-se “perdido” no mundo Linux por desconhecer os programas e o que fazem. Além de instalá-los, vai depender de um conhecimento geral sobre os principais softwares que necessita para suas atividades diárias. Por isso colocamos uma lista de software equivalentes, para servir de guia.

Mas deixemos de papo e continuemos.

Porquê o apt-get/synaptic?

Porque, na minha opinião, não inventaram nada melhor do que ele neste anos todos. Nenhum gerenciador de pacotes que tivesse aquele “quê” de especial, que justificasse sua existência no lugar do apt-get/synaptic. Está disponível em todas as distros derivadas do Debian, instalado por padrão ou nos repositórios, sendo fácil sua instalação e configuração.

Apt significa “Advanced Packaging Tool” ou “Ferramenta Avançada de Empacotamento” e foi criada originalmente para o Debian. Na versão 6.0 do Conectiva Linux, já tinha sido portado para uso com pacotes rpm, compatível com outras distros que usam este sistema (1).

Usando o apt-get, você pode migrar para qualquer distro que o tenha disponível, evitando novo aprendizado para uma tarefa que já saiba fazer naquela ferramenta. Ele é usado via terminal, com o comando “apt-get” associado a:
update – adquire novas listas de pacotes.
upgrade – faz uma atualização.
install – instala novos pacotes
remove – remove um pacote.
source – faz o download de arquivos fonte.
build-dep – configura as dependências de compilação de pacotes fonte.
dist-upgrade – atualiza a distribuição, consulte apt-get(8).
dselect-upgrade – segue as seleções do dselect.
clean – apaga arquivos baixados para instalação.
autoclean – apaga arquivos antigos baixados para instalação.
check – verifica se não há dependências quebradas.

Mais as seguintes opções:
-h – texto de ajuda.
-q – saída logável, exceto para erros.
-qq – sem saída, exceto para erros.
-d – fazer o download apenas – NÃO instalar ou desempacotar arquivos.
-s – não-agir. Executar simulação de ordenação.
-y – assumir Sim para todas as perguntas, não pedir confirmação.
-f – tenta continuar se a checagem de integridade falhar.
-m – tenta continuar se os arquivos não podem ser localizados.
-u – mostra uma lista de pacotes atualizados também.
-b – constrói o pacote fonte depois de baixá-lo.
-c=? – ler esse arquivo de configuração.
-o=? – definir uma opção de configuração arbitrária, ex -o dir::cache=/tmp.

Para que complicar a vida? Você não precisa ficar usando o terminal para gerenciar seus pacotes no Ubuntu e Debian-like, pois é impossível ter uma visão abrangente desta forma. Veja a imagem que coloquei abaixo. Como ter uma idéia do que está ocorrendo com tanta informação na tela preta?

Linux: Instalando pacotes no Ubuntu e distros Debian-like

Para facilitar nossas vidas foi criada a interface gráfica “synaptic”:

Ele permite uma visão completa dos pacotes por instalar, instalados e os que não são mais necessários. Permite adicionar e remover repositórios, configurar o cache e muito mais. Com o synaptic qualquer usuário pode fazer um gerenciamento de softwares eficiente.

Mas é bom que você entenda uma diferença fundamental com o Windows. Neste, o compromisso da empresa licenciadora é de fornecer “apenas” o sistema operacional. Eventualmente um ou outro software em que ela deseja inserir-se num nicho específico, utilizando-se da base instalada. O uso de softwares adicionais depende da compra das licenças respectivas.

No Linux, instalando uma versão comercial ou não, seguirá uma quantidade “X” de softwares para as mais distintas funções: suíte office, browser, editor de imagem, MTA etc. Também estão disponíveis diversos programas que não precisam ser adquiridos separadamente.

Para usá-los, basta apenas uma conexão decente com a internet e escolher o que se quer. Nada mais do que isso. No meu entender, este é o grande barato do software livre: um mundo inteiro disponível a alguns cliques de mouse.

Linux: Instalando pacotes no Ubuntu e distros Debian-like

O que preciso para instalar programas com o apt-get/synaptic?

Para instalar pacotes com o apt-get/synaptic necessita-se de:

  • uma conexão banda larga (preferência)
  • configurar os repositórios
  • atualizar a lista de repositórios
  • baixar os pacotes desejados

Observe bem: apenas 4 passos, nem mais nem menos! Parece difícil?

A conexão com a banda larga não é objetivo deste trabalho e não será abordada. Passando à configuração dos repositórios, há duas formas de fazê-lo: num terminal ou na interface gráfica. Nenhum é melhor que o outro. Depende basicamente da preferência de cada usuário.

Repositório é um servidor que armazena os arquivos a serem baixados pelo apt, e seu endereço na web fica guardado num arquivo padrão chamado sources.list em /etc/apt. Abaixo mostro um fragmento do meu arquivo, com os endereços que utilizo no Ubuntu:

deb http://br.archive.ubuntu.com/ubuntu/ karmic main restricted universe multiverse
deb http://br.archive.ubuntu.com/ubuntu/ karmic-updates main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ karmic-security main restricted universe multiverse
deb http://br.archive.ubuntu.com/ubuntu/ karmic-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ karmic partner

# multimídia no ubuntu
deb http://packages.medibuntu.org/ karmic free non-free

Onde:

  • deb – indica o tipo de pacote
  • http://br.archive.ubuntu.com/ubuntu/ – endereço onde se vai baixar pacotes
  • karmic – versão da distribuição a ser baixados os pacotes
  • main restricted universe multiverse – repositórios propriamente ditos

Você pode usar repositórios suportados oficialmente por sua distro ou de terceiros, assumindo os riscos pela segurança e atualização dos pacotes em questão. Veja no exemplo acima que adicionei o repositório do “medibuntu” para dar suporte multimídia extra ao Ubuntu. É desenvolvido por terceiros, entretanto com atualizações periódicas dos softwares.

Não se esqueça que cada repositório deverá obedecer a ordem acima, se o sources.list for editado manualmente. Mas se você o fizer pelo synaptic, olhe abaixo como deverá ficar (no caso, o mesmo repositório “medibuntu”):

deb http://packages.medibuntu.org/ karmic free non-free
Linux: Instalando pacotes no Ubuntu e distros Debian-like

Esta tela é acessada abrindo o “synaptic -> repositórios -> novo” e adicionando manualmente os dados como já visto.

Após você adicionar todos os repositórios de que deseje, está na hora de atualizar a base de dados de seu apt. Mas o que é isso? Simples! Baixa-se pacotes compactados com a relação de todos os softwares disponíveis para instalação. Quando você selecionar o software “X”, o apt vai baixá-lo no endereço em que está listado como existente.

Para fazer a atualização pelo terminal, rode no terminal:

$ sudo apt-get update

Linux: Instalando pacotes no Ubuntu e distros Debian-like

No synaptic, clique no botão “recarregar” e espere terminar o processo:

Linux: Instalando pacotes no Ubuntu e distros Debian-like

Se esta parte terminou sem nenhum sobressalto, você poderá receber a seguinte mensagem:

Linux: Instalando pacotes no Ubuntu e distros Debian-like
Linux: Instalando pacotes no Ubuntu e distros Debian-like

Isto significa que a lista de pacotes foi atualizada mas é preciso fazer o download da chave de autenticação. Esta chave é um código numérico que “comprova” a autenticidade dos pacotes de um referido repositório. Para baixá-la, podem ser utilizados dois métodos que você já sabe quais são: no terminal e na interface gráfica.

Esta chave varia em cada repositório, sendo que tomaremos como exemplo ainda o medibuntu, que é 2EBC26B60C5A2783.

Para baixá-la no terminal, faça:

$ sudo gpg –keyserver subkeys.pgp.net –recv 2EBC26B60C5A2783
$ sudo gpg –export –armor 2EBC26B60C5A2783 | sudo apt-key add -
$ sudo apt-get update

Ou então:

$ sudo apt-get install medibuntu-keyring
$ sudo apt-get update

No synaptic, basta procurar o pacote com o nome de “medibuntu-keyring” e marcá-lo para instalação com o botão direito do mouse. Aí basta apenas clicar no botão “aplicar”:

Linux: Instalando pacotes no Ubuntu e distros Debian-like

Prontinho! Agora é só instalar os pacotes que deseja, usando os comandos com o apt ou então pelo synaptic.

Instalando pacotes com o apt/synaptic

Agora que o mais chatinho já foi feito, vamos instalar softwares no Ubuntu e Debian-like sem maiores delongas. Este é o maior barato. A partir deste momento, basta usar o terminal ou a interface gráfica. Conectado à internet, escolha o que quiser e corra para o abraço da torcida.

Vamos mostrar um pequeno exemplo, instalando um visualizador de imagens. No caso, o gpicview. No terminal precisamos fazer:

$ sudo apt-get install gpicview

No synaptic, clique em “procurar” -> escreva o nome do pacote desejado -> “procurar” novamente. Clique com o botão direito do mouse -> marcar para instalação -> aplicar. A única limitação existente é a velocidade de sua conexão internet. O apt vai baixar e instalar o que foi pedido. Veja nosso exemplo:

Linux: Instalando pacotes no Ubuntu e distros Debian-like

Para desinstalá-lo, faça:

$ sudo apt-get remove gpicview

Ou no synaptic, repita a operação anterior optando no mouse por “marcar para remoção completa”. Também simples e fácil, sem nenhuma burocracia.

E para terminarmos este trabalho, aqui vai uma relação da equivalência entre softwares do Windows e do Linux, para servir de guia enquanto não se acostuma com os mesmos (2):

Microsoft Office – OpenOffice.org, Abiword/Gnumeric
Adobe Page Maker – Scribus
Descarregador de imagens do Windows – DigiKam
Delphi – Lazarus
Visual Basic – Gambas
3D Studio – Blender, PovRay
AutoCad – Qcad
Microsoft Money – KmyMoney
Internet Explorer – Firefox, Opera, Chrome, Midori, Arora
MS Outlook – Thunderbird, Evolution
Babylon – BabyTrans
eMule – aMule
Msn Messenger – aMsn, Emesene, Kmess, Kopete, Pidgin, Mercury
Desktop 3D – compiz
Windows Media Player – Kaffeine, Mplayer, Xine
Nero – K3B, brasero
PortSniffer – wireShark
Editor de imagem – gimp
PortScanner – Nessus
Fonte: http://www.vivaolinux.com.br/artigo/Instalando-pacotes-no-Ubuntu-e-distros-Debianlike

Tutorial de instalação do Ubuntu Control Center para um melhor gerenciamento de sua instalação do Ubuntu.

julho 23, 2010 in Configuração, Introdução, Linux

Instalação

Dependências/recomendações:

$ sudo apt-get install bum gparted gufw hardinfo startupmanager

Para a instalação do Font Manager e do Ubuntu Control Center, altere a arquitetura de i386 para amd64 se for o caso.

Font Manager:

$ wget http://font-manager.googlecode.com/files/font-manager_0.5.4-1_i386.deb
$ sudo dpkg -i font-manager_0.5.4-1_i386.deb
$ sudo apt-get -f install

Ubuntu Control Center:

$ wget http://ucc.googlecode.com/files/ucc_i386.deb
$ sudo dpkg -i ucc_i386.deb
$ sudo apt-get -f install

Utilização

O ícone do programa (UCC) fica disponível na seção Sistema do Menu Aplicativos, ao acioná-lo surge a limpa screen de inicialização:

O Ubuntu Control Center está dividido em 6 menus, que agrupam uma série de opções, vamos ver algumas delas.

Software Management (Central de Programas do Ubuntu, Gerenciador de Atualizações, Canais de Software, Mantenedor do Sistema, Criar Disco Inicializável e Gerenciador de Atualizações).

Hardware (Informações do Sistema, Drivers de hardware, Preferências do Monitor, Som, Teclado e Mouse e Impressoras).

Network and Internet (Conexões de Rede, Preferências de Proxy, Definições do Firewall UFW, Configurações para Bluetooth, Compartilhamento e Área de Trabalho Remota).

System (Aplicativos de Sessão, Aplicativos Preferenciais, Data e Hora, Idioma e Texto, BUM “Boot-Up Manager”, Font Manager, Visualizador de Logs e Abrir Nautilus como Administrador).

Local Disk (Utilitários de Unidades, GParted Partition Manager, Analisador de uso do Disco).

Personal Settings (Informações do Usuário, Configurações de Usuários, de Tela de Login, de Email, IMs e Ubuntu One).

Configurando rede no FreeBSD 7.0

julho 23, 2010 in Linux, Redes

Este tutorial tende especificar todos os passos para poder configurar IP, máscara, gateway e SSH num sistema operacional FreeBSD. Necessário ter conhecimentos intermediários em sistemas operacionais Unix/Linux. Vamos trabalhar diretamente nos arquivos do FREEBSD 7.0, visando uma configuração permanente.
IP e máscara
Primeiramente vamos descobrir quantas e como as interfaces de rede estão identificadas no sistema.
# ifconfig -a
fxp0: flags=8802 <BROADCAST,SIMPLEX,MULTICAST> Metric 0 Mtu 1500
options=8<VLAN_MTU>
ether 00:0c:1a:6e:4d:4a
Media: Ethernet autoselect
Agora abra o arquivo /etc/rc.conf com um editor de texto. Você precisa adicionar uma linha para cada placa de rede presente no sistema. Por exemplo, em nosso caso, adicionaremos uma linha como a abaixo:
ifconfig_fxp0=”inet 192.168.1.3 netmask 255.255.255.0″
Atente para as aspas ” “.
Você precisa substituir fxp0 e assim sucessivamente com nomes de dispositivos corretos para suas placas e os endereços apropriados.
Verifique se o IP e a máscara subiram adequadamente.
Dê um restart na rede:
# /etc/rc.d/netif restart
# ifconfig -a
Gateway
Edite o arquivo /etc/rc.conf e altere a linha:
gateway_enable=”NO”
para:
gateway_enable=”YES”
Adicione a linha seguinte para o IP default do gateway.
defaultrouter=”IP_do_gateway_default”
Ex.:
defaultrouter=”192.168.0.1″
Verifique se o gateway subiu como esperado:
# /etc/rc.d/routing restart
# netstat -nr
SSH
A instalação mínima do FreeBSD 7.0 já vem com os pacotes do servidor SSH. Basta ativar o acesso SSH durante ou após a instalação do S.O. Adicione a linha para dar acesso a algum usuário no SSH:
# /etc/ssh/sshd_config
AllowUsers eumesmo
Dê um restart no serviço SSH:
# /etc/rc.d/sshd restart
Teste se está tudo ok:
$ ssh eumesmo@192.168.1.3
Assim que terminar todas as configurações é recomendado reiniciar a máquina.
# init 6
ou
# reboot

Instalando e Configurando o MSN-Proxy

maio 15, 2010 in Configuração, Linux, Software

Photobucket 
O msn-proxy é um proxy transparente para clientes MSN Mensenger que permite que você controle e monitore o uso do Messenger em sua rede. Possui as seguintes características:  

  • Suporte ao novo protocolo P2P
  • Suporte a acls: “*mycompany@hotma*”
  • Suporte a listas de permissões através de ACLs
  • Suporte a envio de mensagens de controle
  • Suporte a remover/adicionar usuários
  • Suporte a procura por logs de usuários
  • Suporte a remoção de logs de usuários
  • Sistema de visualização de logs de usuários
  • Suporte Messenger 9
  • Monitor em tempo real

sabendo das informações acima, vamos ao que importa.  

1 – Pacotes necessários

Para instalar o MSN-Proxy vamos precisar de alguns pacotes que não são instalados por padrão no Ubuntu Server e vamos dividi-los em Contidos nos Repositórios e os Para compilação.  

1.1 – Contidos nos Repositórios

php5
apache2
mysql
make
gcc
g++
libmysqlclient15-dev  

1.2 – Para Compilação

libevent
msn-proxy  

2 – Procedimento de Instalação dos pacotes

2.1 – Contidos nos Repositórios

2.1.1 – instalando o suporte a php

sudo apt-get install php5 libapache2-mod-php5 php5-gd php5-imagick php5-mysql  

Sera feita a verificação dos pacotes a serem instalados e suas respectivas de pendencias e vai ser pedido uma confirmação para instalação, aceite e o procedimento de download sera feito, ao termina, sera iniciada a instalação dos pacotes.  

2.1.2 – Instalando o Apache v2

sudo apt-get install apache2  

novamente sera feita a verificação de dependências e neste caso a instalação sera feita automaticamente.  

2.2.3 – Instando o MySQL

sudo apt-get install mysql-server phpmyadmin  

como nos outros verificação dos arquivos de instalação e dependências serão feitas, e o phpmyadmin foi adicionado para facilitar a administração do MySQL, a confirmação de instalação vai ser solicitada, confirme.  

2.1.4 – Instalando a Lib Libmysqlclient15-dev


sudo apt-get install -f libmysqlclient15-dev
  

vai ser verificado as dependências e logo em seguida vai ser solicitada confirmação, confirme  

2.1.5 – Instalado compiladores

sudo apt-get install make gcc g++  

novamente vai ser verificado as dependências e por fim a confirmação, confirme.  

3 – Para Compilação

3.1 – Instalando LibEvent

Inicialmente vamos baixar em diretório de sua escolha o pacote do libevent no site oficial acessando a seguinte url:  

http://monkey.org/~provos/libevent-1.4.9-stable.tar.gz
  

3.1.1 – Procedimentos de instalação

Siga os procedimentos abaixo na ordem em que são disponibilizados que provavelmente nada de errado vai acontecer  

tar -xvzf libevent-1.4.9-stable.tar.gz  

cd  libevent-1.4.9-stable  

./configure  

make  

sudo make install  

Finalizando com o comando acima a instalação ainda precisamos fazer uma intervenção no sistema para que a lib que foi instalada seja usada corretamente, para isso vamos proceder da seguinte maneira:  

cd /usr/lib  

sudo ln -s /usr/local/lib/libevent-1.4.so.2  

com isso finalizamos a instalação do libevent.  

3.2 – Instalando o MSN-Proxy

Vamos providenciar o download do pacote de instalação acessando o link abaixo:  

http://ufpr.dl.sourceforge.net/sourceforge/msn-proxy/msn-proxy-0.7.tar.gz  

3.2.1 – Procedimentos de instalação

Siga os procedimentos abaixo na ordem em que são disponibilizados que provavelmente nada de errado vai acontecer  

tar -xvzf msn-proxy-0.7.tar.gz  

cd msn-proxy-0.7/  

antes de iniciarmos a compilação é preciso alterar o arquivo Makefile, já que ele vem configurado para instalações em freebsd e para instalar no linux precisamos fazer o seguinte:  

vim Makefile  

procurar e comentar as seguintes linhas, deixe como abaixo  

# FreeBSD
#MYSQLINC=/usr/local/include
#MYSQLLIB=/usr/local/lib/mysql
  

procurar e descomentar as seguintes linhas e deixe como abaixo:  

# Linux (most)
MYSQLINC=/usr/lib/mysql
MYSQLLIB=/usr/local/mysql/lib/mysql
  

salve o arquivo e vamos iniciar o procedimento de instalação.  

Siga os procedimentos abaixo na ordem em que são disponibilizados que provavelmente nada de errado vai acontecer  

3.2.2 – Compilando

make  

sudo make install  

3.2.2.3 – Copiando arquivos

sudo cp -R php /var/www  

sudo mv /var/www/php /var/www/msnproxy  

3.2.3 – Editando arquivos de configuração

sudo vim /var/www/msnproxy/mysql.inc.php  

Deixe como mostrado abaixo trocando os valores dos campos $user e $pass:  

$host = “localhost”
$user = “usuário do banco”
$pass = “sanha do usuario”
$db = “msnproxy”
$port = “3306”
  

sudo vim /usr/local/etc/msn-proxy/mysql/conf  

Deixe como mostrado abaixo trocando os valores dos campos usuario_banco e senha_user_banco:  

localhost|3306|usuario_banco|senha_user_banco|msnproxy

sudo vim /etc/php5/apache2/php.ini

Deixe como mostrado abaixo:  

safe_mode = On
safe_mode_gid = On
register_globals = On
display_errors = On
  

4 – Adicionando a Base de Dados e tabelas ao MySQL

O Msn-Proxy trabalha usando uma pequena base de dados que não é criada junto com a instalação, portanto vamos ter que cria-la, usando o phpmyadmin ou por linha de comando, abaixo exemplifico por linha de comando.  

Primeiramente vamos acessar a console do MySQL executando:  

mysql -u root -p  

Para criar a base de dados, é só executar o comando abaixo, lembrando que se quiser mudar o nome da base é só trocar o que esta em msnproxy por um nome a sua escolha:  

CREATE DATABASE `msnproxy`;  

E finalizando com a saída da console:  

quit  

5 – Iniciando o MSN-Proxy

Para iniciar o programa vamos executar o seguinte comando:  

sudo msn-proxy -d -i  

A seguinte mensagem vai ser mostrada:  

fail to read mysql config (check defaults table)   

se esta mensagem acima for mostra isto quer dizer que nossa base de dados esta criada e que foi populada com as tabeles dos sistema com sucesso porem ainda falta adicionar alguns dados na tabela default para isso vamos seguir os seguintes passo:  

mysql -u root -p  

use msnproxy;  

show tables;  

a saída do comando acima tem que ser esta:  

+——————–+
| Tables_in_msnproxy |
+——————–+
| contact_groups     |
| contacts           |
| defaults           |
| log                |
| sb                 |
| users              |
+——————–+
  

Agora vamos inserir os dados que faltam para que o msn-proxy seja corretamente carregado:  

INSERT INTO `defaults` ( `internal_host` , `connect` , `save_msg` , `save_contacts` , `commands` , `warnemail` , `warndn` , `warnmsg` , `msgfont` , `msgcolor` ) VALUES (’192.168.11.250′, ‘YES’, ‘YES’, ‘YES’, ’0′, ‘administrador@seudominio.com.br’, ‘Administrador do Sistema’, ‘Para sua segurança esta mensagem esta sendo monitorada.’, ‘Arial’, ‘black’);  

Com este comando vamos adicionar na tabela default os seguintes dados:  

  • IP do servidor que esta instalado o MSN-Proxy
  • O email do Administrador do Sistema
  • A mensagem que sera mostrada ao usuário de que sua seção esta sendo monitorada

PS: troque os campos em negritos por 1- ip do servidor do MSN-Proxy ; 2 – email do administrador do sistema 3- mensagem de monitoria  

Agora já podemos iniciar novamente o MSN-Proxy usando o comando:  

sudo msn-proxy -d -i &  

6 – Direcionando as conexões

Depois de iniciado o serviço os sistema esta no ar, porem ainda não estará gerenciando as conexões,  para isso vamos ter que configurar no servidor a repassagem de pacotes ou IP FORWARD vamos também precisar habilitar o NAT e por fim vamos fazer com que todas as requisições com destino a porta 1863 do MSN seja direcionada para o próprio servidor. Segue abaixo o processo:  

6.1 – Habilitando o IP Forward

O comando abaixo habilita o server a fazer a repassagem dos pacotes  

sudo sysctl -w net.ipv4.ip_forward=1  

para aceitar as configuração executamos:  

sudo sysctl -p /etc/sysctl.conf  

6.2 – Configurando o NAT

Para configurar o NAT no servidor vamos executar:  

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  

6.3 – Configurando o redirecionamento do MSN

Vamos executar o seguinte comando:  

sudo iptables -t nat -A PREROUTING -p tcp –dport 1863 -s <ip de rede da rede interna/mascara> -j REDIRECT  


  

7 – acessando a interface de administração

O sistema MSN-Proxy possuí uma interface de administração web que pode ser acessada por qualquer browser apenas o direcionando para a seguinte URL:  

http://IP_DO_SERVIDOR/msnproxy  

Acessando esse endereço vamos ter acesso a seguinte tela inicial:  

Photobucket  

Interface bem simples e intuitiva com apenas o link para a tela de configurações gerais e um chebox para que seja mostrados os usuários que estão desconectados. Neste mesma tela vão ser mostrados os contatos que estiverem online na imagem 1 e se o chebox “Mostrar usuários offline” estiver marcado os usuários desconectados também como podemos ver abaixo na imagem 2.  

Photobucket  

Photobucket  

Ainda na tela inicial, podemos interagir com algumas informações disponíveis na tela, uma dessas opções é a “Outras opções” onde vamos poder definir configurações individuais para o usuário como veremos abaixo:  

Photobucket  

Alem das configurações de bloqueis são disponibilizados informações sobre a “Ultima conexão” do usuário com data e hora e o “Ultimo IP” neste caso sera o IP da maquina da rede interna.  

Mais abaixo estão disponíveis como vai se comportar o proxy para aquele usuário como alguns tipos de bloqueios, avisos e log de mensagens e contatos.  

7.1 – Configurações Gerais

Nesta tela vamos configurar como o servidor vai se comportar para todos os clientes que vão ser administrados pelo proxy. A tele é a mesma mostrada para a configuração individual dos usuários, porem nesta tudo que for configurado aqui vai ser replicados para todos. Essas configurações só acrescentam as configurações individuais elas não sobrescrevem as opções já marcadas individualmente. A tela foi dividida blocos de configuração como veremos nos tópicos a seguir:  

7.1.1 – Opções de Servidor, conexão e log

Photobucket  

Neste bloco de configurações vamos poder definir:  

  • IP interno do proxy → IP configurado na placa de rede interna;
  • Conexão → Permite que todos os usuários tenham permissão pra logar se a opção “SIM” estiver ativa caso a opção “NÃO” esteja ativa, só usuários cadastrados e ativos;
  • Salvar mensagens → Se habilitado, faz o log todas as mensagens trocadas por todos os clientes
  • Salvar lista de contatos → Se habilitado, salva a lista de contatos de todos os clientes

7.2 – Outras opções

  

Neste bloco de configurações vamos poder definir:  

IP interno do proxy → IP configurado na placa de rede interna  

Conexão → Permite que todos os usuários tenham permissão pra logar se a opção “SIM” estiver ativa caso a opção “NÃO” esteja ativa, só usuários cadastrados e ativos  

Salvar mensagens → Se habilitado, loga todas as mensagens trocadas por todos os clientes  

Salvar lista de contatos → Se habilitado, salva a lista de contatos de todos os clientes  

8.2 – Outras opções

 

Photobucket  

Neste bloco de configuração veremos as opções de restrições disponíveis a tela é totalmente explicativa onde podemos destacar o bloqueio de conexão por versão dos clientes MSN, bloqueio de transferência de arquivos, Aviso de monitoramento, Bloqueio de Winks e pedidos de atenção, entre outras.  

7.3 – Aviso de monitoramento

Photobucket  

Neste ultimo bloco vamos configurar a mensagem que sera enviada ao usuário logo que for mandada a primeira mensagem em chat, avisando que esta sessão esta sendo monitorada, onde podemos informar o email do administrador para possíveis contatos, o nome do administrador e a mensagem que vai ser enviada. Ainda podemos definir que tipo de fonte vai ser utilizada e a cor do texto.  

Esta mensagem só sera mostrada se a opção “Avisa ao usuário que a mensagem esta sendo monitorada” do bloco outras opções estiver marcada.  

8 – Tela de contatos dos usuários

Nesta tela vamos poder visualizar a lista de contatos dos usuários, tanto os conectados quantos os que estiverem desconectados, a finalidade desta tela é permitir ou bloquear (depende da politica) que o usuário possa falar com um o mais contatos de sua lista de contatos.  

Photobucket  

9 – Tela de log

Por fim, veremos a tela de log do MSN-Proxy, caso tenha habilitado esta funcionalidade todas a conversas vão ser logadas e vão estar disponíveis como vemos demonstrado abaixo na tela:  

Photobucket

Tutorial instalação do Linux Ubuntu no VirtualBox

maio 14, 2010 in Distribuições, Linux, Virtualização

Usar uma Máquina Virtual é uma boa solução para trabalhar com Ubuntu ( ou qualquer outro SO ) quando não se tem acesso a outra máquina ou não querem criar uma nova partição para o instalar.

 Assim, com este guia pretendo mostrar como é fácil criar uma Máquina Virtual no VirtualBox para instalar o Ubuntu. Os passos de instalação de Ubuntu são simples e encontram-se bem documentados pela net.

Nota: Irei designar “Máquina Virtual” por VM (Virtual Machine), como abreviatura usada internacionalmente.

 O VirtualBox é uma aplicação de virtualização onde é possível criar máquinas virtuais para a instalação de diversos Sistemas Operativos, sem afectar o vosso sistema actual. Está disponível para Linux, Mac e Windows e é uma boa alternativa ao VMware e VirtualPC.

 Vamos começar? (Depois do VirtualBox estar instalado)

 No VirtualBox, carregar no Botão “Novo” (New), que irá abrir o “Assistente de Criação de Máquina Virtual” para criar uma nova VM.

 1- Nome: Iremos dar um nome a nossa VM e o tipo de Sistema Operativo que irá ser instalado:

criar-nova-maquina-virtual
Criar nova Máquina Virtual

 

2- Memória : Escolher a quantidade de memória Ram que irá estar disponível para a VM, neste exemplo irei usar 384MB.

Memória RAM
Memória RAM

 

3- Disco Rígido Virtual : A VM irá estar instalada num disco rígido virtual. Este disco rígido virtual será visto por ti ou pelo sistema nativo como um simples ficheiro, mas dentro do VirtualBox é um Disco Rígido.
Para criar um novo, carregue em “Novo” que irá abrir o “Assistente de Criação de Discos Rígidos Virtuais”.

Criar novo Disco Virtual
Criar novo Disco Virtual

Temos 2 hipóteses a nossa disposição

  • Armazenamento Expandido Dinamicamente: Vai ser usado espaço no teu sistema a medida que for necessário. Irá crescer dinamicamente a medida que o SO instalado precisar de espaço. Tem como desvantagem que a VM poderá ser um pouco mais lenta.
  • Armazenamento de Tamanho Fixo: O espaço vai ser reservado na sua totalidade, criando um ficheiro com o tamanho do disco virtual que se desejar. O tempo de criação irá ser superior a opção anterior por causa desta reserva.

Neste exemplo as opções escolhidas foram:

  • Armazenamento Expandido Dinamicamente
  • Tamanho 6.00 GB (recomendo no mínimo 4GB)
Opções do Disco Virtual
Opções do Disco Virtual 

Passando estes passos a Máquina Virtual está criada e aparece do lado esquerdo no VirtualBox.
Carregar no botão “Definições” vai dar acesso a mais opções da nossa VM. Agora chegou a altura de uns últimos detalhes.Na secção “Geral”, no separador “Avançado” é preciso escolher a opção “Activar PAE/NX” - NOTA: Está opção é necessária para o Ubuntu Server

Activar PAE/NX
Activar PAE/NX

Na secção “CD/DVD-ROM” devem activar a opção “Montar o Dispositivo CD/DVD” e escolher onde está o cd do Ubuntu – que pode ser físico ou um ISO (como neste exemplo)

Escolha do CD/DVD-ROM 
Escolha do CD/DVD-ROM 

Podem testar as outras opções e procurar mais informações na Internet, mas no âmbito desde Guia, está tudo pronto para instalar o Ubuntu

Agora só falta mesmo “Iniciar” a VM e escolher a opção “Instalar Ubuntu”. Será seguirem os passos da Instalação, que são simples, sem afectar a vossa máquina e está pronto a usar.

Ubuntu no VirtualBox
Ubuntu no VirtualBox 

Obs: 

- A placa de rede da VM vem como padrão em Modo NAT, por isso, desde que a vossa máquina tenha acesso a Net, a VM também irá ter sem precisar de nenhuma configuração extra;

- Tal como o nome indica, isto é uma Máquina Virtual. Não tem acesso, por exemplo, a placa gráfica que estiver instalada no computador. Assim não é necessário instalar drivers de nenhum hardware que esteja na vossa máquina.

Bacula-web – um programa web baseado em php para gestão de backups

maio 13, 2010 in Backup, Linux

Bacula-web é um programa web baseado em php que provê um sumário dos “jobs” que já foram executados. Ele obtém informações sobre o banco de dados do catálogo do Bacula, as quais utiliza para a elaboração de relatórios e estatísticas. Possui um ótimo aspecto gráfico, podendo ser utilizado, principalmente, como forma de informativo de nível gerrencial ou, até mesmo, para apresentação ao cliente.

tutorial linux

Requisitos:

* Necessário um servidor web
* PHP instalado e funcionando no seu servidor web. Foram testadas as versões 4.3.4 e 5.0.4. Para mais informações sobre php, acesse: http://www.php.net
* Os seguintes pacotes devem ser instalados como parte do PHP:

* Gettext (opcional)
* GD 2.x ou maior
* TrueType (opcional)
* Pear DB (http://pear.php.net/package/DB)
* MySQL ou PostgreSQL
* O pacote dbsize “contrib” se você utiliza o PostgreSQL
* Bacula precisa estar instalado e funcionando, mas não precisa estar sendo executado para o uso do Bacula-web.
* O MySQL ou PostgreSQL precisa estar rodando.

Download Bacula-Web:
http://sourceforge.net/project/showfiles.php?group_id=50727

Site:
http://webacula.sourceforge.net/

Backup usando Bacula – Tutorial de instalação

maio 13, 2010 in Backup, Linux

Bacula é um programa que possibilita fazer backup, restaura e verificar dados através da sua rede. Existem clientes do Bacula para Linux, Windows e Mac OSX. Tornando-o uma solução independente da plataforma e disponível para todo tipo de rede.

Visão geral

Baculaé composto de vários componentes e serviços usado para genrenciar quais arquivos a serem feito bakcupa e onde serão armazenados:

  • Bacula Director: um serviço que controla backup, restauração, verificação, e operações de arquivo.
  • Bacula Console: uma aplicação que permite a comunicação com o Director. Existem três versões do Console:
    • Versão de linha de comando baseada em texto
    • Interface Gráfica de Usuário (GUI) baseada no Gnome GTK+.
    • Interface GUI wxWidgets.
  • Bacula File: também conhecido como o programa Cliente do Bacula. Esta aplicação é instalada nas máquinas que serão feito backup, e é responsável pelos dados requisitados pelo Director.
  • Bacula Storage: o programa que executa o armazenamento e recuperação dos dados para a mídia física.
  • Bacula Catalog: é responsável por manter os arquivos de índice e banco de dados de volumes para todos os arquivos feito backups, possiblitando a localização rápida e restauração dos arquivos arquivados. O Catalog suporta três diferentes tipos de bancos de dados, MySQL, PostgreSQL, e SQLite.
  • O Monitor do Bacular: permite a monitoração do Director, daemons de arquivos, e deamons de Storage. Atualmente o Monitor só está disponível como uma aplicação GTK+ GUI.

Estes serviços e aplicações podem ser executados em múltiplos clientes e servidores, ou podem ser instalado em uma máquina se estiver fazendo o backup de um único disco ou volume.

Instalação

Existem muitos pacotes contendo os diferentes componentes do Bacula. Para instalar o Bacula, no terminal digite:

sudo apt-get install bacula

Por padrão, ao instalar o pacote bacula ele irá utilizar o banco de dados MySQL para o Catalog. Se você quizer usar o SQLite ou PostgreSQL, para o Catalog, instale bacula-director-sqlite3 ou bacula-director-pgsql respectivamente.

Durante o processo de instalação você sera solicitado para fornecer credenciais para o administrador do banco de dados e o proprietario do banco de dados do bacula. O administrador do banco de dados precisa ter os direitos apropriados para criar um banco de dados, para mais informações veja o “MySQL”.

Configuração

O arquivos de configuração do Bacula são formatados baseados em recursos compreendido por diretivas cercados por chaves “{}”. Cada componente do Bacula tem um arquivo individual no diretório /etc/bacula.

Os vários componentes do Baculadevem autorizar-se entre eles. Isto password. Por exemplo. a senha do recurso Storage no arquivo /etc/bacula/bacula-dir.conf deve coincidir com a senha do recurso Director no arquivo /etc/bacula/bacula-sd.conf.

Por padrão a tarefa de backup chamada Client1 é configurada para arquivar o Bacula Catalog. Se você planeja utilizar um servidor para fazer backup de mais de um cliente você deve mudar o nome desta tarefa para algo mais descritivo. Para mudar o nome edite /etc/bacula/bacula-dir.conf:

#
# Define the main nightly save backup job
#   By default, this job will back up to disk in
Job {
  Name = "ServidorDeBackup"
  JobDefs = "TarefaPadrao"
  Write Bootstrap = "/var/lib/bacula/Client1.bsr"
}
O exemplo acima alterar o nome da tarefa para BackupServer correspondendo ao nome da máquina. Substitua “BackupServer” com o nome aprópriado da máquina, ou com outro nome descritivo.

O Console pode ser usado para consultar o Director sobre tarefas, mas para usar o Console como usuário não-root, o usuário precisa fazer parte do grupo bacula. Para adicionar um usuário ao grupo bacula digite o seguinte no terminal:

sudo adduser $username bacula
Substitua $username com o nome do usuário atual. Também, se você estiver adicionando o usuário atual para o grupo você deve fazer o logout e login para que as novas permissões surtam efeito.

Backup da Máquina Local

Esta seção descreve como fazer o backup de diretórios específicos em uma única máquina para um drive de fita local.

  • Primeiro, o dispositivo Storage precisa ser configurado. Edite /etc/bacula/bacula-sd.conf e adicione:
    Device {
      Name = "Tape Drive"
      Device Type = tape
      Media Type = DDS-4
      Archive Device = /dev/st0
      Hardware end of medium = No;
      AutomaticMount = yes;               # when device opened, read it
      AlwaysOpen = Yes;
      RemovableMedia = yes;
      RandomAccess = no;
      Alert Command = "sh -c 'tapeinfo -f %c | grep TapeAlert'"
    }

    Este exemplo é para um drive de fita DDS-4. Ajuste o Tipo de Mídia e Dispositivo de Arquivo que corresponda com o seu hardware.

    Você poderia igualmente remover o comentário de um dos outros exemplos no arquivo.

  • Após a editar o /etc/bacula/bacula-sd.conf o daemon Storage terá de ser reiniciado:
    sudo /etc/init.d/bacula-sd restart
  • Agora adicione o recurso Storage no /etc/bacula/bacula-dir.conf para usar o novo Dispositivo:
    # Definition of "Tape Drive" storage device
    Storage {
      Name = TapeDrive
      # Do not use "localhost" here
      Address = backupserver               # N.B. Use a fully qualified name here
      SDPort = 9103
      Password = "Cv70F6pf1t6pBopT4vQOnigDrR0v3LT3Cgkiyj"
      Device = "Tape Drive"
      Media Type = tape
    }

    A diretiva Address precisa usar o Fully Qualified Domain Name (FQDN) do servidor. Altere backupserver para o nome atual da máquina.

    Também, assegure-se que a diretiva Password combine com a senha em /etc/bacula/bacula-sd.conf.

  • Crie um novo FileSet, que irá determinar quais diretórios irão conter no backup, adicionando:
    # LocalhostBacup FileSet.
    FileSet {
      Name = "LocalhostFiles"
      Include {
        Options {
          signature = MD5
          compression=GZIP
        }
        File = /etc
        File = /home
      }
    }

    Este FileSet irá fazer o backup dos diretórios /etc e /home. A diretiva Options do recurso configuram o FileSet para criar uma assinatura MD5 para cada arquivo da cópia de segurança, e para comprimir os arquivos usando GZIP.

  • A seguir, crie um novo Agendamento para a tarefa de backup:
    # LocalhostBackup Schedule -- Daily.
    Schedule {
      Name = "LocalhostDaily"
      Run = Full daily at 00:01
    }

    A tarefa será executada todo dia as 00:01 ou 12:01 am. Existem várias outras opções de agendamento disponíveis.

  • Finalmente crie a Tarefa:
    # Localhost backup.
    Job {
      Name = "LocalhostBackup"
      JobDefs = "DefaultJob"
      Enabled = yes
      Level = Full
      FileSet = "LocalhostFiles"
      Schedule = "LocalhostDaily"
      Storage = TapeDrive
      Write Bootstrap = "/var/lib/bacula/LocalhostBackup.bsr"
    }

    A tarefa irá fazer um backup Completo para o drive de fita diariamente.

  • Cada fita usada precisará de um Rótulo. se a fita atual não tiver um rótulo o Bacula enviará um email para que você saiba. Para rotular uma fita usando o Console digite o seguinte comando no terminal:
    bconsole
  • No console do Bacula digite:
    label
  • Será solicitado o recurso de Armazenamento:
    
    Catálogo selecionado automáticamente: MeuCatalogo
    Usando catálogo "MeuCatalog"
    Os recursos de Armazenamento definidos são:
         1: Arquivo
         2: Drive de Fita
    Selecione o recurso de Armazenamento (1-2):2
    
  • Digite o nome do novo Volume:
    
    Digite o novo nome do Volume: Domingo
    Pools Definidas:
         1: Padrão
         2: Zerado

    Substitua Domingo com o rótulo desejado.

Agora, selecione o Pool:


Selecione o Pool (1-2): 1
Conectando ao daemon de armazenamento do TapeDrive TapeDrive no backupserver:9103 ...
Enviando o comando label para o Volume "Domingo" Slot 0 ...
Fim

Wikibooks php – Livro destinado ao desenvolvimento de aplicativos web em PHP. Inicialmente era apenas uma idéia, agora já são mais de 600 páginas de bom conteúdo

março 25, 2010 in Linux, php

Livro destinado ao desenvolvimento de aplicativos web em PHP. Inicialmente era apenas uma idéia, agora já são mais de 600 páginas de bom conteúdo. No início era só um colaborador, agora já somos sete. Traga sua colaboração e façamos algo juntos que seja grande e de muita utilidade para você e para todos os que lidam com desenvolvimento web.

  1. Introdução 3de8.svg
    1. História 3de8.svg
    2. Características e Recursos 3de8.svg
  2. InteligênciaEmocional 3de8.svg
  3. Instalação e configurações do ambiente 3de8.svg
    1. Via Xampp 3de8.svg
    2. Individualmente 3de8.svg
  4. Editores e IDEs para PHP, CSS, JavaScript e HTML 3de8.svg
    1. Eclipse com PHPEclipse, Aptana e outros plugins 3de8.svg
    2. PHPDesigner 3de8.svg
    3. Kate 3de8.svg
    4. Dreamweaver 3de8.svg
    5. Zend Studio 3de8.svg
    6. VS.PHP 3de8.svg
    7. Delphi for PHP 3de8.svg
    8. KDevelop 3de8.svg
    9. PSPAD 3de8.svg
    10. Quanta 3de8.svg
    11. BlueFish 3de8.svg
    12. PHPEdit 3de8.svg
    13. Geany 3de8.svg
    14. NotePad++
  5. Referências 3de8.svg
    1. Windows 3de8.svg
    2. Linux 3de8.svg
    3. HTML 3de8.svg
    4. JavaScript 3de8.svg
    5. CSS 3de8.svg
    6. PHP 3de8.svg
    7. Livros e E-books 3de8.svg
    8. Cursos na área 3de8.svg
  6. Administração de SGBDs 3de8.svg
    1. MySQL 3de8.svg
    2. PostgreSQL 3de8.svg
    3. SQLite 3de8.svg
  7. Geradores de Aplicativos 3de8.svg
    1. phpCodeGenie (com MySQL) 3de8.svg
    2. SQLMaestro (com MySQL, Oracle, MS SQL Server, PostgreSQL, SQLite, Firebird e MaxDB) 3de8.svg
    3. phpMyEdit 3de8.svg
    4. DadaBik 3de8.svg
    5. PHPLibDev 3de8.svg
    6. Web Form Generator 3de8.svg
    7. PHP Code Generator (com MySQL, PostgreSQL, Access e logo outros) 3de8.svg
  8. CMSs (Sistemas Gerenciadores de Conteúdo)
    1. Joomla (Portais) 3de8.svg
    2. Mambo (Portais) 3de8.svg
    3. Drupal (Portais) 3de8.svg
    4. Xoops (Portais)
    5. MediaWiki (wikis) 3de8.svg
    6. WordPress (blogs) 3de8.svg
    7. eGroupWare (colaboração) 3de8.svg
    8. Moodle (eLearning) 3de8.svg
  9. FrameWorks
    1. P4A 3de8.svg
    2. Zend
    3. Seagull 3de8.svg
    4. CodeIgniter
    5. QCodo 3de8.svg
    6. Zephyr-php 3de8.svg
    7. CakePHP 3de8.svg
    8. Symfony 3de8.svg
    9. Prado 3de8.svg
    10. ZFRails 3de8.svg
    11. VCL for PHP 3de8.svg
  10. Abstrações de Bancos de Dados 3de8.svg
    1. PDO 3de8.svg
    2. AdoDB 3de8.svg
    3. PEAR/DB 3de8.svg
  11. Trabalhando em PHP com 3de8.svg
    1. Formulários 3de8.svg
    2. URLs 3de8.svg
    3. Funções 3de8.svg
    4. Constantes mágicas e super globais 3de8.svg
    5. Session 3de8.svg
    6. Arquivos e Diretórios 3de8.svg
    7. Path 3de8.svg
    8. Includes 3de8.svg
    9. Formatação da saída 3de8.svg
    10. Imagens e Gráficos 3de8.svg
    11. Números 3de8.svg
    12. Strings 3de8.svg
    13. Permissões de arquivos e diretórios 3de8.svg
    14. Validação de Dados 3de8.svg
    15. Arrays 3de8.svg
    16. XML 3de8.svg
    17. Cookies
  12. Integração do PHP com SGBDs 3de8.svg
    1. MySQL 3de8.svg
    2. PostgreSQL 3de8.svg
    3. SQLite 3de8.svg
    4. IBM DB2 Express 3de8.svg
  13. Recursos Extras
    1. Controle de Estoque 3de8.svg
    2. Loja Virtual 3de8.svg
    3. Código de Barras 3de8.svg
    4. Boleto bancário 3de8.svg
    5. PHP-GTK 3de8.svg
    6. Contadores de visitas 3de8.svg
    7. Livros de visitas
    8. Chats
    9. Suporte Online
    10. Forums
    11. Enquetes
    12. Geradores de Relatórios 3de8.svg
    13. Integração com AJAX 3de8.svg
    14. Integração com Flash 3de8.svg
    15. Integração com Java
    16. Bibliotecas de Funções 3de8.svg
    17. Tratamento de Erros
    18. Compilando o PHP 3de8.svg
    19. Flex 3de8.svg
  14. Orientação a Objetos
    1. Teoria e exercícios 3de8.svg
    2. Aplicativos de exemplo
    3. Ferramentas
  15. Aplicativos de Exemplo com 3de8.svg
    1. MySQL 3de8.svg
    2. PostgreSQL 3de8.svg
    3. SQLite 3de8.svg
  16. Apêndices
    1. Análise e Projeto 3de8.svg
    2. Design
    3. Hospedagem e Domínio 3de8.svg
      1. Domínio
      2. Hospedagem de Site com cPanel 3de8.svg
    4. Segurança 3de8.svg
    5. Documentação
    6. Informações Diversas 3de8.svg
    7. Oportunidade de Trabalho 3de8.svg
      1. Elaboração de Currículos 3de8.svg
      2. Técnicas de Entrevistas 3de8.svg
      3. Preços de Serviços 3de8.svg
    8. Redes 3de8.svg
    9. Editores Gráficos 3de8.svg

Contribuidores

  • Daniel Ratkevicius (PHP+FLASH) – Contatos: danielratk@hotmail.com[1]
  • Eric Silva – Contatos: eric_silva@msn.com[2]
  • Haroldo Barbosa – Contatos: haroldob@gmail.com[3]
  • Jackson Araujo – Contatos: jackson@designrio.com[4]
  • Jamires Lontra [Varginha/MG] – Contato: jlontra@etdevarginha.com.br
  • Ribamar FS – Contatos: ribafs[ ]users.sourceforge.net [5] e [6].
  • William G. Comnisky – Contatos: w.comnisky@gmail.com[7] ou [8]

O NFePHP é um projeto de software livre para Nota Fiscal Eletrônica em php

março 16, 2010 in php

O NFePHP é um projeto de software livre para Nota Fiscal Eletrônica. Na versão atual ele já realiza as principais tarefas, tais como:
  • Geração da nota fiscal em XML;
  • Assinatura da nota utilizando certificado digital e-CNPJ (em PHP);
  • Envio e validação das notas em lotes por web services;
  • Geração da DANFE;

Download
ícone de Download

Versão atual v0.1 ( alpha: pre-review )
Principais atualizações na NFePHP v0.1:
  • Geração da nota fiscal em XML a partir do TXT;

Download: Direto | via SVN | Notas da versão

Participe
ícone: Participe

Você pode contribuir através da sua participação! Não é necessário saber programar (claro! programadores são bem vindos!)

Se você possui sugestões ou melhorias, queremos que você participe!

Acesse uma (ou mais) das opções abaixo:

Grupo NFePHP (GoogleGroups) | Projeto e códigos (Portal Assembla)

Como fazer a instalação do Avast antivírus no Linux

março 5, 2010 in Aplicativos, Linux

Este artigo mostra como fazer a instalação do Avast antivírus no Linux. Além de ser grátis, mostrou-se mais eficaz que o ClamAV nos meus testes.

Faça o download do Avast4 e da lib nos links abaixo:

Extraia os dois pacotes com o comando:

# tar -xzf nome_do_pacote

Depois de extraídos, instale primeiramente a lib e posteriormente oAvast4server. Para fazer a instalação é só executar o comando:

# ./mkinstall.sh

O comando é o mesmo para a instalação dos dois pacotes, ressaltando que você deve instalar a LIB antes do Avast.

Para atualizar a base de dados de vírus de seu Avast, execute o comando:

# avastvpsupdate.pl

Após tê-lo atualizado, você já pode executar o escaneamento:

# avastcmd /home

Pronto, seu Avast esta instalado e operante.

Instalando VirtualBox no Ubuntu 8.10 e outros sistemas derivados Debian

março 5, 2010 in Virtualização

Instalando VirtualBox no Ubuntu 8.10 e outros sistemas derivados Debian

VirtualBox é um software de virtualização, distribuido pela Sun Microsystems. Existem duas versões, uma licenciada como software livre, sob a GPL, e outra licenciada como software proprietário, licenciada sob a VirtualBox Personal Use and Evaluation License. (http://www.virtualbox.org/wiki/VirtualBox_PUEL)

As funcionalidades de ambas as versões são equivalentes, exceto por algumas características adicionais na versão proprietária. A versão proprietária é distribuída gratuitamente através de, no caso de sistemas Debian-Like, repositórios APT(pacotes pré-compilados;binários), já versão livre precisa ser compilada pelo usuário. Este artigo abordará a instalação da versão proprietária-gratuita em um sistema Ubuntu 8.10, posteriormente escreverei sobre a instalação da versão Open Source do VirtualBox.

A instalação:

Abra o console em:

Aplicativos >> Acessórios >> Consola

Console - Ubuntu 8.10

No programa que abrir digite o comando abaixo:

sudo gedit /etc/apt/sources.list

Digite sua senha depois de:

[sudo] password for nome_do_usuario:

Será aberto em seguia, um editor de textos com um arquivo que devemos alterar. Role a pagina até o fim do arquivo, na ultima linha, adicione o conteúdo abaixo:

deb http://download.virtualbox.org/virtualbox/debian intrepid non-free

Salve as alterações(Arquivo >> Salvar) e feche o editor. Deixe o console aberto.

Por segurança, a Sun disponibiliza uma chave-publica para ser usada no apt-secure para garantir a integridade do software que esta sendo feito o download. Faça o download da chave em:

http://download.virtualbox.org/virtualbox/debian/sun_vbox.asc

Utilizando novamente o console, adicione a chave com o comando:

sudo apt-key add sun_vbox.asc

OBS: Atenção, para digitar o comando acima, é necessário estar com o console no mesmo diretório em que a chave foi salva.

Novamente no console digite:

sudo apt-get update

Para instalar o VirtualBox faça, no console:

apt-get install virtualbox-2.1

 

Confirme quando perguntado se deseja continuar, teclando S e depois Enter. O download é de aproximadamente 47,5 MB.

Irá aparecer algo parecido com isto:

matheus@matheus-laptop:~/Desktop$ sudo apt-get install virtualbox-2.1

Lendo listas de pacotes… Pronto

Construindo árvore de dependências

Lendo informação de estado… Pronto

Os pacotes extra a seguir serão instalados:

dkms fakeroot libqt4-dbus libqt4-designer libqt4-network libqt4-qt3support

libqt4-script libqt4-sql libqt4-sql-mysql libqt4-xml libqtcore4 libqtgui4

libsdl-ttf2.0-0 patch qt4-qtconfig

Pacotes sugeridos:

libqt4-dev diff-doc

Os NOVOS pacotes a seguir serão instalados:

dkms fakeroot libqt4-dbus libqt4-designer libqt4-network libqt4-qt3support

libqt4-script libqt4-sql libqt4-sql-mysql libqt4-xml libqtcore4 libqtgui4

libsdl-ttf2.0-0 patch qt4-qtconfig virtualbox-2.1

0 pacotes atualizados, 16 pacotes novos instalados, 0 a serem removidos e 215 não atualizados.

É preciso baixar 47,5MB de arquivos.

Depois desta operação, 103MB adicionais de espaço em disco serão usados.

Você quer continuar [S/n]? s

Obter:1 http://br.archive.ubuntu.com intrepid-updates/main libqtcore4 4.4.3-0ubuntu1.1 [2085kB]

Obter:2 http://download.virtualbox.org intrepid/non-free virtualbox-2.1 2.1.0-41146_Ubuntu_intrepid [36,0MB]

Obter:3 http://br.archive.ubuntu.com intrepid-updates/main libqt4-network 4.4.3-0ubuntu1.1 [437kB]

Obter:4 http://br.archive.ubuntu.com intrepid-updates/main libqtgui4 4.4.3-0ubuntu1.1 [4286kB]

Obter:5 http://br.archive.ubuntu.com intrepid/main dkms 2.0.20.4-0ubuntu2 [55,5kB]

Obter:6 http://br.archive.ubuntu.com intrepid/main fakeroot 1.9.5ubuntu1 [114kB]

Obter:7 http://br.archive.ubuntu.com intrepid-updates/main libqt4-xml 4.4.3-0ubuntu1.1 [112kB]

Obter:8 http://br.archive.ubuntu.com intrepid-updates/main libqt4-dbus 4.4.3-0ubuntu1.1 [216kB]

Obter:9 http://br.archive.ubuntu.com intrepid-updates/main libqt4-script 4.4.3-0ubuntu1.1 [420kB]

Obter:10 http://br.archive.ubuntu.com intrepid-updates/main libqt4-designer 4.4.3-0ubuntu1.1 [2073kB]

Obter:11 http://br.archive.ubuntu.com intrepid-updates/main libqt4-sql 4.4.3-0ubuntu1.1 [109kB]

Obter:12 http://br.archive.ubuntu.com intrepid-updates/main libqt4-qt3support 4.4.3-0ubuntu1.1 [1366kB]

Obter:13 http://br.archive.ubuntu.com intrepid-updates/main libqt4-sql-mysql 4.4.3-0ubuntu1.1 [33,7kB]

Obter:14 http://br.archive.ubuntu.com intrepid/main libsdl-ttf2.0-0 2.0.9-1 [15,5kB]

Obter:15 http://br.archive.ubuntu.com intrepid/main patch 2.5.9-5 [100kB]

Obter:16 http://br.archive.ubuntu.com intrepid-updates/main qt4-qtconfig 4.4.3-0ubuntu1.1 [109kB]

Baixados 47,5MB em 37min42s (21,0kB/s)

Pré-configurando pacotes …

Selecionando pacote previamente não selecionado libqtcore4.

(Lendo banco de dados … 110323 arquivos e diretórios atualmente instalados).

Desempacotando libqtcore4 (de …/libqtcore4_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-network.

Desempacotando libqt4-network (de …/libqt4-network_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqtgui4.

Desempacotando libqtgui4 (de …/libqtgui4_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado virtualbox-2.1.

Desempacotando virtualbox-2.1 (de …/virtualbox-2.1_2.1.0-41146%5fUbuntu%5fintrepid_i386.deb) …

Selecionando pacote previamente não selecionado dkms.

Desempacotando dkms (de …/dkms_2.0.20.4-0ubuntu2_all.deb) …

Selecionando pacote previamente não selecionado fakeroot.

Desempacotando fakeroot (de …/fakeroot_1.9.5ubuntu1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-xml.

Desempacotando libqt4-xml (de …/libqt4-xml_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-dbus.

Desempacotando libqt4-dbus (de …/libqt4-dbus_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-script.

Desempacotando libqt4-script (de …/libqt4-script_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-designer.

Desempacotando libqt4-designer (de …/libqt4-designer_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-sql.

Desempacotando libqt4-sql (de …/libqt4-sql_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-qt3support.

Desempacotando libqt4-qt3support (de …/libqt4-qt3support_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libqt4-sql-mysql.

Desempacotando libqt4-sql-mysql (de …/libqt4-sql-mysql_4.4.3-0ubuntu1.1_i386.deb) …

Selecionando pacote previamente não selecionado libsdl-ttf2.0-0.

Desempacotando libsdl-ttf2.0-0 (de …/libsdl-ttf2.0-0_2.0.9-1_i386.deb) …

Selecionando pacote previamente não selecionado patch.

Desempacotando patch (de …/patch_2.5.9-5_i386.deb) …

Selecionando pacote previamente não selecionado qt4-qtconfig.

Desempacotando qt4-qtconfig (de …/qt4-qtconfig_4.4.3-0ubuntu1.1_i386.deb) …

Processando gatilhos para man-db …

Configurando libqtcore4 (4.4.3-0ubuntu1.1) …

Configurando libqt4-network (4.4.3-0ubuntu1.1) …

Configurando libqtgui4 (4.4.3-0ubuntu1.1) …

Configurando virtualbox-2.1 (2.1.0-41146_Ubuntu_intrepid) …

Adicionando grupo `vboxusers’ (GID 126) …

Concluído.

* Starting VirtualBox kernel module * done.

Configurando dkms (2.0.20.4-0ubuntu2) …

* Running DKMS auto installation service for kernel 2.6.27-7-generic [ OK ]

Configurando fakeroot (1.9.5ubuntu1) …

Configurando libqt4-xml (4.4.3-0ubuntu1.1) …

Configurando libqt4-dbus (4.4.3-0ubuntu1.1) …

Configurando libqt4-script (4.4.3-0ubuntu1.1) …

Configurando libqt4-designer (4.4.3-0ubuntu1.1) …

Configurando libqt4-sql (4.4.3-0ubuntu1.1) …

Configurando libqt4-qt3support (4.4.3-0ubuntu1.1) …

Configurando libqt4-sql-mysql (4.4.3-0ubuntu1.1) …

Configurando libsdl-ttf2.0-0 (2.0.9-1) …

Configurando patch (2.5.9-5) …

Configurando qt4-qtconfig (4.4.3-0ubuntu1.1) …

Processando gatilhos para libc6 …

ldconfig deferred processing now taking place

matheus@matheus-laptop:~/Desktop$

Aparecerá uma tela como esta abaixo, confirme com Enter:

Espere até que o processo chegue ao fim.

Depois que a instalação estiver completa, será instalado também uma interface gráfica que facilita muito a utilização do VirtualBox. Ela esta disponível em:

Aplicativos >> Sistema >> Sun xVM VirtualBox

 

Eventualmente o ícone pode não ter sido adicionado imediatamente, você pode reiniciar a interface do Ubuntu para “forçar” a mudança, teclando:

Control + Alt + Backspace

Você pode abrir também o VirtualBox fazendo, no console:

VirtualBox

Conclusão

VirtualBox é um poderoso, interessante, multiplataforma e Open Source software de virtualização, tão bom quanto todas as outras alternativas existentes no mercado, competindo em pé de igualdade com o proprietário VMware e sendo mais rápido que o Qemu. Vale o download!

Para mais informações acesse:

http://www.virtualbox.org

Fonte: http://blogs.sun.com/matheus/entry/instalando_virtualbox_no_ubuntu_8

Tutorial de Instalação do Apache, PHP e MySQL no Ubuntu

fevereiro 28, 2010 in Distribuições, Internet, Linux, php

Tutorial de Instalação do Apache, PHP e MySQL no Ubuntu

Nesse Tutorial você vai aprender…

  • Básico da instalação de pacotes no Ubuntu
  • Instalação e estrutura básica do Apache 2 no Ubuntu 8.04
  • Instalação do PHP5
  • Instalação do MySQL

Instalação de pacotes no Ubuntu

Distribuições Linux, em sua maioria, gerenciam os aplicativos utilizando pacotes que podem facilmente ser baixados, instalados e configurados no ambiente do sistema operacional.

Gerenciador de Pacotes Synaptic

O Ubuntu, por padrão, vem com o excelente gerenciador de pacotes Synaptic. Para iniciar o Synaptic, basta acessar o menu Sistema > Administração > Gerenciador de Pacotes Synaptic, ou apertar Alt+F2 e digitar o comando gksudo synaptic.

Janela de execução de comando com o comando gksudo synaptic digitado.

A Inteface do Synaptic é bem simples. No centro existe uma lista de pacotes que corresponde ao filtro no painel da esquerda. Para cada pacote, há a opção de marcar para instalação e marcar para remoção. Na barra de ferramentas há um botão para recarregar a lista de pacotes, um para marcar os pacotes que possuem upgrade, um para aplicar as alterações marcadas, um para ver propriedades dos pacotes e um para busca. Utilizaremos a busca de pacotes para encontrar o que desejamos instalar:

Captura de Tela do Synaptic indicando o botão de busca de pacotes.

Pacotes do Apache

Faremos uma busca por apache2 e marcaremos os seguintes pacotes: apache2 e libapache2-mod-php5.

Captura de Tela do Synaptic indicando o pacote apache2.

Captura de Tela do Synaptic indicando o pacote libapache2-mod-php5.

Note que além desses pacotes que escolhemos, o Synaptic marca alguns outros. Essas são as dependências dos pacotes, ou seja, pacotes-filho necessários para que os pacotes-pai escolhidos funcionem.

Pacotes do PHP

Depois, buscaremos por php5 e marcaremos os pacotes:

  • php5, o pacote principal
  • php5-cli, para PHP em linha de comando
  • php5-common, uma biblioteca raiz do PHP
  • php5-curl, para bibiloteca CURL
  • php5-gd, biblioteca manipulação de imagens via PHP
  • php5-mysql, para conexão com bancos de dados MySQL
  • php5-pgsql, para conexão com bancos de dados PostgreSQL
  • php5-sqlite, para conexão com bancos de dados SQLite versão 2
  • php5-sqlite3, para conexão com bancos de dados SQLite versão 3
  • php5-sybase, para conexão com Sybase e Microsoft SQL Server
  • php5-xsl, para aplicação de estilos XSL
  • php-doc, documentação do PHP

Pacotes php5, php5-cli, php5-common, php5-curl e php5-gd marcados na tela do Synaptic

Pacotes php5-mysql, php5-pgsql, php5-sqlite e php5-sqlite3 marcados na tela do Synaptic

Pacotes php5-sybase, php5-xsl e php-doc marcados na tela do Synaptic

Pacotes do MySQL

Por fim, buscaremos por mysql e marcaremos o pacote mysql-server.

Pacote mysql-server marcado na tela do Synaptic

Finalizando a Instalação

Para completar a instalação, aplicaremos as mudanças no botão “Apply” (Aplicar):

Detlahe do botão Aplly no Synaptic

Após confirmar a instalação dos pacotes, o Synaptic fará uma conexão com o servidor do Ubuntu, baixará, instalará e configurará os pacotes selecionados. Durante a instalação, o configurador do MySQL pedirá uma senha, necessária para o usuário root do banco:

Tela de configuração de senha do usuário root no MySQL

Digite a senha que preferir e prossiga, confirmando a senha e terminando a instalação. Se tudo ocorreu bem, ao acessar o endereço http://localhost/ você deverá ver a simpática tela de confirmação do Apache:

Localhost aberto com a mensagem It Works, padrão do Apache

Configuração Básica

Os arquivos de publicação desse servidor ficam na pasta /var/www. Precisaremos adicionar permissões para que você possa alterar o conteúdo dessa pasta. Para isso, abriremos o nautilus (gerenciador de arquivos do Ubuntu) como administrador:

Tela de execução de comandos com o comando gksudo nautilus /var na tela

Digite Alt+F2. O comando gksudo é o comando padrão para executar tarefas como administrador. Após a tela do nautilus abrir, abriremos a tela de propriedades da pasta www e colocaremos as permissões para que qualquer pessoa possa criar e excluir arquivos:

Ao fundo, janela do nautilus com a pasta www em destaque. Na frente, janela de propriedades da pasta www com permissões de escrita e exclusão para todos os usuários configuradas.

Testando o PHP

Para testarmos o PHP, substuiremos o arquivo index.html por um arquivo index.php contendo o seguinte código:

<?php

phpinfo();

Ao fundo, janela do nautilus com a pasta www aberta. Na frente, arquivo index.php aberto com código digitado

Ao acessar http://localhost/, você deverá ver uma tela de informações do PHP. Geralmente isso não ocorre, e o apache envia o arquivo para download.

Apache enviando o arquivo index para download

Se isso ocorrer, basta reiniciarmos o apache digitando no terminal sudo apache2ctl restart (para abrir o terminal, aperte Alt+F2 e digite gnome-terminal). Isso recarregará as configurações e tudo deverá funcionar normalmente, exibindo o PHP Info ao acessar a URL http://localhost/.

comando sudo apache2ctl restart

Tela do PHP Info

Testando o MySQL

Só nos resta testar o MySQL. Para isso abriremos um terminal e digitaremos o comando mysql -u root -p, que conecta ao banco de dados local utilizando o administrador (usuário root). Esse comando pedirá uma senha, basta digitar aquela que você escolheu na configuração do MySQL lá em cima.

Comando mysql -u root -p digitado no terminal

Se tudo correr bem, o prompt do monitor do MySQL estará disponível para digitar instruções

Monitor do MySQL aberto com sucesso

Parabéns! Tudo funcionou corretamente.

Como aceitar cartão de crédito no seu site

fevereiro 28, 2010 in php, Scripts, Software

Você não paga nada para abrir sua conta no site Pagseguro. Todo processo de cadastramento é on-line e sem qualquer burocracia. Eles oferecem todas as dicas para integrar o seu site ao sistema de pagamento deles. Seu custo será um percentual sobre cada venda realizada. Este percentual varia de acordo com a forma de pagamento. No caso de cartão de crédito o percentual fica entre 5,4% e 6,4%. Exemplo: Se você vender um produto por R$ 50,00 e seu cliente efetuar o pagamento através do Pagseguro usando cartão de crédito você receberá R$ 46,80 e pagará ao Pagseguro a taxa de R$ 3,20 que equivale a 6,4%. Já se for débito em conta ou boleto bancário seu custo será de apenas R$ 1,85.

Para quem é pessoa física está é uma solução perfeita, pois pessoas físicas não podem contratar bancos e operadoras de cartão diretamente. Usando o Pagseguro isto é possível.

As formas de pagamento aceitas são:

1. Cartão: Visa, Mastercard, Diners, Amex, Hipercard
2. Débito em conta: Bradesco, Itaú e Unibanco.
3. Boleto bancário

Vantagens:

* Sem taxa administrativa ou taxa de abertura de conta.
* Você só paga se vender algum produto pelo sistema.
* Sem taxa de cancelamento. Você pode cancelar sua conta qualquer momento.
* Pessoas físicas também podem usar o serviço.
* Pessoa jurídica com uma boa quantidade de vendas paga taxas menores.
* Você não precisa ter conhecimento avançado para integrar o Pagseguro ao seu site ou sistema de compras pois eles já fornecem o código html que você deve utilizar. Eles também oferecem um sistema de “carrinho de compras”.
* O sistema é seguro já que toda transação é realizada diretamente com o site dos bancos e empresas de cartão de crédito. Os dados dos seus clientes não ficam armazenados com você e nem com o Pagseguro. A operação é feita diretamente com os bancos.
* Se você fosse contratar todos estes serviços de pagamento diretamente com os bancos e operadoras de cartão, teria os custos com a abertura e manutenção de contas bancárias em diversos bancos, teria que assinar contratos e ter diversos custos operacionais e relacionados a segurança. Usando o serviço do Pagseguro você não vai se preocupar com isto.
* As tarifas cobradas pelo Pagseguro são próximas das cobranças pelos bancos e operadoras de cartão. Se levar em conta que você não precisará fazer nenhum investimento e não terá custos de manutenção da estrutura verá que o custo/benefício é ótimo.
* Você poderá transferir os valores pagos por seus clientes para sua conta bancária com facilidade e sem custos.
* Tudo pode ser gerenciado e acompanhado pela web através de um painel de controle que eles oferecem.

Já estamos estudando a possibilidade de integrar o Pagseguro ao sistema de pagamentos da NEOSITE, principalmente para o pagamento das tarifas para registro de domínios internacionais.

Acreditamos ser um serviço sério e confiável, principalmente por estar vinculado ao provedor UOL que é uma das maiores e mais antigas empresas de internet do país. Para abrir sua conta gratuitamente e acessar mais informações clique aqui. Em poucos minutos você já poderá integrar seu site ao sistema.

https://pagseguro.uol.com.br/index.jhtml

Business Intelligence – Pentaho 3.5 com PostgreSQL

fevereiro 28, 2010 in Aplicativos, Distribuições, Internet, Linux

Business Intelligence – Pentaho 3.5 com PostgreSQL


Quando tive que implementar o Pentaho (backend) em um grande cliente, a necessidade para performance, logo: PostgreSQL. Encontrei pouca documentação explicando como fazer deploy na combinação: JBoss/Tomcat + PostgreSQL. Isto era na recente versão 3 e as referências eram todas para a versão 2, quando o Pentaho vinha out-of-the-box preparado para JBoss.

Recentemente tive que implementar a versão 3.5 e lembrei de postar este documento para a comunidade, ainda postarei um pacote .deb para facilitar as coisas aos mesmos sysadmins como eu =)

CONFIGURAR O APT

Editar o arquivo /etc/apt/sources.list conforme as linhas abaixo:

1 #
2 # deb cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 DVD Binary-1 20090413-00:33]/ lenny contrib main
3
4 #deb cdrom:[Debian GNU/Linux 5.0.1 _Lenny_ - Official i386 DVD Binary-1 20090413-00:33]/ lenny contrib main
5
6 deb http://security.debian.org/ lenny/updates main contrib
7 deb-src http://security.debian.org/ lenny/updates main contrib
8
9 deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib
10 deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib
11
12
13 deb http://ftp.us.debian.org/debian lenny main contrib non-free
14

Para instalar os pacotes providos pelo repositório Debian, basta executar:

apt-get update

apt-get install postgresql-8.3
apt-get install openssh-server
apt-get install sun-java6-jdk
apt-get install vim

Baixe o Pentaho Biserver-ce 3.5: http://sourceforge.net/projects/pentaho/

CONFIGURANDO A SUÍTE Pentaho (CE) 3.5


CONFIGURANDO O BANCO DE DADOS PostgreSQL

Após instalar o PostgreSQL, é recomendável que você mantenha seus dados (partição com dados ou sua tablespace) em um disco de alta performance, SSD, por exemplo. RAID, opte por xfs com RAID 1+0. Separe também o seu pg_xlog. Não existe receita para tuning do PostgreSQL, tudo depende dos dados que terá em seu data warehouse, consulte um especialista.

Criar usuários hibuser e pentaho_user para o banco, esse procedimento deve ser realizado como usuário postgres:

su – postgres
postgres@biserver:/> psql
postgres=# CREATE USER hibuser password ‘password’;
CREATE ROLE
postgres=# create DATABASE hibernate owner hibuser;
CREATE DATABASE

postgres=# CREATE USER pentaho_user password ‘password’;
CREATE ROLE
postgres=# create DATABASE quartz owner pentaho_user;
CREATE DATABASE

postgres=# create DATABASE sampledata WITH ENCODING ‘SQL_ASCII’ owner pentaho_user;
CREATE DATABASE

Por enquanto é isto. Para quem deseja ter os relatórios exemplo que vêm com a Suíte Pentaho, deve importar os bancos disponíveis no diretório biserver-ce/data/postgresql/.

IMPORTANTO BASES DE RELATÓRIO PADRÃO

NOTA: Caso você deseje os relatórios padrão do Pentaho, siga com estes passos, caso contrário, pule para o próximo ítem Pentaho.

Base de dados SampleData: Esta base contém os dados de exemplo dos relatórios do Pentaho, porém está incompleta. Clique aqui para baixar o pacote com todas as bases exemplo completas.

cp /pentaho/biserver-ce/data/postgresql/*.sql /tmp
chmod 777 /tmp/*.sql
su – postgres
psql sampledata < /tmp/postgresql_sampleData.sql
SET
SET
SET
COMMENT
SET
SET
SET
CREATE TABLE
ALTER TABLE
CREATE TABLE
ALTER TABLE
CREATE TABLE
ALTER TABLE
REVOKE
REVOKE
GRANT
GRANT
(continua…)

Base de dados Quartz: Base de “time” utilizado pelo Pentaho.

psql < /tmp/create_quartz_postgresql.sql
ERROR: database “quartz” is being accessed by other users
ERROR: role “pentaho_user” cannot be dropped because some objects depend on it
DETAIL: owner of database quartz
ERROR: role “pentaho_user” already exists
ERROR: database “quartz” already exists
GRANT
You are now connected to database “quartz” as user “pentaho_user”.
BEGIN
NOTICE: table “qrtz_job_listeners” does not exist, skipping
DROP TABLE
NOTICE: table “qrtz_trigger_listeners” does not exist, skipping
DROP TABLE
NOTICE: table “qrtz_fired_triggers” does not exist, skipping
DROP TABLE
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index “qrtz_triggers_pkey” for table “qrtz_triggers”
CREATE TABLE
(continua…)
Banco de repositórios:

psql < /tmp/create_repository_postgresql.sql

Por natureza de adaptação da transferência de banco de exemplos de relatórios do Pentaho HSQLDB para PostgreSQL, deve-se criar views no banco de dados pois o HSQLDB interpreta suas tabelas em letras maiúsculas, já os bancos PostgreSQL e MySQL deve ser explícito:

su – postgres
psql sampledata

create view customers as select * from “CUSTOMERS”;
create view customer_w_ter as select * from “CUSTOMER_W_TER”;
create view department_managers as select * from “DEPARTMENT_MANAGERS”;
create view employees as select * from “EMPLOYEES”;
create view offices as select * from “OFFICES”;
create view orderdetails as select * from “ORDERDETAILS”;
create view orderfact as select * from “ORDERFACT”;
create view orders as select * from “ORDERS”;
create view payments as select * from “PAYMENTS”;
create view products as select * from “PRODUCTS”;
create view quadrant_actuals as select * from “QUADRANT_ACTUALS”;
create view time as select * from “TIME”;
create view trial_balance as select * from “TRIAL_BALANCE”;

Pentaho

O processo de instalação e configuração da suíte pentaho deve ser realizada como usuário root, conforme sugerido:

mkdir /pentaho
cd /pentaho
tar -xvzf biserver-ce-3.5.0.stable.tar.gz

Após descompactar o pacotes obtido no site, será criado 2 diretórios:

  • Diretório responsável pela administração:
    - administration-console
  • Diretório responsável pelo biserver:
    - biserver-ce

Ajustes nos scripts de inicialização

Adicionar a seguinte linha definindo o PATH do JAVA_HOME no arquivo: /pentaho/biserver-ce/set-pentaho-java.sh

29
30 JAVA_HOME=/usr/lib/jvm/java-6-sun
31
Remover a inicialização do banco hypersonic, pois a instalação utiliza o banco PostgreSQL, arquivo: /pentaho/biserver-ce/start-pentaho.sh
25 if [ "$?" = 0 ]; then
26 # Desativando o hypersonic, pois temos tudo no PostgreSQL
27 ##cd “$DIR/data”
28 ##sh start_hypersonic.sh &
29 cd “$DIR/tomcat/bin”
30 export CATALINA_OPTS=”-Xms2048m -Xmx2048m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000″
31 JAVA_HOME=$_PENTAHO_JAVA_HOME
32 sh startup.sh
33 fi

Note a linha 30 o ajuste da quantidade de memória para JVM. Novamente, tudo depende do uso, faz-se necessário monitoramento constante para adequação. Uma indicação para monitoramento é zabbix + zapcat.
Realizar a mesma modificação (adicionar comentário) no arquivo: /pentaho/biserver-ce/stop-pentaho.sh

21 ## Hypersonic desabilitado, temos tudo no PostgreSQL
22 ##cd “$DIR/data”
23 ##sh stop_hypersonic.sh &
24 cd “$DIR/tomcat/bin”
25 JAVA_HOME=$_PENTAHO_JAVA_HOME
26 sh shutdown.sh

Eu acabei criando um script de inicialização da plataforma, ele inicia e finaliza o BIServer 3.5 e o Administration console, segue abaixo:

NOTA: Para a versão 3, basta modificar o start-pac.sh para o script start ;)

1 #!/bin/bash
2 ### BEGIN INIT INFO
3 # Provides: start-pentaho stop-pentaho
4 # Default-Start: 2 3 4 5
5 # Default-Stop: 0 1 6
6 # Description: Pentaho BI Platform
7 ### END INIT INFO
8
9 # Flavio Torres, flavio.torres@4linux.com.br
10 # Script de inicializacao do pentaho e administration console
11 # Dezembro, 2009 – GPL
12
13 # Utilizacao do jdk e jre 64bits
14 export JAVA_HOME=/usr/lib/jvm/java-6-sun
15
16 cd /pentaho/biserver-ce
17
18 start(){
19 if [ "$1" == "adm" ];then
20 echo “Iniciando aplicacao administration-console”
21 cd ../administration-console
22 ./start-pac.sh > /tmp/pentaho_console.out 2>&1 &
23
24 else
25 echo “Iniciando aplicacao biserver”
26 ./start-pentaho.sh > /tmp/pentaho.out 2>&1
27 fi
28
29 echo “ok”
30
31 }
32
33 stop(){
34
35
36 if [ "$1" == "adm" ];then
37 echo “Finalizando aplicacao administration-console”
38 cd ../administration-console
39 ./stop-pac.sh
40 else
41 echo “Finalizando aplicacao biserver”
42 ./stop-pentaho.sh
43 fi
44
45 echo “ok”
46 }
47
48
49 case “$1″ in
50 start)
51 start $2
52 ;;
53 stop)
54 stop $2
55 ;;
56 *)
57 printf “\nUsage: $0 \n
58 start | stop : Inicia ou finaliza a aplicacao biserver\n
59 start adm | stop adm : Inicia ou finaliza o administration console\n\n”
60 ;;
61 esac
62 exit 0
63

CONFIGURANDO O pentaho-solutions

Para a configuração do pentaho-solutions, será necessário a modificação de 5 arquivos, as modificações estão destacadas e devem ser realizadas como usuário root:

  • pentaho-solutions/
    • system/
      • applicationContext-spring-security-jdbc.xml
      • applicationContext-spring-security-hibernate.properties
    • quartz/
      • quartz.properties
    • hibernate/
      • hibernate-settings.xml
      • postgresql.hibernate.cfg.xml

applicationContext-spring-security-jdbc.xml


Esse arquivo é responsável por setar a configuração de autenticação do sistema “Spring Security” utilizado pelo Pentaho BI Server.

Edite o arquivo e altere o seguinte bloco:

<!– This is only for Hypersonic. Please update this section for any other database you are using –>
<bean id=”dataSource”
>
<property name=”driverClassName” value=”org.postgresql.Driver” />
<property name=”url”
value=”jdbc:postgresql://localhost:5432/hibernate” />
<property name=”username” value=”hibuser” />
<property name=”password” value=”password” />
</bean>

As opções de configuração neste arquivo são:

  • driverClassName: O driver da classe de conexão com o banco, org.postgresql.Driver
  • url: Endereço url para o driver acessar a base de dados, jdbc:postgresql://<endereco ip>:<porta>/<banco>
  • username: Nome do usuário para acessar a base especificada
  • password: Senha do usuário informado

applicationContext-spring-security-hibernate.properties


Esse arquivo é responsável por setar as propriedades de segurança do “Spring”, habilitando a conexão com a base hibernate.

Edite o arquivo e altere o seguinte bloco:

jdbc.driver=org.postgresql.Driver
jdbc.url=jdbc:postgresql://localhost:5432/hibernate
jdbc.username=hibuser
jdbc.password=password
hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect

As opções de configuração neste arquivo são:

  • jdbc.driver: O driver JDBC, org.postgresql.Driver
  • jdbc.url: Endereço url para o driver acessar
  • a base de dados, jdbc:postgresql://<endereco ip>:<porta>/<banco>

  • jdbc.username: Nome do usuário para acessar a base especificada
  • jdbc.password: Senha do usuário informado
  • hibernate.dialect: O dialeto que o hibernate necessita utilizar

quartz.properties


Edite o arquivo e altere o seguinte bloco na linha 300:

300 org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate

As opções de configuração neste arquivo são:

  • org.quartz.jobStore.driverDelegateClass: Configuração responsável por manter o agendamento de todas as configurações enviadas, como: jobs, triggers, calendários, etc.

hibernate-settings.xml


Esse arquivo é responsável por setar as configurações a serem utilizadas pelo hibernate. Edite o arquivo e altere o seguinte bloco:

15 <config-file>system/hibernate/postgresql.hibernate.cfg.xml</config-file>
postgresql.hibernate.cfg.xml


Edite o arquivo e altere o seguinte bloco:

<property name=”connection.driver_class”>org.postgresql.Driver</property>
<property name=”connection.url”>jdbc:postgresql://localhost:5432/hibernate</property>
<property name=”dialect”>org.hibernate.dialect.PostgreSQLDialect</property>
<property name=”connection.username”>hibuser</property>
<property name=”connection.password”>password</property>
<property name=”connection.pool_size”>10</property>
<property name=”show_sql”>false</property>
<property name=”hibernate.jdbc.use_streams_for_binary”>true</property>

As opções de configuração neste arquivo são:

  • connection.driver_class: O driver da classe de conexão com o banco, org.postgresql.Driver
  • connection.url: Endereço url para o driver acessar a base de dados, jdbc:postgresql://<endereco ip>:<porta>/<banco>
  • connection.username: Nome do usuário para acessar a base especificada
  • connection.password: Senha do usuário informado

CONFIGURANDO O Tomcat

Será necessário a modificação de 2 arquivos:

  • webapps/
    • pentaho/
      • WEB-INF/
        • web.xml
      • META-INF/
        • context.xml

web.xml


Esse arquivo é responsável pela configuração principal do tomcat e Pentaho, as configurações definem por onde ele será acessível.

<context-param>
<param-name>base-url</param-name>
<param-value>http://intranet.empresa.com.br:8080/pentaho/</param-value>
</context-param>
context.xml


Esse arquivo é responsável por modificar as configurações de conexão com o banco de dados.

<Context path=”/pentaho” docbase=”webapps/pentaho/”>
<Resource name=”jdbc/Hibernate” auth=”Container” type=”javax.sql.DataSource”
factory=”org.apache.commons.dbcp.BasicDataSourceFactory” maxActive=”20″ maxIdle=”5″ maxWait=”10000″ username=”hibuser” password=”password” driverClassName=”org.postgresql.Driver” url=”jdbc:postgresql://localhost:5432/hibernate” validationQuery=”select 1” />

<Resource name=”jdbc/Quartz” auth=”Container” type=”javax.sql.DataSource” factory=”org.apache.commons.dbcp.BasicDataSourceFactory” maxActive=”20″ maxIdle=”5″ maxWait=”10000″ username=”pentaho_user” password=”password” driverClassName=”org.postgresql.Driver” url=”jdbc:postgresql://localhost:5432/quartz” validationQuery=”select 1“/>
</Context>

As opções de configuração neste arquivo são:

  • driverClassName: O driver da classe de conexão com o banco, org.postgresql.Driver
  • url: Endereço url para o driver acessar a base de dados, jdbc:postgresql://<endereco ip>:<porta>/<banco>
  • username: Nome do usuário para acessar a base especificada
  • password: Senha do usuário informado
  • validationQuery: Query utilizada para testar a conexão com o banco.

CONFIGURANDO O administration console COM SUPORTE AO PostgreSQL

Esta foi uma parte que não encontrei em lugar algum, tive que fazer engenharia reversa do sistema e adaptá-lo. Existe uma contribuição minha na wiki do Pentaho.

Será necessário a modificação de 2 arquivos:

Copiar o driver responsável pela conexão ao postgresql para o diretório do administration-console:

Fazer o download do driver atual do PostgreSQL, note que há uma direfença entre usar a JDK 1.5 e 1.6, leia no site, entenda e baixe a correta.

cd /pentaho
wget http://jdbc.postgresql.org/download/postgresql-8.3-605.jdbc4.jar
rm -f /pentaho/biserver-ce/tomcat/common/lib/postgresql-8.2-504.jdbc3.jar
cp postgresql-8.3-605.jdbc4.jar /pentaho/biserver-ce/tomcat/common/lib/
cp biserver-ce/tomcat/common/lib/postgresql-8.3-605.jdbc4.jar administration-console/jdbc/

Configurar autenticação no PostgreSQL:

  • administration-console/
    • resource/
      • config/
        • login.conf
        • console.properties

login.conf – JDBCLoginModule


O módulo JDBCLoginModule armazena as configurações de usuário e senha e regras de acesso na base de dados, que por sua vez é acessado via driver JDBC. As configurações personalizadas de usuário, senha, tabelas e drivers são armazenadas no arquivo login.conf.

cd /biserver/pentaho/administration-console/resource/config
vi login.conf

JDBCLoginModule {
org.mortbay.jetty.plus.jaas.spi.JDBCLoginModule required
debug=”true”
dbUrl=”jdbc:postgresql://localhost:5432/hibernate”
dbUserName=”pentaho_user”
dbPassword=”password”
dbDriver=”org.postgresql.Driver”
userTable=”admconsole_users”
userField=”username”
credentialField=”credential”
userRoleTable=”admconsole_roles”
userRoleUserField=”userrole”
userRoleRoleField=”role”;
};

Você terá que adicionar todas as linhas no arquivo, isto é, remover as antigas e adicionar estas.

As opções de configuração desse arquivo são:

  • dbUrl: Endereço url para o driver acessar a base de dados, jdbc:postgresql://<endereco ip>:<porta>/<banco>
  • dbUserName: Nome do usuário para acessar a base especificada
  • dbPassword: Senha do usuário especificado
  • dbDriver: O driver da classe de conexão com o banco, org.postgresql.Driver
  • userTable: Nome da tabela de usuários
  • userField: Nome do campo do usuário
  • credentialField: Nome do campo de credenciais, senha.
  • UserRoleTable: Nome da tabela de regras
  • userRoleUserField: Nome do campo e regras do usuário
  • userRoleRoleField: Nome do campo de regras administrativas

A regra do banco deve satisfazer o seguinte retorno de consulta:

select credential from admconsole_users where username = ?;
select role from admconsole_roles where userrole = ?;
Abaixo segue o esquema de criação das tabelas e campos, uma vez conectado ao banco hibernate com usuário com poderes administrativos, fazer:

create table admconsole_users (
username character varying(60),
credential character varying(60)
);

create table admconsole_roles (
userrole character varying (60),
role character varying (60)
);

grant select on admconsole_users to pentaho_user;
grant select on admconsole_roles to pentaho_user;
insert into admconsole_users values (‘admin’, ‘admin’);
insert into admconsole_roles values (‘admin’, ‘server-administrator’);

A consulta retornará os seguintes resultados:

hibernate=# select credential from admconsole_users where username = ‘admin’;
credential
————
admin
(1 row)

hibernate=# select role from admconsole_roles where userrole = ‘admin’;
role
———————-
server-administrator
(1 row)

console.properties


Esse arquivo é responsável por habilitar as configurações a serem utilizadas pelo JDBC para conexão do console-administration com o banco.

console.security.enabled=true
console.security.roles.allowed=Admin,server-administrator,content-administrator
console.security.roles.delimiter=,
console.security.realm.name=Pentaho
console.security.login.module.name=JDBCLoginModule
console.security.auth.config.path=resource/config/login.conf
console.security.callback.handler=org.mortbay.jetty.plus.jaas.callback.DefaultCallbackHandler

Aqui acaba a configuração, se você desejar SSL, o que não é nada mal para trafegar dados importantes sobre seu negócio, parta para a próxima etapa.

CONFIGURANDO SSL PARA PENTAHO/TOMCAT

Para garantir tráfego encriptado, foi configurado o suporte a SSL para o tomcat. Para criar o certificado deve-se proceder da seguinte forma, essa configuração deve ser realizada como usuário root:

cd /usr/lib/jvm/java-6-sun/bin
./keytool -genkey -alias pentaho -keyalg RSA -validity 3650
pass: 96957e0c81f921b7e9a36008652b11ad

What is your first and last name?
[4Linux]: Flavio Torres
What is the name of your organizational unit?
[4Linux]: IT
What is the name of your organization?
[4Linux]:
What is the name of your City or Locality?
[Sao Paulo]:
What is the name of your State or Province?
[SP]:
What is the two-letter country code for this unit?
[BR]:
Is CN=Flavio Torres, OU=IT, O=4Linux, L=Sao Paulo, ST=SP, C=BR correct?
[no]: yes

Enter key password for <tomcat>
(RETURN if same as keystore password):96957e0c81f921b7e9a36008652b11ad
Re-enter new password:96957e0c81f921b7e9a36008652b11ad

biserver:/usr/local/jre1.6.0_14/bin # ./keytool -list
Enter keystore password:96957e0c81f921b7e9a36008652b11ad

Keystore type: JKS
Keystore provider: SUN

Your keystore contains 1 entry

pentaho, Dec 11, 2009, PrivateKeyEntry,
Certificate fingerprint (MD5): *************

Pronto, criamos o certificado, obviamente vocês irão gerar outra senha, este é um md5 NÃO utilize-o.

Habilitando o suporte a SSL no tomcat:

cd /pentaho/biserver-ce/tomcat/conf
vi server.xml
110 <!– DESCOMENTAR ESTA LINHA (REMOVE-LA)
111 <Connector port=”8443″ maxHttpHeaderSize=”8192″
112 maxThreads=”150″ minSpareThreads=”25″ maxSpareThreads=”75″
113 enableLookups=”false” disableUploadTimeout=”true”
114 acceptCount=”100″ scheme=”https” secure=”true”
115 clientAuth=”false” sslProtocol=”TLS” keyAlias=”pentaho keystorePass=”96957e0c81f921b7e9a36008652b11ad“/>
116 –> DESCOMENTAR ESTA LINHA (REMOVE-LA)

fonte: http://www.flaviotorres.com.br/fnt/artigos/pentaho_35_postgresql.php

Php um simples tutorial

fevereiro 28, 2010 in php

Aqui nós iremos mostrar o básico do básico do PHP em um curto tutorial. Este texto fala somente sobre a criação de páginas dinâmicas com o PHP, visto que o PHP pode criar mais do que somente webpages. Veja a seção entitulada O que o PHP pode fazer para mais informações.

Fazer páginas com PHP é o mesmo que criar páginas HTML e você pode criá-las e editá-las da mesma maneira que faz com suas páginas HTML normal.

Sua primeira página PHP

Crie um novo arquivo chamado ola.php e coloque-o em seu diretório root do seu servidor web (DOCUMENT_ROOT) com o seguinte conteúdo:

Exemplo #1 Nosso primeiro script PHP: ola.php

<html>
<head>
<title>PHP Teste</title>
</head>
<body>
<?php echo "<p>Olá Mundo</p>"; ?>
</body>
</html>

Tratando Formulários

Uma das características mais fortes do PHP é o jeito como ele trata formulários HTML. O conceito básico que é importante entender é que qualquer elemento de formulário em um formulário irá automaticamente ficar disponível para você usá-los em seus scripts PHP. Por favor leia a seção Variáveis externas do PHP para mais informações e exemplos de como usar formulários com PHP. Aqui vai um exemplo:

Exemplo #1 Um simples formulário HTML

<form action="acao.php" method="POST">
 Seu nome <input type="text" name="nome" />
 Sua idade: <input type="text" name="idade" />
 <input type="submit">
</form>

Não há nada de especial neste formulário. É um formulário HTML comum sem nenhuma tag especial de qualquer tipo. Quando o usuário preencher este formulário e clicar no botão enviar, a página action.php é chamada. Neste arquivo nós teremos algo como este:

Exemplo #2 Imprimindo dados de nosso formulário

Oi <?php echo $_POST["nome"]; ?>.
Você tem <?php echo $_POST["idade"]; ?> anos.

Um exemplo de saída deste script seria:

Oi Thomas.
Você tem 18 anos.

Instalando o php-gtk-2.0.1 no Ubuntu

fevereiro 28, 2010 in php

Primeiro;
$su -
#apt-get update
#apt-get install php5-cli php5-dev php5-gd libgtk2.0-dev libglade2-dev libbz2-dev
#apt-get install php5-sqlite
#apt-get install php5-mysql
#apt-get install glade-3

Pronto agora temos o php5 instalado com suporte a sqlite e mysql, juntamente com o glade3 para construir as interfaces. Vamos ao php-gtk2 agora.

Baixar o arquivo compactado com as fontes:

#wget -c http://gtk.php.net/distributions/php-gtk-2.0.1.tar.gz

Vamos descompacta-lo:
#tar -xzvf php-gtk-2.0.1.tar.gz
#cd php-gtk-2.0.1

Compilando:
#./buildconf –with-phpize=/usr/bin/phpize
#./configure –with-php-config=/usr/bin/php-config –with-extra –with-gnu-ld
#make
#make install
#echo ‘extension=php_gtk2.so’ >> /etc/php5/cli/php.ini

Pronto, ja temos nosso php-gtk funcionando, basta fazer:
php programa.php

Agora vamos instalar o bcompiler, assim você também pode distribuir seus programas com seu código protegido.

#wget -c http://pecl.php.net/get/bcompiler-0.8.tgz
#tar -xzvf bcompiler-0.8.tgz
#cd bcompiler-0.8
#phpize
#./configure
#make
#make install
#echo ‘extension=bcompiler.so’ >> /etc/php5/cli/php.ini

Tutorial php pdo | uma extenção que vem no PHP 5 para você ter um controle dos banco de dados, como por exemplo o ADODB.

fevereiro 28, 2010 in php

The PHP Data Objects é uma extenção que vem no PHP 5 para você ter um controle dos banco de dados, como por exemplo o ADODB, em que você controla vários banco de dados somente mudando uma linha de comando. Com o PDO é a mesma coisa.

Para funcionar o PDO habilite a DLL no php.ini exemplo:

extension=php_pdo.dll

E para o banco que for usar:

extension=php_pdo_firebird.dll
extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_oci8.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll

Bem, vamos lá!

Como conectamos ao um banco de dados pelo PDO?

Para conectar ao banco de dados você tem que ter essa linha:

$pdo = new PDO(“tipo_de_banco_de_dados; dbname=nome_do_banco_de_dados”, “usuario”, “senha”);

Com isso você já vai se conectar ao banco de dados: segue a lista para como se conectar ao bancos suportados:

PDO_DBLIB:

sybase:host=localhost; dbname=testdb

mssql:host=localhost; dbname=testdb

PDO_FIREBIRD:

firebird:User=john;Password=mypass;Database=DATABASE.GDE;DataSource=localhost;Port=3050

PDO_MYSQL:

mysql:host=localhost;dbname=testdb

PDO_OCI

Para conectar via tnsnames.ora, use:

oci:mydb

Se tiver usando instantclient, use:

oci:dbname=//localhost:1521/testdb

PDO_ODBC:

odbc:DSN=SAMPLE;UID=john;PWD=mypass

DSN=SAMPLE referece ao caminho patch onde está o drive ODBC manager.

PDO_PGSQL(PostGreSQL):

pgsql:host=localhost port=5432 dbname=testdb user=john password=mypass

PDO_SQLITE:

sqlite:/path/to/database

Para criar a data base na memória, use:

sqlite::memory:

Bem vamos fazer aqui uma conexão ao banco de dados MySQL:

#:: conectando ao mysql
$pdo = new PDO(“mysql:host=localhost; dbname=banco”, “usuario”, “senha”);

Depois de eu ter feito a conexão ao MySQL eu já informei qual banco ele deve fazer a pesquisa agora vamos a brincadeira…

Vamos criar uma seleção de usuário:

#:: conectando ao mysql
$pdo = new PDO(“mysql:host=localhost; dbname=banco”, “usuario”, “senha”);

#:: a variavel $pdo contem agora algumas sintexe para podermos controlar o banco de dados.
#:: vamos criar uma seleção de usuario:
$stmt = $pdo->prepare(“select * from  usuarios”); // ele prepara uma sintaze sql para ser executada com parametros e a variavel $stmt ela irá receber algumas funções extras. veja aseguir.

#:: aqui estamos executando o comando SQL que haviamos feito logo acima
$stmt->execute();

#:: apos ter feito esse comando como o nosso PDO é uma classe então essa variavel $smtmt ja contem varios resultados sobre o nosso comando
#:: agora vamos criar um laço para pegar as info do banco de dados
while ($row = $stmt->fetch()) // lembra o mysql_fetch_array() no pdo ele está sendo representado como fetch
{
$nome = $row['nome'];
echo $nome;
}

Agora nós já temos nossa primeira consulta via PDO, agora faça um teste, troque somente a primeira linha “$pdo = new PDO(“mysql:host=localhost; dbname=banco”, “usuario”, “senha”);” para outro banco de dados e você verá que ele busca da mesma maneira somente mudando essa linha com isso você pode crir sistema para vários banco de dados!

Maiores informações sobre o PDO, acesse:

http://www.php.net/pdo

Tratamento de imagem com php, gerar miniatura de uma imagem.

fevereiro 22, 2010 in php

<?

class EasyThumbnail

{

private $debug= false;

private $errflag= false;

private $ext;

private $origem;

private $destino;

private $errormsg;

function __construct($imagem, $destino, $aprox)

{

// se o arquivo não existir, erro

if (!file_exists($imagem))

{

$this->errormsg= “Arquivo não encontrado.”;

return false;

}

else

{

$this->origem= $imagem;

$this->destino= $destino;

}

// obtém a extensão do arquivo

if (!$this->ext= $this->getExtension($imagem))

{

$this->errormsg= “Tipo de arquivo inválido.”;

return false;

}

// gera a imagem do thumbnail com o caminho e nome do arquivo especificados

$this->createThumbImg($aprox);

}

// retorna as dimensões (x,y) do thumbnail a ser gerado

public function getThumbXY($x, $y, $aprox)

{

if ($x >= $y)

{

if ($x > $aprox)

{

$x1= (int)($x * ($aprox/$x));

$y1= (int)($y * ($aprox/$x));

}

else

{

$x1= $x;

$y1= $y;

}

}

else

{

if ($y > $aprox)

{

$x1= (int)($x * ($aprox/$y));

$y1= (int)($y * ($aprox/$y));

}

// Caso a imagem seja menor do que

// deve ser aproximado, mantém tamanho original para o thumb.

else

{

$x1= $x;

$y1= $y;

}

}

$vet= array(“x” => $x1, “y” => $y1);

return $vet;

}

// cria a imagem do thumbnail

private function createThumbImg($aprox)

{

// imagem de origem

$img_origem= $this->createImg();

// obtém as dimensões da imagem original

$origem_x= ImagesX($img_origem);

$origem_y= ImagesY($img_origem);

// obtém as dimensões do thumbnail

$vetor= $this->getThumbXY($origem_x, $origem_y, $aprox);

$x= $vetor['x'];

$y= $vetor['y'];

// cria a imagem do thumbnail

$img_final = ImageCreateTrueColor($x, $y);

ImageCopyResampled($img_final, $img_origem, 0, 0, 0, 0, $x+1, $y+1, $origem_x, $origem_y);

// o arquivo é gravado

if ($this->ext == “png”)

imagepng($img_final, $this->destino);

elseif ($this->ext == “jpg”)

imagejpeg($img_final, $this->destino);

}

// cria uma imagem a partir do arquivo de origem

private function createImg()

{

// imagem de origem

if ($this->ext == “png”)

$img_origem= imagecreatefrompng($this->origem);

elseif ($this->ext == “jpg” || $this->ext == “jpeg”)

$img_origem= imagecreatefromjpeg($this->origem);

return $img_origem;

}

// obtém a extensão do arquivo

private function getExtension($imagem)

{

// isso é para obter o mime-type da imagem.

$mime= getimagesize($imagem);

if ($mime[2] == 2)

{

$ext= “jpg”;

return $ext;

}

else

if ($mime[2] == 3)

{

$ext= “png”;

return $ext;

}

else

return false;

}

// mensagem de erro

public function getErrorMsg()

{

return $this->errormsg;

}

public function isError()

{

return $this->errflag;

}

}

?>

Como Usar:

<?

$destino =”img”; #diretoria para imagens

new EasyThumbnail($destino.”/”.$upload->getNome(), $destino.”/”.$upload->getNome(), ’530′);

?>

ExtBuilder editor visual para extJS, é um plugin do eclipse que pode ajudar o trabalho do desenvolvedor.

fevereiro 22, 2010 in Aplicativos, php, Scripts, Software

  1. certifique-se de eclipse versão é 3.2,3.3 ou 3.4 instalado com o GEF.
  2. site de download de atualização arquivados em http://code.google.com/p/extbuilder/downloads/list
  3. Clique em Help-> Software Updates-> Find and Install …-> busca de novos recursos para instalar, clique em Next
  4. Clique em New Archived Site-> Procure extbuilder_update.zip e clique em Abrir.
  5. Clique em OK e siga as instruções para instalar.
  6. Reinicie o eclipse

  1. Apatanta como instalar um plugin para Eclipse.
  2. Instale ExtBuilder para Eclipse

Nota: Studio Apatana retirados alguns plugins build-in do Eclipse, como o GEF, UTI, JDT, etc Se você quer definitivamente usar Studio Apatana sem eclipse, instale estes plguins primeiro.

  1. Clique em Windows> Preferences ..-> ExtJs Builder
  2. Clique no botão Browse para selecionar o diretório home ext.

  1. Clique em File-> New e selecione Web> ExtJs Page. um diálogo do assistente será exibido.
  2. Clique em Avançar
  3. Introduza o nome que você quiser
  4. Entrada de nome da classe que você quer, extbuilder criar uma classe em um arquivo, assim como o Java
  5. Introduza o nome do arquivo, o padrão é o nome da classe
  6. Selecione super classe, padrão é Ext.Panel, você também pode criar uma janela, selecione Ext.Window
  7. Clique em Concluir.
  8. Depois, há dois arquivos criados no Package Explorer, por exemplo: CorpSelectPanel.ext e CorpSelectPanel.js. O primeiro arquivo é usado por extbuilder, o segundo arquivo é o arquivo de script para você.

Antes de começar a editar uma página Ext, certifique-se de que você abriu vista de destaques e ver as propriedades. Se não, por favor clique em Janela-> Mostrar Exibir para abrir estes dois pontos de vista.

É um editor de páginas contém um editor de código-fonte e um editor de interface do usuário. No editor de código-fonte, você pode ver o código real extbuilder gerar para você. Por favor, o foco initUIComponents função. No editor de interface do usuário, você pode ver uma paleta na lateral esquerda e um navegador embutido na lateral direita. Com o browser embutido, você pode visualizar o código gerado pelo ExtBuilder.

A vista de destaque é uma árvore de componentes. Você pode selecionar componente específica na vista.

A opinião mais importante que você tem que lidar. Nesta exibição, você pode definir a configuração de um componente. Por exemplo: Para um componente Panel, você pode definir a propriedade de título para “myPanel ‘, a propriedade de layout para’ Fronteiras ‘, a propriedade largura de ’100′, etc Para um componente GridPanel, você pode definir a propriedade de armazenar e propriedade colunas. Tudo o que você faz para alterar um componente em vigor imediatamente. Tanto o editor de código e editor de interface irá mudar. É uma boa maneira de observar as suas configurações como mudar a interface do usuário para o seu estilo queria.

No editor de interface do usuário, você pode ver uma paleta com alguns componentes em várias pastas. Extbuilder Agora suporta a maioria dos componentes na última Ext 2,2 Você pode clicar em um componente, como um painel, em seguida, mova o mouse para a vista, deve haver um componente chamado painel , é o componente de raiz de uma classe painel. Clique com o mouse novamente, o componente Painel de raiz tem agora um painel de criança. Da mesma forma, você pode usar todos os componentes e organizar a árvore de componentes como você deseja. Embora você possa pensar arrastar um componente e largá-lo para uma tela é melhor, mas isso significa ExtBuilder necessidade de implementar todos os componentes de desenho Ext, comportamento e layout em código Java. De minha opinião, este caminho é o caminho mais rápido para construir uma página GUI.

Componente Ext têm muitas propriedades. ExtBuilder dividir essas propriedades em duas categorias: comum propriedades e propriedades avançadas. Por padrão, apenas as propriedades comuns são mostrados, você pode mostrar as propriedades avançadas pelo clique no botão Avançado na barra superior de Propriedades de Visualização. Propriedades podem ser string, inteiro, na lista suspensa. Algumas propriedades especiais, como armazenar, barra de ferramentas, botões, colunas de modelo irá aparecer uma janela para definir usuário.

Há dois painéis, um pai, um filho.

  1. Criar uma nova página Ext
  2. Definir tilte o painel de raiz para ‘parentPanel’
  3. Adicionar um Painel de componente do painel de raiz
  4. Definir o título do painel de criança a ‘ChildPanel’
  5. Clique no painel pai na vista de destaques
  6. Definir layout do painel de pais para a ‘fronteira’
  7. Clique no painel infantil na vista de destaques
  8. Definir região do painel central para criança ‘

Porque Ext layout transfronteiras exige uma componente região centro, assim quando você definir o esquema de “fronteira”, e não definida a região do painel infantil de ‘centro’, você poderá ver alguma mensagem de erro no navegador, não é um bug do ExtBuilder. 

FormPanel

  1. Criar uma nova página Ext
  2. Adicionar um FormPanel a raiz do painel
  3. Definir o layout da coluna para FormPanel ‘
  4. Adicione dois painéis para FormPanel, defina a columnWidth ‘.5′
  5. Definir layout estes dois painéis de forma a ”
  6. Adicionar 4 TextField para Painel estes dois, cada um, dois

Então você começa um painel de duas forma de coluna

Cada painel Ext tem duas barras de ferramentas, tbar e bbar.

  1. Clique em um Painel de vista de destaques.
  2. Clique em Exibir Propriedades, seleccione a propriedade ou tbar bbar
  3. Clique no botão do lado direito’…’ mostrar barra de diálogo Configurações
  4. Na barra de diálogo Configurações, clique no botão Adicionar (+) para adicionar Button, Separator, Spacer, Preenchimento textitem e MenuButton.Menu de edição não está pronto na versão atual.
  5. Alterar o texto da barra de ferramentas de texto, por padrão, o manipulador é como “onButtonTextClick”. Naturalmente, é possível alterar o nome da função do manipulador.
  6. Então mude para o editor de código fonte, veja o que aconteceu.

          tbar: Ext.Toolbar novo ([(handler: function (botão, evento) (this.onButtonClick (botão, event);). CreateDelegate (este), text: "botão")])

Olhe para este bloco de código, eu uso um pequeno truque. Porque ExtBuilder precisa mostrar página de visualização para os usuários, alguns erros de javascript vai fazer a página de visualização de página em branco. Então eu tenho que fazer ele funciona bem quando os componentes do processador ext. Pode ter necessidade de escrever o seu próprio função de manipulador evento em sua classe. Por exemplo:

  ...,
       OnButtonClick: função (botão, evento) (
          / / Seu código aqui
       )

Cada painel tem um botão de propriedades. Só mesmo os botões da barra de ferramentas de edição, exceto o componente pode adicionar aqui é só Ext.Button. ButtonAlign Você pode usar o botão para alinhar à esquerda, direita ou centro.

ExtBuilder apoiar três painéis de grade. GridPanel, PagingGridPanel e EditorGridPanel. PagingGridPanel é um GridPanel com barra de paginação na parte inferior.

Loja pode ter dados remoto (HttpProxy) ou local (MemoryProxy). Aqui está um exemplo que usamos para construir MemoryProxy grade.

  1. Clique’…’ botão para mostrar Store diálogo Configurações
  2. Selecione MemoryProxy em BÁSICA
  3. Clique no botão de exemplo para gerar alguns dados aleatórios
  4. Clique no botão OK para salvar as configurações da loja.
  5. Adicionar loadData função em sala de aula
  6.   loadData: function () (
                     this.store1.load ();
         )

loja1 aqui é o nome do componente da loja.

  1. Adicione o código em função do construtor de classe
  2.   função system.CorpSelectPanel = (config) (
             Ext.applyIf (this, config);
             this.initUIComponents ();
             system.CorpSelectPanel.superclass.constructor.call (this);
             / / carregar dados loja aqui
             this.loadData ();
          );

Agora, você pode ver os dados na página de visualização. 

Font: http://code.google.com/p/extbuilder/wiki/UserGuide#Introduction

Como instalar o Ubuntu Karmic Koala (Ubuntu 9.10)

fevereiro 19, 2010 in Configuração, Distribuições

 Este artigo irá explicar cada pormenor que uma instalação de raiz precisa de ter. Irão ser abordados aspectos desde do disco, como desfragmentação e particionamento, até aos mais pequenos pormenores das configurações de pré-instalação e de pós-instalação, nomeadamente dicas de pormenores que qualquer utilizador deve fazer logo a seguir à instalação. Assim, se ainda não tem o novo Ubuntu Karmic Koala instalado, este artigo é para si, leia-o atentamente e proceda à instalação deste excelente sistema operativo que é o Ubuntu!

Pre-Requisitos

De seguida apresento alguns dados sobre os Pre-Requisitos que, na minha opinião são precisos. Não são dados oficiais, mas que na minha opinião devem ser tidos em atenção (caso discorde, não hesite em comentar este artigo!). Como requisitos mínimos, e atenção que nestas condições o Ubuntu poderá funcionar mais lento que o normal, recomendo as seguintes características:

  • Processador: 700MHz;
  • Memória RAM: 512MB;
  • Disco: 4GB;
  • Placa Gráfica: qualquer placa gráfica (funcionamento do sistema de efeitos visuais poderá estar condicionado conforme a placa gráfica)

Como requisitos mínimos recomendados, ou seja, requisitos para ter o seu Ubuntu a funcionar em perfeitas condições, recomendo as seguintes características:

  • Processador: 1.2GHz;
  • Memória RAM: 1GB;
  • Disco: 10GB (espaço suficiente praticamente para ter todos os programas que quer, nunca precisei de mais!)
  • Placa Gráfica: De preferência nVidia (porque tem bons drivers) e, para ter todas as capacidades dos efeitos visuais deve ter no mínimo uma Geforce6, no entanto, o funcionamento de uma geforce4, chega para os efeitos visuais comuns. Quanto à ATI, recomendo no mínimo um R300. Quanto aos utilizadores da excelente placa gráfica integrada Intel, qualquer uma superior à GMA 3000 terá bons resultados, aliás nem será preciso instalar drivers!

 

Pre-Particionamento

Se apenas tem o Windows instalado no seu PC e ainda não tem as partições prontas para instalar o Ubuntu, deve, mesmo antes de ler este artigo, pôr o seu Windows a desfragmentar o disco onde irá instalar o Ubuntu. Se você não sabe o que é o particionamento do seu disco ou se não sabe como fazer isso, mais à frente neste artigo irá saber como o fazer! Para já deixe o disco a desfragmentar enquanto lê o artigo todo de modo a não perder os dados do seu Windows aquando da instalação do Ubuntu.

Atenção, se o seu disco está muito cheio, aproveite e faça uma cópia de segurança aos seus dados mais importantes, pois existe uma pequena probabilidade de ao criar as partições haja perda de dados. Entretanto continue a ler para saber quanto espaço no disco deve ter para instalar o Ubuntu para saber e precisa de libertar espaço ou não.

Faça download da imagem do Ubuntu Karmic Koala!

Se ainda não tem o Ubuntu Karmic Koala, ponha o seu computador a fazer download da imagem também enquanto lê este artigo. Pode obter o Ubuntu de várias maneira, ou via torrent:

Ou via site oficial do Ubuntu (a minha recomendação em termos de velocidade):

http://www.ubuntu.com/getubuntu/download

Poderá também obter o Ubuntu em sua casa através do serviço Shipit, apenas precisará de encomendar gratuitamente no site a seguir (no entanto, existe o problema de o envio demorar cerca de 4 semanas, ou até mais!):

https://shipit.ubuntu.com/

 

Grave a imagem do Ubuntu num CD ou numa pen USB!

Depois de ter feito download da imagem do Ubuntu, deverá gravá-la ou num CD ou numa pen drive. Se gravar num CD, deverá utilizar um programa próprio de gravação de imagens (atenção não insira o ficheiro .iso dentro de um CD, mas sim utilize a opção de gravação de imagens do programa que tiver a utilizar!).

A minha recomendação é utilizar uma pen (com tamanho mínimo de um 1GB). Assim, evita o gasto de um CD e o processo de instalação é muito mais mais rápido. Se desejar gravar a imagem numa pen drive, recomendo a leitura deste artigo que explica todos os pormenores desse processo:

3 maneiras de instalar o Ubuntu através duma Pen USB

 

Configure a BIOS

Actualmente os novos computadores vêm com a BIOS programada para arrancar primeiro por CD e por pen USB antes do disco, por isso, em princípio, o seu computador irá arrancar automaticamente pelo CD ou pela pen, conforme a maneira que escolheu para instalar o Ubuntu. No entanto, o seu computador pode não arrancar por nenhum deles, nesse caso, deverá configurar a BIOS para que o faça.

Existe uma infinidade de BIOS diferentes e seria preciso muito mais que artigo para abordar todas os aspectos necessários para configurar uma para arrancar ou pelo CD ou pela pen. Por esse motivo, isso não é abordado neste artigo, no entanto, recomendo a ver esta página que provavelmente o ajudará:

http://www.hiren.info/pages/bios-boot-cdrom

No caso de não ajudar, procure no Google como conseguir mudar a BIOS da sua motherboard para arrancar pela pen ou pelo CD do Ubuntu.

Arranque do Ubuntu pelo CD ou pela pen

Depois de ter a BIOS configurada e o CD ou a pen prontos, reinicie o computador para ele arrancar ou pelo CD ou pela pen. Se tudo correr bem, irá aparecer uma janela semelhante à seguinte onde deverá escolher a sua língua:

De seguida, ao invés de escolher a opção “Instalar Ubuntu”, deverá escolher a opção “Experimentar Ubuntu sem fazer nenhuma alteração no seu computador“. Assim, poderá criar partições e inclusive navegar na Internet enquanto espera que o processo de instalação acabe.

Depois de o Ubuntu arrancar você estará pronto para proceder à instalação! De seguida explico como particionar o disco. No caso de já ter o seu disco particionado e pronto para instalar o Ubuntu, avance a secção a seguir!

Particionamento do disco

Noções básicas

Se só tem o Windows instalado, terá de reduzir a partição do Windows para criar algumas outras partições necessárias para o perfeito funcionamento do Ubuntu. Essa redução terá de ser inferior ao espaço livre, se não, obviamente, perderá dados. Também deverá ter noção que, tal como refiro no início deste artigo, deverá desfragmentar a partição que irá reduzir para não perder os dados.

Quanto às partições necessárias para o Ubuntu, o meu conselho é utilizar 3 partições para o Ubuntu, no entanto, caso não seja possível, poderá prescindir de uma delas. Esta minha recomendação deverá ser seguida de forma a ter um Ubuntu com uma organização excelente que permitirá num futuro poder actualizar para novas versões do Ubuntu sem perder dados. Isso será possível pois irá ter uma parição dedicada aos seus dados e às configurações do Ubuntu. Assim, quando quiser instalar outro Ubuntu, ele irá automaticamente buscar essas configurações a essa partição.

Tamanhos das partições do Ubuntu

Para além da partição do próprio Ubuntu e da partição dos dados, é aconselhável que faça também uma partição SWAP, que servirá como ajuda da memória RAM aquando de possíveis excessos de memória usada. Esta partição deverá ter o dobro do tamanho da RAM que o seu computador tem, no entanto, não aconselho a criar uma partição maior que 2GB. Como no meu caso tenho 1GB de RAM, neste artigo a partição da SWAP irá ter 2GB de espaço. Esta partição, nos computadores novos que têm mais de 1GB de memória, poderá ser abdicada em prol de mais espaço para os seus dados.

Quanto à partição do Ubuntu, normalmente denominada, partição da “Raiz”, esta deverá ter o tamanho referido nos pré-requisitos. No mínimo deverá ter 4GB. A minha recomendação é 10GB, pois assim terá espaço para instalar muitos programas. Por exemplo eu nunca tive problemas de espaço e instalo muitos programas para poder fazer artigos para este blog.

Quanto à partição dos seus dados, denominada “home”, esta deverá ter o espaço necessário para os seus dados (músicas, documentos, filmes, etc.). Normalmente o que faço é o seguinte: reduzo o máximo de espaço possível da partição do Windows, crio a partição da Raiz de 10GB, crio a partição SWAP conforme a memória, normalmente de 2GB, e o restante fica para a “home”.

Reduza a partição do Windows!

Para proceder ao particionamento, comece por abrir o melhor programa de particionamentos que vem já instalado no Ubuntu. Esse programa chama-se GParted e está disponível em Sistema→Administração→GParted. Todas as mudanças que fizer só serão aplicadas quando clicar no botão “Aplicar”, até lá poderá fazer e refazer partições à vontade.

Quando o abrir, seleccione o disco a particionar (se tiver mais que um poderá distingui-los pelo tamanho) e clique no botão “Redimensionar/Mover a partição seleccionada“. Deverá reduzir a partição o suficiente para criar as outras partições. No meu caso, irei fazer uma partição de 10GB para a raiz, uma de 2GB para a SWAP e outra de 15GB para a “Home”, totalizando 27GB para o Ubuntu. Assim a redução que irei fazer será de cerca de 27GB. Para definir o espaço livre que quer no final basta escrever o valor (em MegaBytes) na caixa de texto intitulada “Espaço Livre Subsequente (MiB)“. Pode aproveitar e etiquetar a partição para saber, quando aplicar as mudanças, se fez tudo bem. Depois de definir os valores finais, clique no botão “Redimensionar/Mover“.

Crie as partições necessárias para o Ubuntu!

Agora que tem espaço para criar partições, clique com a tecla da direita do rato em cima da secção intitulada “Sem alocação” e clique na opção “Novo“.

Na nova janela, deverá escolher o tamanho que quer para o Ubuntu, ou seja, para a partição da raiz do Ubuntu. Para além de definir o tamanho dela na caixa de texto “Novo Tamanho (MiB)“, deverá também definir o “Sistema de Ficheiros” como Ext4! Depois de definir esses dois valores, clique no botão “Adicionar“.

De seguida, volte a clicar na tecla da direita do rato na secção cinzenta denominada “Sem alocação” para definir o tamanho da partição da “home”. No meu caso, digitei 2GB de espaço final, na caixa de texto “Espaço Livre Subsequente (MiB)“. Assim o restante fica para a “home”. Não se esqueça de definir o “Sistema de Ficheiros” também do tipo ext4!

Por fim, volte a clicar com a tecla da direita do rato em cima da secção “Sem alocação” para definir a partição SWAP. Na nova janela, a única coisa que precisará de mudar é o “Sistema de Ficheiros” para o tipo Linux-Swap. O tamanho está definido como máximo, que deverá ser 2GB por isso não é necessário mudar.Poderá também, tal como fiz nas partições anteriores, etiquetar cada partição.

No final, quando todas as partições estiverem definidas deverá clicar no botão “Aplicar todas as Operações” de modo a proceder ao particionamento. Entretanto clique na imagem a seguir para ver como ficou no meu caso e se no seu caso ficou semelhante.

Irá abrir um nova janela e deverá esperar que o processo esteja concluído. No final verifique se deu algum erro!

Instalação do Ubuntu

Agora que tem as partições prontas já pode proceder à instalação do Ubuntu. Para tal, dê duplo clique no ícone que se encontra na área de trabalho chamado “Instalar Ubuntu 9.10″.

Na nova janela comece por definir o seu idioma e clique no botão “Avançar” para seguir para o Passo 2 da instalação.

No passo 2, deverá seleccionar a sua localização de forma a poder obter actualizações de servidores perto de si, para ser mais rápido, e de forma a ter as definições próprias da sua localização, por exemplo a unidade monetária e a hora. Depois de seleccionar a sua localização, clique novamente no botão “Avançar“.

Neste novo passo deverá escolher o tipo de teclado que você utiliza. Em princípio o Ubuntu irá descobrir automaticamente qual é o seu teclado, no entanto, para prevenir eventuais erros, escreva caracteres especiais na caixa de texto disponibilizada no instalador de forma a ver se o teclado que o Ubuntu escolheu está correcto. Se não estiver, seleccione a opção “Escolha a sua:” e de seguida tente encontrar o teclado correcto. Clique no botão “Avançar” para seguir para o próximo passo.

No quarto passo, deverá ter muito cuidado com o que selecciona! Por padrão, o Ubuntu irá apagar todo o seu disco e provavelmente não é isso que o utilizador quer. Assim, seleccione a opção “Especificar partições manualmente (avançado)” e clique em “Avançar“.

O Ubuntu irá analisar o seu disco e irá apresentar uma janela semelhante à do GParted. Ora como você já definiu os tamanhos das partições, bastará apenas dizer onde instalar o quê. Assim, comece por seleccionar a partição que escolheu como “Raiz do Ubuntu”, em princípio, a de 10GB e clique com a tecla da direita do rato em cima dela e seleccione a opção “Alterar“.

Será aberta uma nova janela e deverá preencher da seguinte maneira:

Tamanho da Nova Partição: Deixar estar como está;
Utilizar como: Seleccionar opção “Sistema de Ficheiros Ext4 com journal”;
Formatar a partição: SIM, ou seja, com o visto;
Mount Point: Seleccionar a opção “/” que é a raiz.

E clique no botão OK.

Novamente na lista de partições, seleccione a que irá ser a sua HOME e clique com a tecla da direita do rato em cima e escolha a opção “Alterar“.

Preencha a nova janela da forma seguinte:

Tamanho da Nova Partição: Deixar estar como está;
Utilizar como: Seleccionar opção “Sistema de Ficheiros Ext4 com journal”;
Formatar a partição: SIM, ou seja, com o visto;
Mount Point: Seleccionar a opção “/home” que é a raiz.

E clique no botão OK.

A partição do Windows não deverá ter a opção “Formatar”. A partição SWAP não precisa de ser modificada, pois é do tipo Linux-Swap que significa que sempre que existir essa partição ela será formatada e utilizada como memória auxiliar. Ou seja, no final, e antes de clicar em avançar verifique se tem a lista semelhante à da imagem seguinte (clique nela para visualizar melhor!).

Depois de clicar em avançar, aparecerá o penúltimo passo, onde deverá pôr as suas informações pessoais. Atenção, a senha deverá ser minimamente difícil, ou seja, com letras e pelo menos um número. Conheço um caso de um utilizador que foi atacado pelo hacker pois tinha a senha muito simples.

Por fim, verifique se todos os dados estão correctos e clique no botão instalar para proceder à instalação do Ubuntu! Entretanto, enquanto que o Ubuntu é instalado, o utilizador poderá explorar o Ubuntu, ou navegar pela Internet ou até jogar!

No final da instalação irá aparecer a janela seguinte e deverá clicar no botão “Reiniciar Agora” para poder desfrutar deste novo sistema operativo.

Configurações Pós-Instalação

Depois de ter o Ubuntu instalado, aconselho a instalar todos os codecs necessários para poder ouvir quase qualquer tipo de música e de vídeo, bem como qualquer ficheiro compactado que lhe possa aparecer. Mais, este seu Ubuntu, fresquinho, ainda não tem a máquina virtual Java para poder abrir determinadas aplicações desse tipo nem tem o Flash da Adobe para poder ver vídeos do Youtube. Ora, para resolver essa questão aconselho-o a ver este artigo, que rapidamente resolverá esse problema!

Entretanto, convido-o também a ler os artigos a seguiram que melhoram a produtividade do seu Ubuntu, e permite impressionar os seus amigo com excelentes efeitos visuais que permitem ter uma produtividade acima do normal:

 

fonte: http://ubuntued.info/como-instalar-ubuntu-karmic-koala-9-10

Para analistas, só tablet da Apple não salvará mídia impressa

janeiro 28, 2010 in Notícias

As editoras têm grandes esperanças de que o muito aguardado computador tablet da Apple atraia novos leitores e reforce sua receita, mas poucas esperam que ele reverta por si só a queda de um setor em crise.

Investidores e analistas estão cautelosamente otimistas quanto às perspectivas para grupos editoriais como Time Warner, Conde Nast, New York Times e HarperCollins, parte da News Corp..

Mas eles alertam que o aparelho -que está sendo lançado na quarta-feira- é apenas parte da solução para a fuga de leitores em busca do conteúdo mais barato oferecido na Web. Os grupos editoriais estão desenvolvendo estratégias mais amplas que incluem celulares inteligentes e outros aparelhos.

“Não é uma bala de prata, é uma bala de bronze. E será necessário um M-16 cheio delas”, disse o analista Mike Vorhaus, presidente da Magid Advisors.

Ele estimou que o tablet poderia elevar em 10 a 20 por cento a receita digital dos grupos editoriais.

A Apple revelou pouco sobre o tablet, que deve se assemelhar a um grande iPhone com uma tela de toque de 10 polegadas, e servirá para ocupar a lacuna entre os celulares inteligentes e os laptops.

O tablet posiciona a Apple de forma direta no mercado editorial do qual a Amazon.com foi pioneira com o leitor eletrônico Kindle, mas os analistas afirmam que o aparelho pode custar até mil dólares, o que limitaria suas vendas e seu impacto.

Mas ele provavelmente irá além do Kindle ao oferecer cor e vídeo, e pode reformular o setor editorial da mesma maneira que o iPod mudou a música, dizem os analistas.

Os grupos editorais estão muito conscientes do dano que a loja digital de música iTunes, da Apple, causou às gravadoras, ao ditar preços e permitir que os consumidores adquirissem as faixas individuais desejadas, o que destruiu as vendas de álbuns.

Para antecipar o tablet, Time Warner, News Corp, Conde Nast, Meredith e Hearst anunciaram em dezembro planos para uma loja digital apelidada de “Hulu para revistas”, que promoveria a venda de versões eletrônicas de todos os seus títulos.

Ubuntu 9.10 – download e detalhes do lançamento oficial

janeiro 27, 2010 in Distribuições

O Ubuntu 9.10 ‘karmic koala’ foi lançado oficialmente no final da manhã de hoje, e traz uma continuidade dos esforços do projeto no sentido de oferecer uma distribuição amigável ao usuário do desktop.

Entre as novidades da versão estão o boot mais rápido, suporte melhorado a 3G e melhorias no suporte a áudio. A lista dos destaques do Ubuntu 9.10 traz alguns dos recursos e novidades, com uma descrição simplificada e ilustrações bastante claras – fiquei especialmente feliz de ver a acessibilidade (com leitores de telas, teclados virtuais, traduções e mais) listada entre os destaques.

 A página oficial de download do Ubuntu oferece uma grande gama de opções (a maioria dos usuários deve selecionar a versão desktop 32 bits), e você também pode recorrer à lista de mirrors oficiais, que inclui várias opções brasileiras, como a da UFPR/C3SL.

Download Ubuntu 9.10

Apple iPad – A Apple lançou um novo produto chamado Apple iPad.

janeiro 27, 2010 in Notícias

apple ipad

A  Apple lançou um novo produto chamado Apple iPad.

É como se fosse um computador de mão parecido com o iPhone, porém maior, permitindo maior produtividade pelo tamanho da tela, música e vídeo, além de ser conectado a Apple  iTunes Store assim como o iPhone.

Caso você já tenha um iPhone, todas as suas aplicações já compradas rodarão no iPad de maneira nativa, mas em uma tela menor. Ou as aplicações podem rodar com o dobro do tamanho da tela, mas com os pixels multiplicados, isto é, com a mesma qualidade de imagem da tela pequena, como se fosse esticada.

O dispositivo tem suporte a multitoques, assim como o iPhone, isto é, é capaz de receber mais de um toque ao mesmo tempo, permitindo uma capacidade maior de intenração com o Apple  iPad.

Steve Jobs, no lançamento do iPad, afirmou que o produto lançará uma revolução em termos de livros, revistas e jornais, pois tem uma tela grande o suficiente para uma leitura confortável.

Fique ligado para mais detalhes em instantes. Aproveite e assine nosso newsletter acima para receber as atualizações por email.

apple ipad

VMware facilita virtualização para pequenas empresas

janeiro 27, 2010 in Virtualização

A VMware anunciou hoje a chegada do VMware Go, uma solução baseada na Web que possibilita às pequenas e médias empresas (PMEs) virtualizar servidores e criar máquinas virtuais por meio de apenas alguns cliques do mouse, sem custos.

“Com o VMware GO estamos eliminando barreiras para que as empresas adotem a virtualização sem a preocupação com gastos excessivos e a falta de conhecimento do tema, como é o caso das PMEs, que podem, agora, desfrutar dos muitos benefícios proporcionados pela virtualização”, afirma Dab Chu, vice-presidente de produtos emergentes e mercados da VMware.

“Tanto o VMware GO quanto o VMware ESXi são produtos gratuitos que garantem redução de gastos por meio da melhora no uso dos servidores, menor uso de energia elétrica e centralização do gerenciamento dos servidores. Dessa forma, os profissionais de TI podem concentrar seus esforços mais na inovação e menos na manutenção”.

O VMware Go já foi instalado com sucesso em mais de três mil máquinas virtuais de teste na versão beta. O VMware Go, juntamente com o VMware ESXi, oferece às empresas uma maneira rápida de reduzir custos e simplificar os negócios ao operar sistemas múltiplos em um único servidor – reduzindo os gastos com hardware, energia e refrigeração, além da administração do servidor.

Fonte: http://www.linuxmagazine.com.br/noticia/vmware_facilita_virtualizacao_para_pequenas_empresas

Php-Residence administração para hotéis open source em php

janeiro 21, 2010 in php

Php-residência é um programa fonte aberto que pode ser usado em seu navegador projetou para administrar diariamente ou aluguel semanal de apartamentos de casa ou quartos de hotel.
Usa um banco de dados do PostgreSQL ou MySQL em backend. Podem ser concedidas reservas automaticamente para um quarto ou apartamento com usuário definiu regulamentos. Podem ser criadas máscaras de formas para conferir disponibilidade para sites de internet.

Multiusuário com sistema de privilégios. Costume imprime e podem ser gerados relatórios.

Saiba mais em: http://www.digitaldruid.net/php-residence/en/

Paginação de resultados com PHP e MySQL

janeiro 21, 2010 in php

Classe muito útil para criar automaticamente links de navegação, como “Página Anterior”, “Próxima Página” e os links de numeração de páginas.

A classe php

<?php

// classe-paginacao.php
class pager
{
var $sql;
var $getvar;
var $rows;
var $start;
var $getvar_val;
var $pager;
var $result;

function __construct($sql,$getvar,$length)
{
$this->result=null;
$this->sql = $sql;
$this->getvar = $getvar;
$this->rows = 0;
$this->start = 0;
$this->getvar_val = 1;
$this->pager = null;
$this->SetLength($length);
$this->GetStart();
$this->doQuery();
}

//Sets $length
function SetLength($length)
{
$this->length = (int)$length;
if($this->length<0)
{
$this->length = 0;
}
}

function doQuery()
{
$sql = trim($this->sql);
$sql = substr($sql,6);
$sql = ‘SELECT SQL_CALC_FOUND_ROWS ‘.$sql.’ limit ‘.$this->start.’, ‘.$this->length;
$this->result = mysql_query($sql);
$sql = “SELECT FOUND_ROWS()”;
$result = mysql_query($sql);
$this->rows = mysql_result($result,0);
}

function Set_Getvar_val()
{
$this->getvar_val = (int)$_GET[$this->getvar];
if($this->getvar_val<1)
{
$this->getvar_val = 1;
}
}
function GetStart()
{
$this->Set_Getvar_val();
$this->start = (($this->getvar_val-1)*$this->length);
}

function show($next=” – Próxima “,$last=” Anterior – “,$separator=” “)
{
$array = $this->pager();
$str = array();
foreach($array as $k => $v)
{
if($k!=’next’&&$k!=’last’)
{
if($k==$this->getvar_val)
{
$str[] = $k;
}
else
{
$str[] = ‘<a href=”‘.$v.’”>’.$k.’</a>’;
}
}
}
$str = implode($separator, $str);
$rt = $array['last']===null?”":’<a href=”‘.$array['last'].’”>’.$last.’</a>’.$separator;
$rt .= $str.$separator;
$rt .= $array['next']===null?”":’<a href=”‘.$array['next'].’”>’.$next.’</a>’;
return $rt;

}

function pager($margin=5)//paginacao de links
{
$path = $_GET;

//url
$newpath = $PHP_SELF.”?”;

foreach($path as $key => $value)
{
if($key!=$this->getvar)
{
$newpath .= $key.”=”.$value;
$newpath .=”&amp;”;
}
}
$newpath .= $this->getvar;

$linkpaths = array();
$current = $this->start / $this->length + 1;
$pages = ceil(($this->rows/$this->length));
$pagerstart = $current-$margin; //limita links
$pagerstart = ($pagerstart<1)?1:$pagerstart;
$pagerend = $current+$margin;

$pagerend = ( $pagerend > $pages ) ? ( ceil( ( $this->rows / $this->length ) ) ): $pagerend;

for($i=$pagerstart;$i < ($pagerend+1);$i++)
{
//mostra links da paginação quando for maior que o numero de registros por pagina
if($this->rows > $this->length)
{
$linkpaths[$i] = $newpath.”=”.($i);
}

}
if($linkpaths[($current+1)]!=null)
{
//link proximo
$linkpaths['next']=$linkpaths[($current+1)];

}
if($linkpaths[($current-1)]!=null)
{
//link anterior
$linkpaths['last']=$linkpaths[($current-1)];
}
return $linkpaths;

}
}

?>

Como usar a classe.

<?
mysql_connect(‘localhost’, ‘root’, ‘toor’);
mysql_select_db(‘meu-banco’);

include_once(‘classe-paginacao.php’);

$sql = “SELECT * FROM users”;
$pager = new pager($sql,’page’,15);
while($row = mysql_fetch_array($pager->result))
{
echo $row['name'].” “.$row['email'].”<br>”;
}
echo $pager->show();  // mostra navegação e numeros da paginação

?>

Instalação do Apache com Suporte a PHP5 e MySQL no Fedora 12

janeiro 18, 2010 in Distribuições

Este é mais um tutorial LAMP do How To Forge. Para quem não sabe, LAMP é um acrônimo para Linux, Apache, MySQL e PHP. Resumindo: dizer que possui um servidor LAMP, significa que você tem uma máquina Linux com todos esses softwares instalados. Quem já trabalha com Linux há um bom tempo, sabe que esses softwares costumam estar disponíveis já na mídia de instalação, não precisando acessar nenhum repositório online para poder ter acesso a todos esses programas. Por sinal, é muito comum já encontrarmos esses softwares instalados em servidores Linux destinados a Web.

Este tutorial do How To Forge irá lhe ensinar como instalar o servidor Web Apache versão 2, em um computador com Fedora 12 já em funcionamento. A instalação do Apache 2 visa o suporte a PHP5 através do mod_php, além do suporte ao banco de dados MySQL. Lembre-se que você já deve ter o Fedora 12 instalado em seu computador.

Como todos os tutoriais do How To Forge, este está no idioma Inglês. Por isso, se os tutoriais do How To Forge lhe interessam, comece a perder o medo, e aprenda de uma vez por todas esse idioma (nem que seja apenas o Inglês Técnico).

How To Forge: http://www.howtoforge.com/installing…fedora-12-lamp

O que é possível desenvolver com o WordPress?

janeiro 17, 2010 in php

A flexibilidade oferecida pela WordPress me agrada muito e posso afirmar que é possível desenvolver praticamente tudo com o WordPress. Muitos desenvolvedores o exploram somente como uma plataforma de blogs e alguns outros vão além e o utilizam como um CMS.

Desenvolvedores: com o WordPress é possível ir além. Acredite.

Há casos de sucessos em que o WordPress foi utilizado para ser a plataforma de desenvolvimento de sites de comércio eletrônico, revistas, jornais, portfólio, podcast, video blog, clone do Twitter, gerenciar de projeto, diretório de eventos, e muito, muito mais do que você imagina.

O grande segredo é conhecer bem o funcionamento da ferramenta, seus recursos, suas possibilidades, suas funções, suas APIs. Meu conselho: estude e seja curioso. Vá além do que é demonstrado nos tutoriais disponíveis e, para isso, use algo que nós brasileiros temos de sobra: criatividade.

Vou relacionar alguns links interessantes para você mesmo conhecer usos inusitados de desenvolvimento web tendo como base o WordPress, temas pagos com recursos avançados e ferramentas integradas.

Fonte: http://imasters.uol.com.br/artigo/15531/wordpress/o_que_e_possivel_desenvolver_com_o_wordpress/

Mandriva Linux 2010: especificações e versão Alpha 1

janeiro 6, 2010 in Distribuições, Linux

mandrake-52352O Mandriva Linux 2010 Alpha 1 já está disponível nos mirrors públicos, em sua edição Free, com DVDs de 32 e 64 bits.

Vale lembrar que os usuários entusiastas brasileiros da Mandriva estão sempre convidados a mandar para cá cobertura dos lançamentos e novidades da sua distribuição, a exemplo do que fazem usuários de outras distribuições populares no país.

As especificações propostas para a versão 2010 também foram divulgadas, e incluem itens interessantes como:

  • Possibilidade de usar o Moblin como ambiente default em configurações de hardware adequadas
  • Melhorias no menu e tempo de boot
  • Uso da conta “guest” quando necessário
  • Detecção automática de repositórios locais urpmi

Mais:  blog.mandriva.com

Gestão comercial usando Linux e Software Livre

dezembro 27, 2009 in Aplicativos, Linux, Software

Stoq é um aplicativos para gestão comercial desenvolvido pela Async Open Source

  • Controle de vendas e estoque
  • Client register (CRM)
  • Gestão de compras e estoque
  • Apuração de impostos
  • Impressão fiscal via ECF
  • Impressão de cheques
  • Desenvolvido em e para Linux

purchase

Veja mais em: http://www.stoq.com.br/pt-br/

Aplicativos em modo texto: eficientes e com boas interfaces

dezembro 27, 2009 in Linux, Software

É interessante notar como muitos linuxers “moderninhos” torcem o nariz quando comentamos sobre algumas ferramentas em interface modo texto. Em se tratando de ferramentas para desktops então, nem se fala! Para muitos, há uma verdadeira aversão quando se fala nas palavrinhas “modo texto”. Deveria ser assim? Acho que não…

Veja mais em: http://www.guiadohardware.net/artigos/aplicativos-modo-texto/

Comunidade Ubuntu elege novo conselho

outubro 8, 2009 in Notícias

SÃO PAULO – A comunidade do sistema operacional Ubuntu elegeu sete membros para seu conselho oficial.

A função dos membros e guiar o desenvolvimento do projeto, além de organizar reuniões entre os líderes das áreas de programação e cuidar de disputas a respeito de do comportamento de outros participantes do projeto.

Os nomes indicados foram: Daniel Holbach (Alemanha), Matthew East (Reino Unido), Mike Basinger (EUA), Benjamin Mako Hill (EUA), Alan Pope (Reino Unido), Richard Johnson (EUA) e Elizabeth Krumbach (EUA).

A cada duas semanas o conselho deverá participar de uma reunião utilizando o sistema de chat IRC para detalhar a política e a estrutura do projeto Ubuntu.

Lula defende software livre durante evento em Brasília

agosto 27, 2009 in Notícias

Na abertura do Congresso Internacional de Software Livre e Governo Eletrônico, o presidente Luiz Inácio Lula da Silva destacou que o software livre tem sido uma importante ferramenta para a democratização do conhecimento e renovação dos relacionamentos sociais.

Lula disse que tinha certo preconceito em estimular o ensino de crianças por meio do computador, pois temia que a máquina inibisse os relacionamentos sociais. Porém, afirmou ter mudado de opinião ao conhecer um programa de inclusão digital no Piraí, no Rio de Janeiro. De acordo com Lula, as crianças passaram a ter mais interesse pelos estudos e a evasão escolar caiu na região.

“Eu perguntei para as crianças: ‘O que esse computador modificou na sua vida?’ A resposta era uma só. Ele permite que a gente possa pesquisar mais e a gente aprendeu a gostar de ler. A meninada toma conta do computador como se estivesse tomando conta de uma coisa sagrada”, disse Lula.

De acordo com o presidente, desde que o governo adotou o software livre, já economizou R$ 370 milhões com a compra de programas de computador e aplicativos. As Forças Armadas, Caixa Econômica Social e Banco do Brasil são alguns que já aderiram ao uso do software aberto.

O Ministério da Educação já distribuiu 400 mil computadores. Até 2010, a meta é distribuir 800 mil computadores, atendendo 93% dos alunos da rede pública de ensino.

O congresso internacional será realizado nos próximos dois dias em Brasília e reunirá mais de 4 mil pessoas.

Agência Brasil