anúncios

segunda-feira, 21 de outubro de 2013

Verificando se determinada porta esta em uso no Windows e Linux

Este post é apenas para deixar como lembrete para quando precisar verificar se determinada porta esta em uso e assim se necessário finalizar essa porta.

Segue procedimento para Windows e Linux.

Windows

Verificar se determinada porta esta em uso:
netstat -abnovp tcp | findstr PORTA
Pegue o PID do resultado do comando acima e coloque no comando abaixo:
taskkill /pid PID /F

Linux

lsof -i TCP: PORTA
pegue o PID do resultado do comando acima e coloque no comando abaixo
kill -9 PID
Fica como dica!

domingo, 20 de outubro de 2013

Atualizar horário de verão sincronizado via NTP

Com o adiantamento do relógio em 1 hora, devido o horário de verão na 0:00 de sábado para domingo no dia 20/10/13 e com isso tive que atualizar os servidores para deixar sincronizados via NTP.
Essa alteração apenas afeta nas regiões Sul, Sudeste e Centro-Oeste e vai até 16 de fevereiro de 2014. Os estados atingidos são: Rio Grande do Sul, Santa Catarina, Paraná, São Paulo, Rio de Janeiro, Minas Gerais, Espírito Santo, Goiás, Mato Grosso e Mato Grosso do Sul, além do Distrito Federal. As regiões Norte e Nordeste não participam da mudança.

Bom, depois de uma breve explicação, vamos configurar sincronização via NTP.
O arquivo /etc/localtime armazena dados de região da máquina. Outras versões desse arquivo ficam localizadas em /usr/share/zoneinfo/.
Antes, verifique se tem instalado o pacote ntp, caso não esteja, instale o ntp usando o gerenciador de pacotes da sua distribuição Linux.
No Slackware já vem instalado o pacote ntp.
Mas no caso do Debian/CentOS e derivados é necessário instalar.
Debian: #apt-get install ntp
CentOS: #yum install ntp
ntp.sh
#!/bin/bash
#remove o arquivo atual
rm /etc/localtime
#criar um link simbolico para um dos arquivos no zoneinfo
ln -s /usr/share/zoneinfo/Brazil/East /etc/localtime
#ln -s /usr/share/zoneinfo/Brazil/West /etc/localtime
#ln -s /usr/share/zoneinfo/Brazil/Acre /etc/localtime
#ln -s /usr/share/zoneinfo/Brazil/DeNoronha /etc/localtime

cat /usr/share/zoneinfo/America/Sao_Paulo.zic
Rule BrazilSP 2013 only - Oct 20 0:00 1:00 S
Rule BrazilSP 2014 only - Feb 16 0:00 0 -
#Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
Zone America/Sao_Paulo -3:00 BrazilSP BR%sT

Para sincronizar com algum servidor NTP, faça:
#ntpdate -q a.ntp.br
Para incluir o script no cron com editor de sua preferência, faça:
#env EDITOR=vim crontab -e
Nesse caso abrirá o crontab irá abrir com editor vim.
Adicione no final do crontab
00 * * * * ntpdate -q a.ntp.br
Feito!

domingo, 22 de setembro de 2013

Comando lsof

Estava desenvolvendo uma aplicação Sockets (cliente/servidor) utilizando protocolo UDP, porém ao executar novamente a aplicação o servidor acusava que a porta já estava em uso.
Bom o que fiz? Utilizei o comando lsof, muito útil em ambiente Unix e Linux para verificar qual porta esta ouvindo. 
Como a aplicação socket que estava desenvolvendo utilizava porta 40002, então:
No terminal digitei: $ lsof -i UDP:40002
retornou como resposta
COMMAND   PID      USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    20091 reginaldo    4u  IPv6  21902      0t0  UDP *:40002 

O PID do processo do resultado acima  é 20091.
Assim, finalizei esse processo com $ kill -9 20091

Para verificar se o processo foi finalizado.
$ lsof -i UDP:40002
[1]+  Morto                   java ServidorUDP

Maiores informações sobre o comando lsof
man lsof
Fica como dica.

Feito!


quarta-feira, 21 de agosto de 2013

2 anos de blog

O blog esta completando hoje, dia 21 de Agosto de 2013, 2 anos!!!



Gostaria de agradecer a todos pelo prestígio e a paciência de ler os posts que são publicados. Espero continuar compartilhando conhecimentos no blog para nossos leitores. Continuem prestigiando e divulgando o blog Mundo da Computação Integral, assim aumentamos nossa comunidade.

quinta-feira, 14 de março de 2013

Aumentando memória JVM no Tomcat

Esse post é apenas uma dica de como aumentar memória JVM no Tomcat, pois dependendo da aplicação Java web, quando faz o deploy da aplicação e ao reiniciar o Tomcat pode não iniciar, então analisei o log (#tail -f $TOMCAT_HOME/logs/catalina.out) e notei que era problema de memória JVM do Tomcat.
Considerando um servidor de 2GB, fiz a configuração conforme descrita abaixo:
Adicionando $TOMCAT_HOME no path do sistema Linux
#vim /etc/profile
TOMCAT_HOME="/opt/tomcat"
PATH="$TOMCAT_HOME:$PATH
Atualizando variável ambiente
#source /etc/profile
edite o arquivo catalina.sh
#vim $TOMCAT_HOME/bin/catalina.sh

JAVA_OPTS="-Xms=1g -Xmx=1g -XX:PermSize=512m -XX:MaxPermSize=512m -server"
:x (salva e sai do editor vim)
PS: No sistema Windows se aplica o mesmo, a única diferença é na configuração da variável de ambiente e extensão do arquivo catalina.sh para catalina.bat. Feito!

domingo, 10 de março de 2013

Configurando servidor Tomcat no Linux


Introdução

O Tomcat é um servidor Java, mais especificamente um container de servlets. Desenvolvido pela Apache Software Foundation, é distribuído como software livre dentro do conceituado projeto Apache Jakarta, sendo oficialmente endossada pela Oracle como a implementação de referência para as tecnologias Java Servlet e JavaServer Pages (JSP). Cobre parte da especificação J2EE como tecnologias como servlet e JSP, e tecnologias de apoio relacionadas como Realms e segurança, JNDI Resources e JDBC DataSources.


Preparação do Ambiente Java
Antes de instalar o Tomcat é necessário ter instalado e configurado o JAVA_HOME no path do sistema. Se caso ainda não tiver configurado acesse e segue os passos corretamente instalação e configuração do JAVA_HOME no path

Instalação e configuração do Tomcat

Acesse o site do Tomcat no endereço http://tomcat.apache.org/index.html
Ou se preferir fazer o download no terminal via wget.

wget -c "http://apache.mirror.pop-sc.rnp.br/apache/tomcat/tomcat-7/v7.0.37/bin/apache-tomcat-7.0.37.zip"

Após feito o download do Tomcat, vamos copiar para o diretório /opt, extrair, setar permissão de execução nos scripts catalina.sh e startup.sh, por fim startamos o tomcat, posteriormente testamos no navegador.

#cp apache-tomcat-7.0.37.zip /opt
#cd /opt
#unzip apache-tomcat-7.0.37.zip
#ln -s apache-tomcat-7.0.37 tomcat
#cd tomcat/bin
#chmod +x catalina.sh
#chmod +x startup.sh
#chmod +x shutdown.sh
#./startup.sh

Agora no navegador digite: http://localhost:8080

Estrutura de diretórios do Tomcat

tomcat
bin - executáveis e scripts do Tomcat
conf - arquivos de configuração do Tomcat
logs - arquivos de logs das aplicações, inclusive do Tomcat
temp - diretório temporário do Tomcat
webapps - diretório com os contextos (similar ao /var/www do Apache)
work - arquivos de servlets gerados pelo Tomcat a partir de JSPs
lib - bibliotecas comuns a todas as aplicações e ao Tomcat

Script Tomcat para inicializar junto com o sistema
rc.tomcat.sh
PS: Não é recomendado copiar e colar esse script direto no terminal com editor vi/vim, pois pode copiar caracteres desconhecidos acarretando erros desse tipo. Portanto antes de prosseguir com o passo seguinte, teste da seguinte forma: bash rc.tomcat.sh e source rc.tomcat.sh, estando ok, segue com os passos seguintes, caso contrário deve revisar e analisar o erro e tentar novamente.
Agora para o script seja inicializado junto com o sistema, devemos fazer o que procede abaixo:
No Debian:
#mv rc.tomcat.sh /etc/init.d
#chmod +x /etc/init.d/rc.tomcat.sh
#update-rc.d rc.tomcat.sh defaults 99


No Slackware:
#mv rc.tomcat.sh /etc/rc.d
#chmod +x /etc/rc.d/rc.tomcat.sh


Feito!