quinta-feira, 20 de janeiro de 2011

zipar e remover diretorios por data

for dir in `ls | grep "2010-11-" | grep -v "\.gz"` ; do nice -n 19 tar -Ppzcvf $dir.tar.gz $dir ; sleep 1 ; echo "rm -rfv $dir" ; nice -n 19 rm -rfv $dir ; done

baixar / subir informix

# Para baixar o informix:

cdr stop

onmode -yulck

----------------------------------------------------

# Para subir informix:

oninit -v

Aparecerá:

verbose output compete mode 5

----------------------------------------------------

# Para confirmar se subiu corretamente, digite:

onstat -

status informix

online

----------------------------------------------------

Para obter informações do informix:

onstat -g osi

Apresentando a versão do linux

Percebemos que alguns casos, não sabemos exatamente qual a versão do Linux que está instalada, pois por alguma motivo o arquivo /etc/issue ou mesmo o /etc/redhat-release foi alterado manualmente.

Com o comando abaixo, podemos verificar várias informações sobre a versão que está instalada, confirmando suspeitas ou mesmo gerando uma certeza de versão.

lsb_release –a

Informaçoes:

LSB Version: :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Release: 5.5
Codename: Tikanga

Links Simbólicos e Físicos

Segue uma dica, sobre como verificar se tem algum link simbólico ou hard-link, apontando para o arquivo em questão.

Listagem 11. Localizando links físicos para o mesmo arquivo

ian@attic4:~$ find lpi104-6 -samefile lpi104-6/file1
lpi104-6/subdir/file3sub
lpi104-6/file3
lpi104-6/file1
ian@attic4:~$ ls -i lpi104-6/file1
1680103 lpi104-6/file1
ian@attic4:~$ find lpi104-6 -inum 1680103
lpi104-6/subdir/file3sub
lpi104-6/file3
lpi104-6/file1
Para verificar quais arquivos são vinculados simbolicamente a um determinado arquivo, você poderá usar o comando find e a opção -lname com um nome de arquivo, como ilustrado na Listagem 12. Os links podem usar um caminho relativo ou absoluto, portanto, é preciso usar um asterisco à esquerda no nome para localizar todas as correspondências.

Listagem 12. Localizando arquivos simbólicos para um arquivo ou diretório
ian@attic4:~$ find lpi104-6 research/lpi104-6 -lname "*file1"
lpi104-6/file6
lpi104-6/file5
lpi104-6/file4
research/lpi104-6/file4

Calculando quantidade de memória necessária MySQL - Linux

Objetivo Calcular quantidade de memória necessária para o MySQL no Linux
Pré requisitos Acesso root a maquina.


Segue abaixo o link para calcular o número de memória necessária para utilização do MySQL . O cálculo é baseado nas seguintes informações:

mem total mysql = key_buffer + max_connections * (join_buffer + record_buffer + sort_buffer + thread_stack + tmp_table_size)

Note que o tamanho total de memória depende diretamente do multiplicador de conexões abertas (max_connections)

LINK : http://www.omh.cc/mycnf/

Outras informações:
my.cnf de exemplo, copie o cole-o no link acima:

[client]
port = 3306

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
port = 3306
basedir = /usr
tmpdir = /tmp
language = /usr/share/mysql/english
skip-external-locking
skip-name-resolve
key_buffer = 25M
max_allowed_packet = 50M
thread_stack = 128K
thread_cache_size = 8
max_connections = 120
query_cache_limit = 1M
query_cache_size = 20M

[mysqldump]
quick
quote-names
max_allowed_packet = 50M

# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

O que fazer quando receber a mensagem: "/bin/rm: Argument_list_too_long" ?

Para quem está tentando limpar um diretório e recebe este erro:

# rm -f *
-bash: /bin/rm: Argument list too long

Há tres modos de resolver isto, um é usando o for na linha de comando :

for i in *; do rm -f $i; done


Ou usando o famoso canivete suiço do mundo Unix, o find :

find . -name '*' -print0 | xargs -0 rm


Outra solução, que achei mais inteligente é feita utilizando o xargs:

$ ls | xargs -n10 -i rm {}

Instalação e configuração de um servidor de NTP (stratum 1)

Objetivo Instalar e configurar um servidor de NTP (stratum 1)
Pré requisitos Acesso root a maquina.

Há vários serviços de NTP espalhados pelo mundo, e que são sincronizados através de uma reação química, e para cada estimulo que esta reação sofre, é decrementado 1 milésimo de segundo, para a primeira máquina que recebe estes dados é dado o nome de STRATUM 1, para a segunda máquina STRATUM 2, e assim por diante.


A Drogaraia, quer que uma máquina deles não sincronize com nenhum STRATUM, eles mesmos gostariam de ter este controle.

Pois bem, segue a forma de se criar um servidor de NTP na rede local (STRATUM 1).

1. Abra o arquivo /etc/ntp.conf e inclua as linhas:

server 127.127.1.1
fudge 127.127.1.1 stratum 10

2. Abra o arquivo /etc/rc.config.d/netdaemons, e altere as linhas:

export NTPDATE_SERVER=
export XNTPD=

Para:

export NTPDATE_SERVER=127.127.1.1
export XNTPD=1

3. Inicie o serviço de NTP

# /sbin/init.d/xntpd start

4. Visualizando as informações do NTP

# ntpq -p

5. Sincronizando o host1, com o servidor de NTP

# ntpdate