sexta-feira, 23 de maio de 2008

PHP com suporte a Firebird/Interbase

Para instalar o php com suporte ao interbase, foram realizados os seguintes procedimentos: (atualizado)

1) Instalação do apache com suporte a módulos dinâmicos (DSO).
2) Instalação do padrao do firebird para funcionar a conexão.
3) Instaleção do php via DSO e, criação da biblioteca compartilhada para interbase.

1) Apache.- Versão 2.2.8
Depois de feito o download do apache, foi feito a seguinte configuração. Lembrando que a compilação vai do gosto de cada
um:
Obs: todas as compilações foram feitas com usuário normal (não-root), passando para root na hora de executar o make install.

$ ./configure --prefix=/usr/local/apache2 --exec-prefix=/usr/local/apache2 --enable-headers --enable-ssl --enable-vhost-alias --enable-proxy --enable-http --enable-rewrite --enable-so
$ make
$ su
# make install

Ok, o apache está compilado e instalado.

2) Firebird
Foi feito o download do Firebird na versão FirebirdCS-1.5.5.4926-0.i686.tar.gz.
Para instalação, foi executado em modo de instalação padrão o arquivo "install.sh" que se encontra dentro da pasta FirebirdCS-1.5.5.4926-0.i686 que é criada após a descompactação do arquivo "tar.gz"
Após a execução do arquivo install.sh, será criada a pasta /opt/firebird (que faz parte da instalação padrão).
A instalação do firebird não será abordada aqui.

OBS: Em alguns testes, era preciso que o firebird estive-se rodando para o php acessar os bancos de dados.

Agora vamos ao php...!

3) Php - Versão 4.4.8

Seguindo os mesmo passos do Apache, faça o download do php tarball do site e compile conforme sua necessidade. Toda a compilação foi feita em modo usuário normal.
A compilação do php também é temperada a gosto conforme à necessidade.

Neste exemplo, já existe uma instalação de apache e php em versões anteriores para outros testes e serviços rodando nos diretórios padrões /usr/local/apache e /usr/local/lib (para php) portanto, foi instalado o php e apache em diretórios diferentes como pode ser visto nas linhas do configure, abaixo.

$ ./configure --prefix=/usr/local/php-4.4 --exec-prefix=/usr/local/php-4.4 --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --enable-safe-mode --disable-ipv6 --with-zlib --with-zip=/usr --with-interbase=shared,/opt/firebird --with-openssl
$ make
$ su
# make install

A opção de compilação "--with-interbase=shared,/opt/firebird" deve estar presente para que o php gere um módulo do interbase para funcionar corretamente.
Depois de compilado e instalado, ainda no pasta fonte do php, entre na pasta "modules" e verifique a existencia do arquivo "interbase.so", copie este arquivo para a pasta de "extesions" que será configurada no php.ini.
Como já existia uma instalação do php-4.1.2 neste servidor, o diretório padrão desta versão 4.4.8 está em /usr/local/php-4.4.8.

# cp interbase.so /usr/local/php-4.4/lib/php/extensions

Feito isto, copie o php.ini-dist /usr/local/php-4.4/lib
Pronto, agora é só editar o php.ini e testar.

# cd /usr/local/php-4.4/lib

# vi php.ini
Dentro do php.ini você vai procurar pela linha "extension=interbase.so" e descomentá-la.
Procure também a linha "extension_dir" e coloque-a apontando para a pasta de extensões utilizadas pelo php, nesta caso ficaria assim:

extension_dir = "/usr/local/php-4.4/lib/php/extensions"

Ok, feito isto o servidor está apto a funcionar acessando banco de dados firebird.
Configure um vhost no apache, crie seus scripts de conexão com o firebird e faça os testes.

Obs: Em uma versão de testes, foi compilado o Apache 1.3.37 com php 4.1.2 onde o script que conectava no banco realizava a conexão mas a rotina só apresentava as informações até uma parte ou seja, não concluia todo o processo. Só para registrar =)

Abraço até a próxima...!

quarta-feira, 14 de maio de 2008

Argument list too long

Para remover muitos arquivos de um diretório de uma vez só, o comando seria o seguinte:

for i in `ls`; do rm -rf $i; done

ou usando xargs:

ls | xargs -n10 -i rm -rf {}

Dica de PiterPunk

sexta-feira, 9 de maio de 2008

Dicas interessantes para backup

Não sou expert em script para backups e assim como quase todos admins, tenho que me virar na hora da correria.

Estava escrevendo um script de backup esses dias e, precisava que o script ao gerar o backup do dia, apaga-se o backup do dia anterior.
Como os dados ficariam em fita, não precisava guardar os backups de todos os dias em disco mas, gostaria que ele apaga-se o backup feito no dia anterior, de uma forma "elegante" ao invés de mandar um "rm -rf" na pasta.

Para executar esse rm dos dias anteriores adicionei a seguinte linha dentro do script de backup, no final dele:

rm nome-do-arquivo-$(date --date="1 day ago" +%Y-%m-%d).tgz

Claro que tudo depende de como você fez o backup.
O nome do arquivo no meu caso é sempre o mesmo, o formato da data também é o mesmo e o tipo de compactacão que usei foi .tgz, se isto não estiver de acordo ele não vai encontrar o arquivo de backup que foi gerado.


Bom, nesta opcão posso colocar "4 days ago" para deletar o backup de 4 dias atrás mas, contato a partir da data em que rodo o script por exemplo, se rodar hoje 09-05-2008 ele vai apagar os backups do dia 05-05-2008.
Se omitir esta opcão de data na linha de comando, ele vai remover os backups não importa a data atual, será sempre da quantidade de dias que você colocar.

Essa dica é boa, contanto que você não ache melhor colocar um "rm" após gerar o backup. Mas lembre-se de transferi-lo para outro lugar antes de remover.

Até mais..

terça-feira, 6 de maio de 2008

Lynx e Wget via proxy

Para ativar o uso do Lynx e do Wget via proxy, proceda da seguinte forma:

Lynx:
Localize o arquivo lynx.cfg

# locate lynx.cfg
/etc/lynx.cfg

Utilizando um editor localize as seguinte variáveis proxy: http, https e ftp. Existem outras mas não entrarão neste contexto.
Depois de localizada as variáveis altere para o seguinte:
http_proxy:http://ip.do.servidor.proxy:porta/
https_proxy:http://ip.do.servidor.proxy:porta/
ftp_proxy:http://ip.do.servidor.proxy:porta/

Pronto está feito, domínios da intranet que não precisam de proxy podem ser acessados através da variável:
no_proxy:dominio.com.br, dominio2.com, IP

Para configurar o wget para sempre utilizar proxy proceda da seguinte forma:

Localize o arquivo wgetrc:
# locate wgetrc
/etc/wgetrc

Edite o arquivo e procure as seguintes variáveis:
http_proxy
ftp_proxy
use_proxy

Caso a opção use_proxy esteja ativa: use_proxy = on, as opções http e ftp devem estar configuradas.
http_proxy = http://ip.do.servidor.proxy:porta/
ftp_proxy = http://ip.do.servidor.proxy:porta/

obs: mantenha a barra no final das configurações.

Para utilizar o wget utilizando proxy digite o seguinte
#wget --proxy-user=usuario --proxy-password=senha endereço_para_baixar

Feito isto, é só utilizar as ferramentas.

segunda-feira, 5 de maio de 2008

Próximos posts...!

Os próximos posts a serem colocados aqui serão:

1) Como rodar o php com suporte a acesso ao banco de dados interbase/firebird
2) Rodando dois servidores apache no mesmo servidor para atender a domínios diferentes em portas diferentes.

Aguardem....!!!

sexta-feira, 25 de abril de 2008

Procurando arquivos grandes

Precisei pesquisar no servidor quais arquivos continham mais de 5Mb.
Para fazer isso executei o seguinte:

find / -size +5000k -print
ou
find / -size +5000 -print > saida_find.txt

Depois é só olhar o arquivo e o caminho.

Falows

SSH sem senha.

Bom, esse post já não é novidade no mundo linux mas, sempre que preciso tenho que ficar procurando no google.
Para economizar tempo eu vou postar aqui como fazer para criar um usuário de conexão remota via ssh em um servidor que não precise digitar senha.

Neste cenário teremos: Servidor A e Cliente A

Antes de começar é importante ressaltar o seguinte: como trata-se de usuário de conexão ssh o mesmo precisa existir em ambos os lados, Servidor e Cliente a menos que seu servidor aceite conexões remotas de usuário root, o que não é aconselhável.

O primeiro passo...!
Na minha estacão vou criar um usuário:
# adduser suporte
Depois de criado, passa para pasta deste usuário:
# su - suporte
Crio a pasta .ssh dentro do usuário suporte e acesso a mesma para gerar a chave:
$ mkdir .ssh
$ cd .ssh
Agora vou criar a chave no padrão de criptografia DSA. Poderia ser RSA também.
Feito isso vou enviar a chave gerada (id_dsa.pub) para o Servidor A
$ ssh-keygen -b 1024 -t dsa
$ scp id_dsa.pub suporte@ip_servidor:/home/suporte

Lembre-se de que o usuário suporte deve existir no outro servidor ou, você pode enviar para o usuário root, depois conectar-se no servidor e mudar o arquivo de pasta.

Logando com o usuário suporte, vou copiar e renomear o arquivo
$ pwd
$ /home/suporte
$ mkdir .ssh
$ mv id_dsa.pub .ssh/
$ cd .ssh/
$ mv id_dsa.pub authorized_keys

Feito isso é só deslogar do servidor e, a partir da estacão de suporte logar no servidor.
Na estacão de suporte é preciso estar como usuário suporte.

É isso ae.
Abraço

quinta-feira, 24 de abril de 2008

Limpar dados de uma tabela do mysql

Precisei remover alguns dados de uma tabela e para fazer isso, utilizei o comando TRUNCATE do mysql.

Fiz da seguinte forma:

mysql> truncate table nome_tabela;
Query OK, 0 rows affected (0.00 sec)

Não sou expert em mysql mas isso resolveu meu problema.
Obs: esse comando remove todos os dados de uma tabela, ou seja, limpa a tabela totalmente.
Veja o site: http://dev.mysql.com/doc/refman/4.1/pt/truncate.html para mais informações.

abraços

Exportar uma tabela de um database

Para exportar uma tabela de uma database do mysql o procedimento é o seguinte:

mysqldump -u usuario -p(senha) database table > dump.sql

mysqldump -u usuario -p(123456) minhacasa sala > dump.sql

Caso tenha usuário para conexão de banco use o: -u usuário -p e a senha
Depois o nome da database e o nome da tabela.

Pronto, foi exportado do mysql apenas a tabela sala do banco de dados minhacasa.

t+

quinta-feira, 3 de abril de 2008

google search...!

Quer pesquisar sobre Linux somente?

www.google.com.br/linux

Quer pesquisar sobre Windows somente?

www.google.com.br/microsoft

good search...! have fun...!

quinta-feira, 7 de fevereiro de 2008

Problema ao carregar o SSHd

Ao carregar o SSHD a seguinte mensagem apareceu:

sshd[250]: fatal: daemon() failed: No such device
obs: o número é aleatório.

O problema é o seguinte, após digitar algum comando ou instalar alguma aplicação o arquivo /dev/null tornou-se um arquivo comum do linux.

Para corrigir basta seguir os seguintes comandos:

# cd /dev/null
# rm null
# mknod /dev/null c 1 3

Ok, o arquivo null está criado corretamente e o serviço pode subir sem problemas.


domingo, 20 de janeiro de 2008

Drupal em português do Brasil (pt-br)

1. Entre na administração do seu site em Drupal e clique em módulos (Modules).

2. Marque a opção Locale. Ela vai habilitar a interface para outras línguas além do inglês.

3. Agora é preciso baixar a tradução do drupal para o português do Brasil (pt-br). Vamos usar a linha de comando:

# cd /var/www

# wget http://ftp.drupal.org/files/projects/pt-br-5.x-2.00.tar.gz

# tar -xvzf pt-br-5.x-2.00.tar.gz -C /var/www/seu_site/

4. Na administração, vá em Site configuration e, depois, clique em Localization. Ou digite no Firefox http://localhost/seu_site/?q=admin/settings/locale

5. Clique em add language, escolha o português do Brasil e add language!

6. Agora vamos importar o arquivo de tradução, em Import. Procure o arquivo pt-br.po (Ele vai estar em /var/www/seu_site/pt-br/pt-br.po). Certifique-se que em Import into está marcado o português do Brasil. Import!

7. Habilite este idioma em Enabled e marque como padrão (Default). Clique em Save configuration.

quarta-feira, 16 de janeiro de 2008

Vamos ajudar o meio ambiente.

Pois é.. ano novo.. td novo.. e o mundo? continua de que jeito..?

Muitas vezes é tão custoso para qualquer pessoa pegar um papelzinho, um copo de plástico e jogar no lixo.
Todo o lixo além de ser prejudicial ao meio ambiente, suja a cidade onde mora.

Não custa colaborar e não é só com a cidade, são com os lagos, rios, represas e etc...
Segue abaixo alguns links para você acessar e tomar consciência de algumas coisas...

http://www.ondazul.org.br/

A página de links tem outros endereços interessantes.
Faça a sua parte que o planeta faz a dele. =D

terça-feira, 11 de dezembro de 2007

Profissional Formado.

Estou aqui na faculdade, acabei de apresentar meu tcc.
Bom, em resumo: passei o dia todo em cima da apresentação, revisando e revisando, a apresentação foi bem tranquila, tive um total de 4 perguntas da banca o restante foram considerações e parabenizações pelo excelente trabalho.

Nós sempre achamos que o que fazemos não está do jeito que gostaríamos mas, ouvi dos três professores da banca que o trabalho está ótimo, que estou de parabéns me leva a crer que realmente estava bom.

Faria tudo de novo? talvez...!
Obrigado as pessoas que me ajudaram, minha namorada pela paciência e ajuda nas correções de português, minha família e principalmente a Deus.

Tema da monografia:
Segurança da Informação: Proposta de política de segurança da informação aplicada com Norma NBR ISO/IEC 17799

Banca:
César F. Moro (orientador)
André Cesar Leandro
Marcelo Ribeiro Donatão

Faculdade:
CESUMAR - Centro Universitário de Maringá

Curso:
Tecnólogo em Rede de Computadores

Resultado:
Apartir de hoje, UM PROFISSIONAL FORMADO E DIPLOMADO.
Obrigado.

Início, meio e fim.

Bom, o por que de mula-véia?
Na verdade, eu tentei alguns nomes anteriores e não estavam disponível. (isso aqui está ficando pior que criar e-mail no hotmail, falae?)
Não tenho nada contra os animais, alias, gosto muito deles, principalmente dos lemures.. (hahaha)

Já tentei criar outros blogs, mas sempre acabo deixando de lado, esse vou tentar dar continuidade.
Bom, vou escrever muitas coisas aqui principalmente sobre minha profissão que é informática, sobre meus esportes, música e enfim.
Não sou de ficar criando poemas e bla bla bla, acho isso meio coisa de nerds e de apaixonadinhos.
Adoro escrever sobre coisas que me irritam mas, sempre mantendo o respeito pela política do blog, ninguém nunca lê, eu li.

Do mais é isso mesmo, agora aquela típica frase que não pode faltar em lugar nenhum...: "Sejam bem vindos...!" (argh)

Abraços..

segunda-feira, 10 de dezembro de 2007

Ano novo hein.. quem diria..

Pois é meus "amigos", ano novo, vida nova? tudo novo? felicidades? enfim.. todo ano é a mesma coisa mas, na verdade eu acho que tudo isso é renovável todos os dias.

É claro que no começo do ano, todos gostamos de pensar em coisas novas, pensar que vai ser diferente durante o ano.. queremos fazer coisas que não fizemos no ano que se passou, programar novamente o que havíamos programado e que não executamos, por algum motivo.

Ano novo é sinal de renovação, sinal de alegria, enfim... não deixa de ser um dia igual todos os outros.. mas é o momento de você pensar que pode começar tudo de novo, e realmente pode, ver de forma diferente as suas atitudes, as suas ações, o mundo a sua volta, o que você faz com a sua vida, a sua carreira, sua família, seus amigos e por ae vai.. a lista é grande...

Eu penso que isso pode ser todos os dias mas, essa data é especial.

Esse ano vai ser bom, vou começar formado, com um diploma na mão.. coisa que acho nesse pais.. algo muito fútil, mas por mais fútil que seja eu tenho um.. isso não me garante um bom salário porque tem gente ganhando muito mais do que eu..

É tempo de programar, analisar, investir em você, criar expectativas boas sobre sua vida, sentimental e profissional.

Estou começando o ano desempregado mas com uma boa intuição sobre esse ano que vai iniciar.. fiz planos como todos os seres humanos na face da terra fariam.
Amanhã 11/12/2207 será um marco histórico na minha vida, um dia de conquista, de vitória, uma coisa que eu não esperava acontecer comigo, vou apresentar a minha monografia.
Algo que parecia estar tão longe.. muito longe... mas não.. está tão perto, muito perto...
Mas do que pra qualquer um, é um vitória pra mim, pra eu mostrar pra mim mesmo que eu posso, que eu consigo, foi sofrido, muitos stress, muito nervosismos enfim, eu consegui.

Faça sua torcida pra mim, é amanhã, o grande dia...
Só tenho a agradecer, agradecer a Deus, obrigado Senhor, sem o Senhor eu não conseguiria.
Minha namorada me deu muita força também, corrigiu quase tudo :D obrigado meu anjo..

Bom, chega de ladainhas, Obrigado a presença e a paciência.
Fiquem com Deus e feliz ano novo.