scripting

Instalar sun-java6-jdk en Debian Lenny

Debido a que este paquete no es “tan” libre no lo podemos encontrar en los repositorios tan facilmente aqui les dejo como poder instalarlo en Debian Lenny.

Editamos:

<br />
/etc/apt/sources.list<br />

para agregar los siguientes repositorios

<br />
deb-src http://security.debian.org/ lenny/updates main non-free<br />
deb http://security.debian.org/ lenny/updates main non-free<br />
deb-src http://mirrors.kernel.org/debian/ lenny main non-free<br />
deb http://mirrors.kernel.org/debian/ lenny main non-free<br />

luego de eso tenemos que hacer un update con apt para poder acceder a la informacion de instalacion

<br />
apt-get update<br />

ahora si listo vamos a instalar

<br />
apt-get install sun-java6-jdk<br />

ahora un paso final para que java este disponible para utilizarlo por todo el sistema

<br />
update-java-alternatives -s java-6-sun<br />
echo &#8216;JAVA_HOME=&quot;/usr/lib/jvm/java-6-sun&quot;&#8217; &gt;&gt; /etc/environment<br />

Repair tables Mysql – todo en uno solo

Para variar en mi experiencia como sysadmin, tengo que lidiar con problemas que a veces son faciles de resolver pero otras veces son tendiosos, como fue el caso de una base de datos de mysql que fue corrupta por falta de espacio en disco, esto tiene una facil solucion pero algo tedioso cuando mas de una 1 tabla ha sido marcada como crashed,

aqui les dejo un script bastante simple para evitarnos tener que escribir tanto :D

<br />
select concat('repair table ', table_name, ';') from information_schema.tables where table_schema='nombre_de_la_db';<br />

Al terminar esta linea, podran ver en el output todos los nombres de las tablas precedidos por el comando repair table y finalizados por el “;”
Asi que unicamente es de copiar la salida y eliminar los caracteres de pipe “|” para luego pegar en el CLI de mysql y esperar un poco para que todo quede como nuevo :P

ntop en centos/RHEL

Primero vamos a descargar la ultima version de Ntop (http://freshmeat.net/projects/ntop/)

ahora a poner todo el software necesario y pedido como pre-requisito:

<br />
yum install libpcap-devel libpcap glib gcc make libtool gdbm-devel<br />
zlib-devel libpcap-devel GeoIP GeoIP-devel php-pear python python-devel<br />
php-devel<br />

Antes de continuar necesitamos instalar el RRDTool en Centos/RHEL

<br />
yum install cairo-devel libxml2-devel pango-devel pango<br />
libpng-devel freetype freetype-devel libart_lgpl-devel<br />

<br />
cd /opt/<br />
wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.4.tar.gz<br />
cd rrdtool-1.4.4<br />
tar -zxvf rrdtool-1.4.4.tar.gz<br />
export PKG_CONFIG_PATH=/usr/lib/pkgconfig/<br />
./configure<br />

ahora vamos a compilarlo

<br />
make<br />
make install<br />
cd /usr/local/<br />
ln -s rrdtool-1.4.4 rrdtool/<br />
cd rrdtool<br />
ls -l<br />

Ahora si vamos a el Ntop

<br />
cd ntop<br />
./autogen.sh<br />
make<br />

si por alguna razon tenemos algun problema como este:
WARNING: You will need re2c 0.9.11 or later if you want to regenerate PHP parsers.,
vamos a instalar :

<br />
wget ftp://195.220.108.108/linux/dag/redhat/el4/en/i386/dag/RPMS/re2c-0.13.5-1.el4.rf.i386.rpm<br />
rpm -iah re2c-0.13.5-1.el4.rf.i386.rpm<br />

Repositorio bastante util

ahora los utlimos pasos:

<br />
make install<br />
make install-data-as<br />

<br />
useradd -M -s /sbin/nologin -r ntop<br />
chown ntop:root /usr/local/var/ntop/<br />
chown ntop:ntop /usr/local/share/ntop/<br />

ahora a colocar el password administrativo:

 ntop -A

iniciamos el ntop

<br />
/usr/local/bin/ntop -d -L -u ntop -P /usr/local/var/ntop &#8211;skip-version-check &#8211;use-syslog=daemon<br />

en donde :
* -i “eth0,eth1″ : en donde especificamos cual o cuales interfaces estaran monitoreando
* -d : correr como daemon el ntop
* -L : enviar todos los mensajes a (/var/log/messages) en lugar de la pantalla
* -u ntop : iniciar ntop como usuario ntop
* -P /usr/local/var/ntop : especificar que la base de datos guarde su DB en este lugar especifico.
* –skip-version-check : des habilitar el chequeo periodico de version que hace el ntop.
* –use-syslog=daemon : Use syslog daemon.

ahora si accedamos

http://localhost:3000/ 

nota: algun problema con el dot que grafica de trafico he aqui las instrucciones

Convertir archivos gsm a archivos wav

Pequeño script para convertir archivos de sonido en formato gsm a formato wav :

<br />
#!/bin/bash<br />
function printUse() {<br />
echo &quot;Uso: `basename $0` &lt;nombres-archivos-gsm&gt;&quot;}</p>
<p>if [ $# -lt 1 ]; then<br />
echo &quot;Número de parametros incorrecto.&quot;<br />
printUse<br />
exit<br />
fi</p>
<p>for file in $@; do<br />
echo &quot;Convirtiendo archivo &#8216;$file&#8217; a &#8216;$file.wav&#8217;…&quot;<br />
sox $file -r 8000 -c 1 -w -s $file.wav<br />
done<br />

Para hacer se utiliza la aplicación sox que sirve para convertir archivos de sonido en Linux. El significado de cada parámetro (y todos los demás) se puede ver en la documentación, aunque a mi con éstos me llegan.

MySQL show status – Matar procesos colgados

Primero es ver cuantas conexiones a nuestro Mysql tenemos

<br />
mysql&gt; show status like 'Conn%';<br />
+---------------+-------+<br />
| Variable_name | Value |<br />
+---------------+-------+<br />
| Connections   | 8     |<br />
+---------------+-------+<br />
1 row in set (0.00 sec)</p>
<p>mysql&gt; show status like '%onn%';<br />
+--------------------------+-------+<br />
| Variable_name            | Value |<br />
+--------------------------+-------+<br />
| Aborted_connects         | 0     |<br />
| Connections              | 8     |<br />
| Max_used_connections     | 4     |<br />
| Ssl_client_connects      | 0     |<br />
| Ssl_connect_renegotiates | 0     |<br />
| Ssl_finished_connects    | 0     |<br />
| Threads_connected        | 4     |<br />
+--------------------------+-------+<br />
7 rows in set (0.00 sec)<br />

Vamos a ver los procesos en ese momento

<br />
mysql&gt; show processlist;<br />
+----+------+-----------------+--------+---------+------+-------+------------------+<br />
| Id | User | Host            | db     | Command | Time | State | Info             |<br />
+----+------+-----------------+--------+---------+------+-------+------------------+<br />
|  3 | root | localhost       | webapp | Query   |    0 | NULL  | show processlist |<br />
|  5 | root | localhost:61704 | webapp | Query   |  208 |       | NULL             |<br />
|  6 | root | localhost:61705 | webapp | Sleep   |  208 |       | NULL             |<br />
|  7 | root | localhost:61706 | webapp | Sleep   |  208 |       | NULL             |<br />
+----+------+-----------------+--------+---------+------+-------+------------------+<br />
4 rows in set (0.00 sec<br />

Ahora vamos a suponer que ya no necesitamos el proceso numero 5 (Id) o que este esta colgado.

<br />
Kill ID<br />

o si se encontrara ejecutandose y necesitamos terminando de todos modos

<br />
kill query ID<br />

Android, LG GW620 con froyo (Tigo)

UPDATE: Como tener Gingerbread en GW620

Bueno ahora si lo confirmo por mi propia experiencia de 8 dias y contando… el LG GW620 de Tigo (Guatemala) funciona de maravilla con froyo

Esta vez no hare ningun how to ni guia, porque nuestro estimado amigo @romerogt en su blog nos tiene una nota super completa sobre el asunto
Link | Tips para flashear GW620 de Tigo hacia openetna

UPDATE: repositorio de todo lo que necesitas para poner froyo

Recuperar clave de root en Mysql (5 pasos)

Vamos a recuperar nuestra clave de root en 5 simples pasos

<br />
1) #/etc/init.d/mysql stop</p>
<p>2) # mysqld_safe --skip-grant-tables &amp;</p>
<p>3) # mysql -u root<br />

Ahora vamos a CLI de Mysql

<br />
4)<br />
mysql&gt; use mysql;</p>
<p>mysql&gt; update user set password=PASSWORD(“password nuevo”) where user=’root’;</p>
<p>mysql&gt; flush privileges;</p>
<p>mysql&gt; quit<br />

Paso final

<br />
5) # /etc/init.d/mysql stop<br />

Ahora a probar los cambios realizados:

<br />
# /etc/init.d/mysql start</p>
<p># mysql -u root -p<br />

Optimizando Mysql

un super tip rapido y N de util!

optimizando de tablas

<br />
OPTIMIZE TABLE foo<br />

Optimizando la DB

<br />
mysqlcheck -op database_name<br />

por si necesitaramos usuario y password :

<br />
mysqlcheck -op -u usuario -p database_name<br />

Ahora todas las bases de datos en un solo proceso

<br />
mysqlcheck -op -u user_name –all-databases<br />

1 2 3  Scroll to top