16 de mai. de 2011

Desinstalar pacotes RPM.

Pessoal, Quem nunca instalou algo errado e depois gostaria de desinstalar o pacote porem não faz idéia de quais comandos utilizar no shell para desinstalar? Pois bem, vou compartilhar com vocês o comando chave para desinstalar qualquer pacote rpm no linux.
1 - Vou utilizar um exemplo básico o banco de dados Firebird.
2 - Primeiramente devemos saber o nome completo do pacote a ser desinstalado, então devemos executar o comando (rpm -qa | grep Firebird), onde esta o nome Firebird você coloca o nome do programa que você instalou (Sendmail, Postfix etc...)
3 - O shell ira retornar o nome do pacote acompanhado da versão do mesmo conforme abaixo FirebirdSS-1.5.2.4634-0, então devera apenas executar o comando (rpm -e FirebirdSS-1.5.2.4634-0) que o pacote será desinstalado.
Espero ter ajudado. Abraços.

15 de mai. de 2011

Monitoracao Servicos Linux

Pessoal, Tive em um cliente a necessidade de monitorar um servico x do linux, ou seja, se o servico estivesse parado ele realiza o startup do mesmo e notifica via email os administradores, sei que existe funcoes no linux para quem desejar realizar um processo apos o boot do servidor eis aqui uma sugestao. 1 - Crie um arquivo texto com um nome padrao do serviço. Ex: openfire comando (vi /caminho_script/nome_script.sh) + enter 2 - Agora cole no arquivo o conteudo do script abaixo
#bin/sh
echo '*****************************************************'
echo '*** Script Monitoracao servicos Linux ***'
echo '*** Versao 1.0 ***'
echo '*** amartinstechnet.blogspot.com ***'
echo '*** By Martins ***'
echo '*****************************************************'
##Caso queira acrescentar mais emails apenas deixar um espaco.
EMAIL='seu_email@dominio.com.br'
if /etc/init.d/openfire status == running
then
echo "Servico Ativo"
exit 0
else
cd /etc/init.d
./openfire start
cut |mail -s "Servico Openfire iniciado automaticamente $HOST" $EMAIL
exit
fi

P.S. Desculpem a endentação do código, mas no blog não consigo manter o layout decente do script então fica por conta de vocês...

3 - Apos edite o arquivo da melhor forma, ou seja, insira seu email e insira tambem o nome do servico bem como o local onde o mesmo se encontra e o comando para iniciar o mesmo.
4 - Este script esta funcionando corretamente no SuSE que possui por padrão os ''rc'' da distribuição.
Espero que tenham gostado.

Crontab enviando Email.

Ola pessoal, Apos alguns problemas enfrentados de configuração de email`s no Linux, me deparei com um novo problema. Existiam diversos Scripts com suas rotinas normais na Cron no qual uma dessas rotinas seria realizar o envio de email caso um serviço X do Linux estivesse parado, porem a saída padrão da Cron realizava o envio do email mesmo se o serviço estava ativo com um conteúdo do email informando que o serviço estava ok e ativo, ou seja, o que seria para a Cron apenas enviar email caso o serviço estivesse parado ele também enviava mesmo se o serviço estivesse ativo. Apos quebrar um pouco a cabeça achando que o script tava errado percebi que a Crontab também realiza envio de email para as saídas padrão dela para o usuário root.

Solução

O melhor método para contornar este problema seria de apenas acrescentar o comando ( > /dev/null) apos o schedule de cada job. Abaixo tem um exemplo.

*/30 * * * * /root/scripts/iniciawebmin.sh > /dev/null
Espero que tenham gostado. Obrigado.

10 de mai. de 2011

Envio email linux pelo gmail (sendmail + ssmtp)

Ola Pessoal, Esta idéia estarei compartilhando com todos com muito orgulho, confesso que foi um dos problemas mais complicados e pensativos que já me dediquei e é claro com vitoria... rsrsrs. -Visão- Digamos que você queira realizar a monitorações de algum servidor de sua residência ou ate mesmo de algum cliente que não possua servidor de email interno. Sendo assim devemos autenticar em algum servidor externo para realizar o envio das logs para seu email.

Pois bem, este procedimento foi realizado no SuSE SLES 10 SP3.

1 - Devemos primeiramente realizar a criação de um email no gmail, caso já tenha este email criado então pule este processo.

2 - Acessar a pagina do Opensuse.org e pesquisar por pacote com o nome ssmtp ou acesse o link http://software.opensuse.org/search?q=ssmtp&baseproject=SUSE%3ASLE-10%3ASDK&lang=pt_BR&include_home=true&exclude_debug=true e escolha a distribuição (32 - 64).

3 - Apos o download do arquivo .rpm devemos executar o mesmo na maquina que desejamos que realize o envio de email comando (rpm -Uvh nome_do_pacote.rpm)

4 - Em seguida devemos acessar o diretório do ssmtp comando (cd /etc/ssmtp) realizar o backup do arquivo de configuração comando (cp ssmtp.conf ssmtp.conf.orig)

5 - Edite o arquivo comando (vi ssmtp.conf) e deixe o mesmo com as linhas abaixo sem o # as demais configurações pode deixar com o #. Caso seu arquivo nao possua alguma linha abaixo pode copiar deste tópico e inserir na linha sem problemas.

root=seu_email_@gmail.com

mailhub=smtp.gmail.com:587

AuthUser=seu_email_@gmail.com

AuthPass=sua_senha

UseSTARTTLS=YES

6 - Em seguida devemos acessar o caminho sbin comando (cd /usr/sbin) e realizar um backup do arquivo sendmail comando (cp sendmail sendmail.bkp).

7 - No proximo passo devemos excluir o sendmail comando (rm sendmail) e criar um link simbolico comando (ln -s /etc/alternatives/mta /usr/sbin/sendmail)

8 - Com isto podemos utilizar o mail ou mailx normalmente em qualquer script, abaixo um exemplo de teste...

echo "Testando GMAIL" | mail -s "Assunto do email" email_destinatario@gmail.com

Espero que ajude, abraços.

6 de mai. de 2011

WEBMIN - Error - Bad Request

Ola, Um dia desses me deparei com o seguinte problema em um cliente ao instalar o webmin 1.5. em um servidor SuSE SLES 11 (Error - Bad Request This web server is running in SSL mode. Try the URL https://nome_servidor:10000/ instead.), ou seja, mesmo tentando acesso via https apresentava o erro (Conexo recusada pelo servidor). Enfim realizei varias pesquisa e constatei que o erro refere-se ao arquivo de configuração do webmin (miniserv.conf) localizado em /etc/webmin. Para corrigir este problema realize uma copia de seu arquivo miniserv.conf de backup comando (cp miniserv.conf miniserv.conf_bkp) em seguida edite o arquivo comando (vi miniserv.conf) e delete todo o conteúdo do mesmo comando (dd) após cole todo o conteúdo abaixo.
#Inicio - By amartins#
port=10000
root=/usr/libexec/webmin
mimetypes=/usr/libexec/webmin/mime.types
addtype_cgi=internal/cgi
realm=Webmin Server
logfile=/var/webmin/miniserv.log
errorlog=/var/webmin/miniserv.error
pidfile=/var/webmin/miniserv.pid
logtime=168
ppath=
ssl=0
env_WEBMIN_CONFIG=/etc/webmin
env_WEBMIN_VAR=/var/webmin
atboot=1
logout=/etc/webmin/logout-flag
listen=10000
denyfile=\.pl$
log=1
blockhost_failures=5
blockhost_time=60
syslog=1
session=1
premodules=WebminCore
userfile=/etc/webmin/miniserv.users
keyfile=/etc/webmin/miniserv.pem
passwd_file=/etc/shadow
passwd_uindex=0
passwd_pindex=1
passwd_cindex=2
passwd_mindex=4
passwd_mode=0
preroot=blue-theme
passdelay=1
logouttimes=
#Fim - By amartins#
Apos salve o arquivo (ESC shift : wq) e reinicia o servidor do webmin (stop e start) Espero que tenha ajudado... Abraços

2 de mai. de 2011

Alterando Propriedades de Meu Computador

Alinhar ao centro Pessoal, as vezes necessitamos alterar alguma informacao nas propriedades de seu computador (tela ao lado) entao estarei compatilhando esta ideia de como voce alterar as informacoes ao lado diretamente no registro de seu Computador. 1 - Abra o registro de seu windows digitar o comando no executar (iniciar - executar) digite (regedit) No Windows Windows 95, 98 e Me: 2 - localizar o seguinte diretorio [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion] Windows NT, 2000 XP, 2003: 3 - Localizar o seguinte diretorio [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]

4 - Você terá 4 Registros que poder mudar: RegisteredOrganization, RegisteredOwner, ProductId, e ProductKey bastando para isto executar um clique duplo e alterar o contedo.

Abracos.

1 de mai. de 2011

Start Automatico de VMs no XEN

Ola, Muitas vezes virtualizamos servidores e necessitamos que o mesmo fosse iniciado sempre quando a maquina física for iniciada, ou seja, digamos que seu servidor físico exista uma maquina virtual responsável pelo banco de dados de sua empresa e por algum motivo sua maquina física é desligada (queda de energia) porem você não esta na empresa para iniciar a maquina virtual (banco de dados) então você pode realizar o seguinte procedimento abaixo. P.S. Já trabalhei com versões do XEN que possui a opção do boot automático das VM`s, porem nunca funcionou comigo, sendo necessário partir para o shell... 1 - Todas as configurações das VM`s encontram-se neste diretório /etc/xen/vm la existem dois arquivos um deles com as configurações das maquinas e outro arquivo com a extensao .xml 2 - Certificar que existe o diretório chamado auto em /etc/xen, caso exista parte para a etapa 3, caso contrario crie este diretório comando (mkdir /etc/xen/auto) 3 - Devemos agora executar o seguinte comando para criar um link simbólico entre a VM e o diretório auto comando (ln -s /etc/xen/vm/arquivo_de_sua_vm /etc/xen/auto) Espero que tenham gostado da dica... ate a próxima.

Criar ISO no Linux

Caros, Estarei repassando abaixo um comando que muito utilizo em meu dia, visto que atualmente possuímos muitos servidores virtuais utilizamos muito a instalação de sistema via imagem ISO, mas como podemos criar essas imagens diretamente no LINUX sem a necessidade de aplicativos no linux ou no Windows.

1 - Primeiramente devemos inserir o cd ou dvd que vamos gerar o iso

2 - Em seguida devemos realizar o seguinte comando

dd if=/dev/sr0 of=/caminho_para_salvar_sua_iso.iso

3 - Repare que meu dvd foi identificado no linux como sr0 (zero) então você deve se certificar que sua mídia tenha sido identificada pelo Linux como sr0 (zero), caso contrario apenas altere o comando para /dev/nome_identificacao_de_seu_dvd Abraços.

Visualizar arquivos ISO no LINUX

Ola Pessoal, Estarei compartilhando o comando abaixo com vocês para quando ocorrer a necessidade de visualizar ou copiar algum arquivo dentro de uma imagem ISO. Este comando utilizo muito em distribuições SuSE, mas acredito funcionar perfeitamente nas demais.

1 - Crie um diretório dentro do ponto de montagem /media comando (mkdir /media/nomeseudiretorio

2 - Execute o seguinte comando no shell: mount -o loop /caminho_da_imagem_iso /media/nomedeseudiretorio

Era isso. Espero que gostem, ate a próxima.