Posted by
Daniel Kühl Lima in
Bash, Linux, Seguranca
Apr 20th, 2010 |
7 Comments
rootsh é um shell que loga tudo o que um usuário root vê no terminal. É útil se você tem vários administradores com acesso root num servidor e você quer gravar exatamente o que o usuário faz.
Fazer o download do rootsh-1.5.3.tar.gz.
wget http://www.virtualxp.org/downloads/rootsh-1.5.3.tar.gz
Descompactar, configurar, compilar e instalar:
tar zxvf rootsh-1.5.3.tar.gz -C /usr/src
cd /usr/src/rootsh-1.5.3
./configure --disable-syslog --disable-linenumbering
make
make install
Depois de instalado os binários, o sistema está quase pronto. A única necessidade que...
Posted by
Daniel Kühl Lima in
Bash, Linux
Apr 7th, 2010 |
1 Comment
O que o script faz?
Faz um parse no arquivo de log do Oracle Listener e extrai o HOST do usuário, o USER e o HOST e PORTA que o usuário está conectando.
#!/bin/bash
#
###############################################################################
#
# Descrição: Fazer o parse do LOG e extrair apenas o HOST e USER, também
# HOST e PORT
# Autor: Daniel K Lima
# Data : 10/03/2010
# Uso : ./parser.sh arquivo.log
#
###############################################################################
# Parâmetros
LOG=${1}
SED=$(which sed)
CUT=$(which cut)
GREP=$(which...
Posted by
Daniel Kühl Lima in
FreeBSD
Apr 6th, 2010 |
No Comments
Para fazer uma listagem de todos os HDs (discos) instalados num computador com FreeBSD, uma das formas de se fazer isso é executar o comando:
egrep 'ad[0-9]|cd[0-9]' /var/run/dmesg.boot
E a saída desse comando será algo como:
acd0: CDRW at ata0-master UDMA33
ad2: 76318MB at ata1-master UDMA100
ad3: 76318MB at ata1-slave UDMA100
Onde:
IDE Hard disk começa com ad – /dev/ad0 primeiro IDE hard disk, /dev/ad1 segundo hard disk e assim por diante
SCSI Hard disk começam com da – /dev/da*
IDE CDROM/RW/DVD começam com acd – /dev/acd*
SCSI CDROM/RW/DVD começam com cd –...
Posted by
Daniel Kühl Lima in
Featured Articles, FreeBSD, Linux
Apr 6th, 2010 |
No Comments
Ter um PDF é bom, é prático e tudo o mais, mas é necessário ter um programa específico para poder abrir os arquivos .pdf como o Acrobat Reader, o evince e outros.
As vezes não é necessário ou não é desejado ter um programa específico para poder abrir PDFs, sendo mais prático, no entanto, utilizar o próprio navegador que suporta abrir as imagens diretamente sem auxílio externo.
Caso essa seja a sua necessidade, converter os PDFs que estejam num servidor ou o que seja, vou mostrar abaixo como converter PDF para imagem através da linha de comando do Linux...
Posted by
Daniel Kühl Lima in
FreeBSD, Linux
Mar 31st, 2010 |
1 Comment
Estou colocando aqui um exemplo que pode ser adaptado para sua necessidade.
No caso, essa linha adiciona o caracter “:” (sem as aspas) a cada 2 caracteres.
Utilizei para formatar uma lista enorme de MAC address que me foi passado no formato 00106037614C
O arquivo texto original continha várias linhas:
Arquivo: mac1.txt
001060376173
001060376124
00106037614C
001060374840
001060376125
00106037612A
001060376176
001060375D9A
001060375D97
E executando sed, na linha abaixo
sed -e :a -e 's/\(.*[0-9,A-Z]\)\([0-9,A-Z]\{2\}\)/\1:\2/;ta' mac1.txt > mac2.txt
O resultado...
Posted by
Daniel Kühl Lima in
Bash
Mar 8th, 2010 |
No Comments
É possível utilizar várias ferramentas para essa finalidade, como por exemplo o sed e o awk. O comando expand coverte todos os TABs para espaços.
Ele preserva os caracteres de backspace na saída; eles que fazem com os espaços sejam reduzidos na contagem para o cálculo dos TABs.
expand arquivo.log > output.log
expand dados.txt > output.txt
expand -t 2 dados.txt > output.txt
A opção -t pode ser usada para gerar uma lista separada por vírgula (arquivo CSV).
Caso você queira fazer o contrário, ou seja, converter espaços para TABs, use o comando unexpand.
Veja as man...
Posted by
Daniel Kühl Lima in
Linux
Nov 5th, 2009 |
No Comments
Cenário
Essa situação é interessante quando foi compilado um novo kernel e se está com acesso remoto ao servidor, ou seja, mandar um reboot remotamente com um novo kernel, muita coisa pode acontecer, e o mínimo é perder a conexão.
Para essas situações tem como fazer com que o GRUB utilize um kernel em específico apenas uma vez, e em caso de Kernel Panic o servidor será resetado e o kernel original será utilizado, voltando assim o acesso remoto para serem feitas as alterações necessárias.
Preparando o ambiente
É importante também definir os seguinte...
Posted by
Daniel Kühl Lima in
FreeBSD
Oct 21st, 2009 |
No Comments
Muitas vezes baixamos uma imagem de CD mas não queremos ou não precisamos queimar um CD pra pegar o necessário.
No linux, para montar uma imagem de CD o comando
mount -o loop /caminho/imagem.iso /ponto/de/montagem
é o suficiente, mas e no FreeBSD? Como chegar ao mesmo resultado?
A sequencia de comandos a serem digitados é esta:
mdconfig -a -t vnode -f /caminho/para/imagem.iso -u 1
mount -t cd9660 /dev/md1...
Posted by
Daniel Kühl Lima in
FreeBSD, Linux
Oct 17th, 2009 |
2 Comments
Para quem trabalha com vários servidores Linux / FreeBSD atualizar todos os servidores para o horário e verão é uma tarefa cansativa e chata.
Vou disponibilizar aqui um script para ser utilizado nessa tarefa, ou seja, um script que atualizará todos os servidores listados em um arquivo e os deixará prontos para a virada do horário.
O funcionamento do script é bem simples, é composto por 3 arquivos
daylight.sh
daylight.exp
servidores.txt
Vou explicar rapidamente o que é cada um desses arquivos e o que fazem.
Pré-requisitos
expect
openssh
Posts...
Posted by
Daniel Kühl Lima in
Bash, FreeBSD, Linux
Oct 13th, 2009 |
No Comments
Se você quer saber quais arquivos no seu servidor são apenas links simbólicos, aqui está como fazer:
find / -type l
No exemplo mostrado ele vai procurar por todo o sistema, caso queira restringir a apenas um diretório em específico, substitua o ‘/’ por ‘/diretorio’, sem os apóstrofos.
Blogged with the Flock...
Posted by
Daniel Kühl Lima in
Email
Oct 10th, 2009 |
No Comments
O comando
sendmail -q
forçara o envio das mensagens que estejam na fila a serem enviadas.
Já o comando
mailq
mostrará o que está preso na...
Posted by
Daniel Kühl Lima in
Banco de dados
Oct 10th, 2009 |
No Comments
O que é o Query Cache do MySQL?
O Query Cache armazena o texto de um comando SELECT junto com o resultado correspondente que foi enviado ao cliente. Se uma expressão idêntica for recebida depois, o servidor pegará essas informações do Query Cache ao invés de executá-a novamente. O Query Cache é compartilhado com outras sessões, então o resultado gerado por um cliente pode ser enviado a outro como resposta para a mesma query enviada por outro cliente.
O Query Cache é extremamente útil em um ambiente onde você possua tabelas que não se alteram com frequência e o servidor recebe muitas...
Posted by
Daniel Kühl Lima in
FreeBSD, Linux
Oct 10th, 2009 |
No Comments
.
Este post serve para qualquer distribuição Linux ou qualquer BSD, pois por padrão os arquivos de configuração do OpenSSH estão em /etc/ssh
Começe por editar o arquivo /etc/ssh/sshd_config e localizar a linha
#Port 22
Por padrão ela vem comentada porque o SSH ouve na porta 22 por padrão mesmo, descomente essa linha e altere para uma outra porta
Port 8222
É possível também adicionar várias linhas Port sendo que com isso, em cada porta especificada o OpenSSH irá responder nas portas listadas, mas tenha certeza que a porta especificada não esteja em uso no momento.
Bastando para isso...
Posted by
Daniel Kühl Lima in
FreeBSD, Linux
Oct 10th, 2009 |
No Comments
Para reiniciar o servidor Linux ou FreeBSD like, apenas execute o comando
reboot
ou
shutdown -r now
Como resultado você terá algo como:
Broadcast message from root (pts/0) (Wed Apr 20 01:23:45 2009):
The system is going down for...
Posted by
Daniel Kühl Lima in
Bash
Sep 28th, 2009 |
4 Comments
Aqui está um shell script simples para ser usado no CentOS / Red Hat / Debian etc. Esse script funciona em outros sistemas operacionais com poucas modificações.
Copie o código do script abaixo e cole num arquivo, podendo ser chamado /usr/local/bin/httpdcheck.
Após isso, edite o crontab para rodar a cada 5 minutos
*/5 * * * * /usr/local/bin/httpdcheck >/dev/null 2>&1
Abaixo está o script, após editá-lo no arquivo, não esqueça de dar permissão de execução para o arquivo com chmod 755 /usr/local/bin/httpdcheck
#!/bin/bash
# Comente se está usando Debian
RESTART="/sbin/service...