miércoles, 3 de agosto de 2011

Me mudo....

0 comentarios
Bueno sólo quería anunciar que apartir de ahora estaré publicando en:


bueno espero tener tiempo de estar publicando :p.....

Saludos!
Read full story

viernes, 25 de febrero de 2011

Arranque automático de servicios al iniciar el sistema

0 comentarios
Cuando Linux arranca, puede hacerlo de 7 modos distintos, numerados del 0 al 6.

A estos modos se les denomina niveles de ejecución y son los siguientes:

Nivel 0 (Halt): Detiene el sistema
Nivel 1 (Monousuario): Permite entrar en el sistema como root sin contraseña y en modo texto.
Nivel 2 (Multiusuario sin red): Modo multiusuario en modo texto y sin red.
Nivel 3 (Multiusuario con red): Modo multiusuario en modo texto y con red. Así arrancan los servidores.
Nivel 4 (Pruebas): No utilizado
Nivel 5 (Multiusuario con red y modo gráfico): Multiusuario en entorno gráfico. Así arrancan los PCs de usuario.
Nivel 6 (Reboot): Reinicia el sistema.
Normalmente Linux arranca en modo 5, aunque los servidores a veces se les configura para arrancar en modo 3.

El modo de arranque del sistema se configura en el archivo /etc/sysinit.

En función del nivel de ejecución, existe la posibilidad de configurar qué servicios deben iniciarse de forma automática, para ello es necesario crear unos enlaces simbólicos en las carpetas /etc/rcN.d (donde N es un número de 0 a 6 que indica el nivel de ejecución de linux) que apunten al script de inicio del servicio que se encuentra en /etc/init.d/. Dichos enlaces deberán tener un nombre un poco especial ya que deberán comenzar con la letra 'S' de Start (arrancar) seguida de un número de dos cifras (para establecer el orden de arranque de los servicios) y del nombre del servicio, ejemplo: S20samba ó S30nfs. Si lo que nos interesa es que el servicio no arranque, la primera letra deberá ser una K de Kill (detener) en lugar de una S, ejemplo: K20samba ó K30nfs. Estos enlaces se pueden crear con el comando update-rc.d.

Ejemplo, si deseamos que el servicio proftpd se arranque cuando el servidor inicia en los niveles 3, 4 y 5 y no arranque cuando inicia en los niveles 1, 2 y 6, ejecutaremos el siguiente comando (Ojo, no olvidar el punto del final (.) al escribir el comando): // Crear enlaces para inicio automático del servicio

# update-rc.d proftpd start 20 2 3 4 5 . stop 20 0 1 6 .
De esta forma se crearán enlaces simbólicos de arranque con nombre S20proftpd en las carpetas /etc/rc2.d, /etc/rc3.d, /etc/rc4.d y /etc/rc5.d y de parada con nombre K20proftpd en las carpetas /etc/rc0.d, /etc/rc1.d, y /etc/rc6.d. El número 20 indica la prioridad. Sirve para arrancar o parar antes unos servicios que otros ya que los scripts se procesan por orden alfabético. Se puede utilizar cualquier número entre 10 y 99.

Si por alguna razón el comando update-rc.d no crea los enlaces porque ya están creados, existe la posibilidad de eliminarlos con la opción '-f' (forzado) y acto seguido volver a crearlos: // Eliminación forzosa de enlaces para inicio automático del servicio

# update-rc.d -f proftpd remove
Volver a crear enlaces para inicio automático del servicio

# update-rc.d proftpd start 20 2 3 4 5 . stop 20 0 1 6 .
Fuente: http://www.ite.educacion.es/formacion/materiales/85/cd/REDES_LINUX/varios/CosasVarias.html#Arranque%20autom%C3%A1tico%20de%20servicios%20al%20iniciar%20el%20sistema.

Nota: yo lo hice con proftpd, sólo me funcionó cuando en el start puse 2 3 4 5 y en stop 0 1 6
Read full story

martes, 29 de junio de 2010

Compiz Fusion + Emerald en Debian Squeeze

6 comentarios
Después de instalar el controlador gráfico de mi portátil, quería meterle el compiz-fusion y el emerald, sólo para que se vea bonito el entorno...

Antes que nada, les pongo los repositorios que estoy usando en el Squeeze:
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main

deb http://www.debian-multimedia.org squeeze main
deb-src http://www.debian-multimedia.org squeeze main

deb http://http.us.debian.org/debian squeeze main non-free contrib
deb-src http://http.us.debian.org/debian squeeze main non-free contrib

deb http://mirrors.kernel.org/debian/ squeeze main contrib non-free
deb-src http://mirrors.kernel.org/debian/ squeeze main contrib non-free
Bien ahora.... ¿Cómo instalé compiz?.... fácil, en una terminal como root:
# apt-get install compiz-gnome compizconfig-settings-manager fusion-icon
Un reboot y listo... ya tengo el compiz, ahora me falta el decorador de ventanas... emerald... que no se encuentra en los repositorios!.... así que me fui por las fuentes, antes de bajarme las fuentes, hay que ver que versión del compiz estamos usando, para eso en una terminal:
$ compiz --version
En mi caso es la 0.8.4 así que me descargué la versión de emerald contenida en en la siguiente dirección:
http://releases.compiz-fusion.org/
Me descarga un archivo llamado emerald-0.8.4.tar.gz el cual extraigo y me crea un directorio el cual contiene las fuentes... en una terminal ubicados en el directorio donde se encuentra el .tar.gz del emerald:
$ tar xzf emerald-0.8.4.tar.gz
$ cd emerald-0.8.4/
Bien ya tengo las fuentes, y ahora me preparo a configurarlas - deben tener instalado build-essential - desde una terminal lo siguiente:
$ ./configure --prefix=/usr/local/
Me arroja una lista de paquetes que no tengo instalados - no me acuerdo de cuales eran xD pero ahi les pone el nombre - por lo que me los instalo y repito el comando anterior... termina el proceso satisfactoriamente...

A continuación compilo las fuentes con el siguiente comando:
$ make clean
$ make
Y no termina, me arroja unos errores que tienen que ver con el GTK... aquí los errores:
main.o: In function `hide_tooltip':
/home/akino/Downloads/prueba/emerald-0.8.4/src/main.c:3760: undefined reference to `GTK_WIDGET_VISIBLE'
../libengine/.libs/libemeraldengine.so: undefined reference to `GTK_OBJECT_TYPE_NAME'
collect2: ld returned 1 exit status
make[2]: *** [emerald] Error 1
make[2]: se sale del directorio `/home/akino/Downloads/prueba/emerald-0.8.4/src'
make[1]: *** [all-recursive] Error 1
make[1]: se sale del directorio `/home/akino/Downloads/prueba/emerald-0.8.4'
make: *** [all] Error 2
Y ahora pongo las soluciones las encontré en la web de bugs de gentoo y las pongo aquí de todas maneras para que sepan que modificar...

Primero abrimos el archivo main.c ubicado en el directorio src, así:
$ nano src/main.c
nos vamos hasta la linea 3760 que dice así:
if (GTK_WIDGET_VISIBLE(tip_window))
y la modificamos para que quede de la siguiente forma:
if (gtk_widget_get_visible(tip_window))
Guardamos los cambios con Ctrl+O y cerramos el archivo con Ctrl+X.... ahora abrimos el siguiente archivo:
$ nano libengine/themer.c
y nos vamos a la linea 464 que dice así:
if(!strcmp(GTK_OBJECT_TYPE_NAME(item->widget),"GtkSpinButton")) {
la modificamos para que quede de la siguiente forma:
if(!strcmp(G_OBJECT_TYPE_NAME(item->widget),"GtkSpinButton")) {
en el mismo archivo nos vamos a la linea 650 que dice:
if(!strcmp(GTK_OBJECT_TYPE_NAME(item->widget),"GtkSpinButton")) {
la modificamos para que quede así:
if(!strcmp(G_OBJECT_TYPE_NAME(item->widget),"GtkSpinButton")) {
ahora sí, guardamos y cerramos el archivo... y volvemos a compilar:
$ make clean
$ make
y listo ahora sí, debe compilar todo bien, pasamos a instalar las fuentes, como root:
# make install
y ahora intento abrir emerald-theme-manager desde la terminal, como user normal:
$ emerald-theme-manager
y me arroja el siguiente error:

error while loading shared libraries: libemeraldengine.so.0: cannot open shared object file: No such file or directory

para solucionarlo, en una terminal como root:
# ldconfig
y reiniciamos el equipo, y ahora ya debemos tener todo bien....

Ya sólo les queda agregar el fusion icon al inicio y ya... eso no creo que sea complicado así que no lo explico...

Eso es todo, ojalá le sirva a alguien... Saludos!!!

PD: Se vale comentar!!! jajaja
Read full story

lunes, 28 de junio de 2010

ACER Aspire 4540-5531 y Debian

2 comentarios
Que tal a todos.... me acabo de comprar una laptop, y fue justo la del título de esta entrada, les comento que le intenté meter Debian Lenny (Stable) a esta portátil, y que creen... al finalizar la instalación no tenía Wireless, Ethernet, Sonido y Graficos...

Se me hizo fácil bajar el kernel 2.6.34 y compilarlo... finalizando el proceso, y reiniciando el equipo, ya tengo wifi, sonido, micro.... pero me quedé sin webcam, seguía sin los gráficos (estab con el vesa de 800x600)....

la tarjeta gráfica que trae es una ATI Radeon HD4200 y según lspci:

01:05.0 VGA compatible controller: ATI Technologies Inc M880G [Mobility Radeon HD 4200]
me fui a la web de ATI y me descargué el controlador Catalyst y lo instalé en modo gráfico, reinicié y veo que la resolución se arregló, pero se notaba una gran lentitud en las ventanas, y decidí crear el paquete para el debian lenny, el controlador ofrece la opción --buildpkg para crear paquetes para ciertas distros, y así empecé a tratar de crear el paquete, fue muy largo el cuento y no logré nada xD.... luego me volví a instalar el controlador en modo gráfio y decidí mirar el log de la instalación y :o sorpresa, no se pudo compilar el modulo para el kernel....

Lo que hice fue pasarme a la rama testing, actualmente squeeze con kernel 2.6.32-5-686, y desde la instalación ya me detectaba el ethernet y el wireless, terminó la instalación del sistema, reinicia el equipo y pfff la resolución de la pantalla estaba bien!... pero con ciertos fallos, se notaban unas como lineas que parpadeaban muy rapido en ciertas zonas, y decidí instalarme el controlador Catalyst de la ATI, pero primer actualicé todo el sistema... y procedí a instalar build-essential y los headers, luego a instalar el controlador en modo gráfico, miro el log y todo ok!!!!!!.... a continuacion en una terminal pongo:
# aticonfig --initial
configura el xorg y reinicio el equipo, y veo que el pequeño defecto se soluciona...

Y esa ha sido mi travesía con este equipo y Debian... espero a alguien le sirva estas notas...

Saludos!
Read full story

miércoles, 16 de junio de 2010

Conectar con un servidor MySQL de otro servidor

0 comentarios
Que tal a todos.. una ves más haciendola de fantasma por este olvidado blog... :P

Bueno en esta ocación, sólo vengo con un pequeño dato, pero que me salvó la vida o casi xD.

Creo que el título del post está algo mal pero ya ni modos... no quiero pensar ahorita...

La Historia
Erase una ves un jovén que quería hacer la replicación de bases de datos en MySQL 5.0 en Debian Lenny... el jóven leyó sobre la replicación, trató de asimilar todo lo que pudo, busco tutoriales de configuraciones, y siguió leyendo...

Una ves bien documentado, se decidió a hacer la arquitectura Master/Slave... y siguió el tutorial al pie de la letra, realizando todos los cambios pertinentes claro está. Primero configuró el server que la haría de Master y todo le fue bien. Pasó a configurar el Slave y todo bien... hasta ejecutar la orden SHOW SLAVE STATUS..... donde veía con asombro un mensaje que rezaba CONNECTING TO MASTER SERVER... y de allí no pasaba nada más....

Y pensó... mmmm joder algo hice mal.... mejor intento con la arquitectura Master/Master.... y así lo hizo, siguió el tutorial, terminó de configurar ambos servers.... y la historia se repitió....

Asustado de que no conectaban se decidió a investigar..... pasaban los minutos y no encontraba nada... hasta que en un refundido rincón de la red, le llamó la atención un comentario que decía más o menos así: "Debes de tener el archivo my.cnf con la linea bind-adress = 127.0.0.1 para que mysql escuche en local".
La Solución

Después de leer ese comentario lo que se me ocurrió fue simplemente comentar esa linea.... y listó! mis servers conectaron uno con otro.... replicandose!

así que para hacerlo.... en una terminal como root:
#nano /etc/mysql/my.cnf
Ahora nos ubicamos en la linea que dice:
bind-adress = 127.0.0.1
Y le agregamos un # de forma que queda así:
# bind-adress = 127.0.0.1
guardamos los cambios con Ctrl+O y cerramos el archivo con Ctrl+X y reiniciamos el daemon del mysql:
# /etc/init.d/mysql restart
Y eso es todo... ahora puedo acceder a ese servidor de bases de datos desde otra pc en mi LAN o desde internet si quiero!...

jajajaja me heché todo un verbo para tan pequeña cosa.... pero es que ando aburrido ¬¬ ya no sabía que hacer... bueno saludos a todos y que estén bien XD.... algo más, esto era sólo para que pudiera conectarse, teniendo todo ya configurado, cuentas de usuario de mysql, ip's y todo lo que implique...

Acepto comments!!!!! :P
Read full story

lunes, 15 de marzo de 2010

Reconfigurando mi DWM

6 comentarios
Hace tiempo que vego utilizando DWM como mi Gestor de Ventanas predeterminado... pero nunca me había dado el tiempo para poder "adornarlo" y ponerle cosillas para que se viera un poco más "bonito".

Pero decidí hacerlo y aquí pongo lo que conseguí...

Requerimientos: Xlib header.

Paso 1. Conseguir las fuentes.

Me fui a la página del proyecto y me descargué la versión actual de dwm (dwm-5.7.2) y también del dmenu (dmenu-4.0)...

Web Official de DWM

Paso 2. Extraer las fuentes.

Descomprimir los ficheros .tar.gz, me dirijo desde la terminal a la ruta donde descargué los ficheros y hago lo siguiente:
$ tar xzf dwm-5.7.2.tar.gz
$ tar xzf dmenu-4.0.tar.gz
Paso 3. Configuración.

Primero accedemos al directorio que se creó al descomprimir el dwm-5.7.2.tar.gz:
$ cd dwm-5.7.2/
A continuación abro el archivo config.def.h con un editor de texto:
$nano config.def.h
Aquí lo único que modifico es la configuración de colores para la barrita de que aparece en la parte superior y los bordes de las ventanas, les pongo los colores a un lado por si quieren hacer sus propias combinaciones:
/* appearance */
static const char font[] = "-*-*-medium-*-*-*-14-*-*-*-*-*-*-*";
static const char normbordercolor[] = "#ff0000"; //rojo
static const char normbgcolor[] = "#000000"; //negro
static const char normfgcolor[] = "#ffffff"; //blanco
static const char selbordercolor[] = "#ff0000"; //rojo
static const char selbgcolor[] = "#ff0000"; //rojo
static const char selfgcolor[] = "#ffffff"; //blanco
Guardamos cambios y cerramos (en nano es Ctrl+o para guardar y Ctrl+x para cerrar).

A mí en lo particular no me gusta ponerle nombres a las areas de trabajo o "tags" como le quieran llamar... así que esto no lo pondré =P.

Paso 4. Instalación.

Bien ahora desde el directorio dwm-5.7.2 hacemos lo siguiente como root:
# make clean install
Por defecto dwm se instala en /usr/local y ya debe de estarlo después del paso anterior... Ahora salgo del directorio dwm-5.7.2 y me dirijo al directorio dmenu-4.0:
# cd ..
# cd dmenu-4.0/
Bien ahora instalamos el dmenu, de la misma forma que dwm:
# make clean install
Listo instalado!....

Paso 5. Preparación para arrancar DWM.

Yo uso GDM para iniciar el entorno gráfico... pero no se preocupen que pondré ambas formas...

Arrancar con GDM.

Primero vamos a crear un archivo .desktop para que el GDM nos lo reconozca como un tipo de sesión... como root:
# nano /usr/share/xsessions/dwm.desktop
Y le agregamos la siguiente información:
[Desktop Entry]
Encoding=UTF-8
Name=dwm
Comment=This session starts dwm a very minimalist Window Manager
Exec=/home/usuario/.dwminit
Type=Application
Guardan y cierran... ojo con la ruta del directorio personal. Ahora nos vamos a nuestro directorio personal como usuario normal:
$ cd ~
Si se fijan en la información que agregamos al dwm.desktop en la parte Exec hacemos referencia a un fichero llamado .dwminit pues bien aquí es donde pondremos unas cosillas interesantes, y es donde radica lo vistoso de la configuración... como usuarios normales creamos el archivo así:
#nano .dwminit
y agregamos la siguiente iformación:
Esetroot -c /home/usuario/wallpaper.png
conky

wifi(){
STADO="X`/sbin/iwgetid`"
if test "$STADO" != "X" ; then
ESSID="`/sbin/iwgetid |awk -F ":" '{print $2}'|sed -e 's/"//g'`"
LINK="`awk '/wlan0:/ {print $3}' /proc/net/wireless |sed -e 's/\.//g'`"
echo "$ESSID Link: $LINK/70"
else
echo "Sin conexion"
fi
}

volumen(){
ESTADO="`amixer get PCM |awk '/Front\ Left:/ {print $7}'`"
if test "$ESTADO" != "[on]" ; then
echo " Mudo"
else
echo " `amixer get PCM |awk '/Front\ Left:/ {print $5}' | sed -e 's/\[//g'|sed -e 's/%\]//g'`%"
fi
}

cancion(){
if test "X`pgrep mocp`" != "X"; then
TITULO="`mocp -i|awk '/SongTitle/ {print $2}'`"
ARTISTA="`mocp -i|awk '/Artist/ {print $2}'`"
TRANSCURRIDO="`mocp -i|awk '/CurrentTime/ {print $2}'`"
TOTAL="`mocp -i|awk '/TotalTime/ {print $2}'`"
echo "$TITULO ($ARTISTA) $TRANSCURRIDO/$TOTAL"
else
if test "X`pgrep xmms2`" != "X"; then
ARTISTA="`xmms2 info|awk '/artist/ {print $4}'`"
TITULO="`xmms2 info|awk '/title/ {print $4}'`"
echo "$TITULO ($ARTISTA)"
else
echo "No Musica"
fi
fi
}

while true
do
xsetroot -name "[ Vol: `volumen` ] [ `cancion` ] [ `wifi` ] `date +"[ %a %d %b %Y ] [ %H:%M:%S ]"`"
sleep 1
done | /usr/local/bin/dwm
Bien ahora guardamos y cerramos el fichero y le damos permisos de ejecución:
$ chmod a+x .dwminit
Lean la sección que está al final y dice NOTA

Arrancar con startx

Tenemos que editar el fichero .xinitrc ubicado en el directorio personal... primero nos vamos al directorio personal...
$ cd ~
Ahora con un editor de texto abrimos el fichero...
$ nano .xinitrc

Simplemente agregamos la siguiente información:
Esetroot -c /home/akino/Imagenes/Debian_bloody.png
conky

wifi(){
STADO="X`/sbin/iwgetid`"
if test "$STADO" != "X" ; then
ESSID="`/sbin/iwgetid |awk -F ":" '{print $2}'|sed -e 's/"//g'`"
LINK="`awk '/wlan0:/ {print $3}' /proc/net/wireless |sed -e 's/\.//g'`"
echo "$ESSID Link: $LINK/70"
else
echo "Sin conexion"
fi
}

volumen(){
ESTADO="`amixer get PCM |awk '/Front\ Left:/ {print $7}'`"
if test "$ESTADO" != "[on]" ; then
echo " Mudo"
else
echo " `amixer get PCM |awk '/Front\ Left:/ {print $5}' | sed -e 's/\[//g'|sed -e 's/%\]//g'`%"
fi
}

cancion(){
if test "X`pgrep mocp`" != "X"; then
TITULO="`mocp -i|awk '/SongTitle/ {print $2}'`"
ARTISTA="`mocp -i|awk '/Artist/ {print $2}'`"
TRANSCURRIDO="`mocp -i|awk '/CurrentTime/ {print $2}'`"
TOTAL="`mocp -i|awk '/TotalTime/ {print $2}'`"
echo "$TITULO ($ARTISTA) $TRANSCURRIDO/$TOTAL"
else
if test "X`pgrep xmms2`" != "X"; then
ARTISTA="`xmms2 info|awk '/artist/ {print $4}'`"
TITULO="`xmms2 info|awk '/title/ {print $4}'`"
echo "$TITULO ($ARTISTA)"
else
echo "No Musica"
fi
fi
}

while true
do
xsetroot -name "[ Vol: `volumen` ] [ `cancion` ] [ `wifi` ] `date +"[ %a %d %b %Y ] [ %H:%M:%S ]"`"
sleep 1
done | /usr/local/bin/dwm
Guardamos y cerramos el fichero... ahora sólo queda leer la siguiente sección.

NOTA

Bien... Tengo que pararme a explicar esto un poco... empecemos desde arriba:
Esetroot -c /home/usuario/wallpaper.png
conky
Bien.. Esetroot es para poder poner el fondo de pantalla y para poder usarlo tenemos que instalar Eterm... y el conky es para monitorear el estado de nuestro sistema y hay que instalar conky... si no quieren usar las estas aplicaciones simplementen eliminen esas lineas...

Sigamos con la función wifi():
wifi(){
STADO="X`/sbin/iwgetid`"
if test "$STADO" != "X" ; then
ESSID="`/sbin/iwgetid |awk -F ":" '{print $2}'|sed -e 's/"//g'`"
LINK="`awk '/wlan0:/ {print $3}' /proc/net/wireless |sed -e 's/\.//g'`"
echo "$ESSID Link: $LINK/70"
else
echo "Sin conexion"
fi
}
Yo me conecto por medio de una tarjeta inalambrica que es la wlan0 en mi caso... con esa función obtengo el nombre el Essid al que estoy conectado y la potencia de la señal... si no la quieren usar simplemente eliminen toda la función..

Sigamos con la función volumen()...
volumen(){
ESTADO="`amixer get PCM |awk '/Front\ Left:/ {print $7}'`"
if test "$ESTADO" != "[on]" ; then
echo " Mudo"
else
echo " `amixer get PCM |awk '/Front\ Left:/ {print $5}' | sed -e 's/\[//g'|sed -e 's/%\]//g'`%"
fi
}
Aquí obtengo el volumen actual del PCM... si está en modo mute nos arroja Mudo.. si no quieren usar esta opción eliminen la función..

Ahora la función cancion()...
cancion(){
if test "X`pgrep mocp`" != "X"; then
TITULO="`mocp -i|awk '/SongTitle/ {print $2}'`"
ARTISTA="`mocp -i|awk '/Artist/ {print $2}'`"
TRANSCURRIDO="`mocp -i|awk '/CurrentTime/ {print $2}'`"
TOTAL="`mocp -i|awk '/TotalTime/ {print $2}'`"
echo "$TITULO ($ARTISTA) $TRANSCURRIDO/$TOTAL"
else
if test "X`pgrep xmms2`" != "X"; then
ARTISTA="`xmms2 info|awk '/artist/ {print $4}'`"
TITULO="`xmms2 info|awk '/title/ {print $4}'`"
echo "$TITULO ($ARTISTA)"
else
echo "No Musica"
fi
fi
}
Bien, yo uso dos reproductores... el xmms2 y el mocp (nombre real moc)... bien con el moc no hubo problemas... porque si puedo obtener el tiempo de duracion y tiempo transcurrido de las canciones así como el título y el artista... pero con el xmms2 no fue así, sólo pude obtener el titulo y el artista... cuando no estamos reproduciendo nada nos dice No Musica... cuando cualquiera de los dos reproductores se activa cambia el mensaje por los datos que antes les mencioné... bueno otro problema más con el xmms2... cuando lo cierro se queda corriendo un tipo demonio llamado xmms2d y por lo tanto no cambia el estado a No Musica... tengo que matar manualmente el proceso para que el estado cambie... con el moc todo bien... si no quieren usar estas funciones ya saben.. borrenlas.

La sección final:
while true
do
xsetroot -name "[ Vol: `volumen` ] [ `cancion` ] [ `wifi` ] `date +"[ %a %d %b %Y ] [ %H:%M:%S ]"`"
sleep 1
done | /usr/local/bin/dwm
Bien con este bucle estamos revisando constantemente las funciones... para ser exactos cada segundo (sleep 1).. y ejecuta al dwm... bien, si anteriormente eliminaron alguna funcion también tienen que eliminar las llamadas a dichas funciones en la línea xsetroot, xsetroot sirve en este caso para colocar texto en la barra del dwm, en la parte derecha superior... el modo básico del xsetroot donde sólo mostramos fecha y hora sería de la siguiente forma:
xsetroot -name "`date +"[ %a %d %b %Y ] [ %H:%M:%S ]"`"
Creo que eso es todo.

Bien espero que disfruten de este gestor de ventanas tanto como yo... aquí les dejo una captura pantalla de como quedó al final mi dwm...



Read full story

viernes, 25 de diciembre de 2009

Tucan Manager

2 comentarios

Cuantos de nosotros no descargamos de servidores como MegaUpload, RapidShare, 4Shared, MediaFire, Gigazise, entre otros... bien, pues la verdad creo que muchos xD, pero también es muy aburrido estar esperando.

Pues Bien, así como existe - si mal no recuerdo el nombre - USDownloader, que hace las descargas automáticas, existe Tucan Manager, que está bajo licencia GPL, está escrito en Python... funciona en Linux, Windows y Mac.

Lo he estado probando apenas un par de días, y funciona muy bien, una imagen de muestra:


Instalación en Debian y derivados, vía repositorios.

Muy fácil, con abrir una terminal y ponernos como super usuario (root), escribimos:
#apt-get install tucan
Listo, lo tenemos instalado, XD.

Instalación desde Fuentes.

Primero veamos las dependencias:
  • Python >= 2.5
  • PyGTK
  • Python Imaging Library
  • Tesseract OCR (with the english language pack)
  • SVG Rendering Library
Descargarse las fuentes de la web oficial:
http://www.tucaneando.com/
Abrir una terminal, situarse en el directorio donde se encuentra el .tar.gz y extraerlo y a continuación acceder al directorio extraido:
$ tar xzf tucan-.tar.gz
$ cd tucan-/
A continueción ponerse como super usuario (root) y ejecutar la orden:
# make install
Listo, quedó instalado.

Para ver más información acerca de las dependencias, dependiendo de la distribución que utilicen, lean el fichero README contenido en el .tar.gz así como también información sobre la instalación y desinstalación.
Read full story

martes, 22 de diciembre de 2009

Dosemu, ensambla con TASM en GNU/Linux

0 comentarios
Como todo estudiante - ¿apoco sí? - de Computacion, tenemos que ver algo de lenguaje ensamblador, pero que pasa si el profesor se basa sólo en interrupciones del DOS para su enseñanza??... no nos queda de otra que seguir siendo como somos (autodidactas) y aprender interrupciones de Linux, pero quizás haya otra opción, sí, emular el DOS en Linux, ¿Pecado? =P.

Un poco de Teoría.

El Turbo Assembler (TASM), un paquete ensamblador principalmente destinado a la plataforma del IBM PC y sus compatibles. Fue la oferta de Borland en el mercado de herramientas de programación en lenguaje ensamblador para la familia de los microprocesadores x86. Como se pudiera esperar, trabajaban bien con los compiladores de lenguaje de alto nivel de Borland para los PC, como Turbo C y Turbo Pascal. Junto con el resto de suite de lenguajes de programación Turbo, Turbo Assembler ya no es mantenido.

Bajo GNU/Linux es posible ejecutar copias de DOS bajo dosemu, una máquina virtual nativa de Linux para ejecutar programas en modo real.
Para poder instalar DOSEMU en Debian (y derivados), hay tres formas, pero sólo expondré dos aquí, la primera por repositorios y la segunda por las fuentes.

Vía apt-get

En una terminal como super usuario (root):

#apt-get install dosemu

Y listo ya quedó instalado =0.


Las Fuentes

Antes de poder compilar DOSEMU, tenemos que tener instalados BISON, FLEX , LIBSVGA-DEV y LIBSLANG2-DEV:
#apt-get install bison flex libsvga-dev libslang2-dev
Bueno pasemos a conseguir lo necesario para compilar e instalar el DOSEMU, la página del proyecto es:
http://dosemu.sourceforge.net/
Ahora para esta instalación usé la versión estable del momento (1.4.0), y para poder instalar necesitamos estos dos ficheros:
DOSEMU-1.4.0
DOSEMU-FreeDOS-bin-1.0
Ahora, abrimos una terminal, y nos posicionamos en el directorio que se encuentran los ficheros que acabamos de descargar, y descomprimimos DOSEMU:
$ tar xzf dosemu-1.4.0.tgz
Accedemos al directorio que se acaba de crear:
$ cd dosemu-1.4.0/
Configuramos:
$ ./configure --with-fdtarball=../dosemu-freedos-1.0-bin.tgz --with-target-cpu=i386
Una explicación de lo anterior:
--with-fdtarball=../dosemu-freedos-1.0-bin.tgz : Le indicamos la ruta al paquete del binario de Freedos que nos hemos bajado junto con el de DOSEMU, en mi procedimiento se encuentra un directorio arriba del directorio donde efectuo el ./configure.

--with-target-cpu=i386 : Complementamos las optimizaciones anteriormente aplicadas con este parámetro con el que definimos la opción '-mtune=' que es utilizada por defecto por el script configure y con un parámetro definido de -mtune=i586. Donde pone i386se indica el procesador respectivo de cada sistema seleccionándolo de la lista del apartado de arriba.
Pueden seleccionar su tipo de procesador de esta lista:
i386, i486, i586, i686, pentium-mmx, pentiumpro, pentium2, pentium3, pentium-m, pentium4, pentium4m, pentium4m, prescott, nocona, k6, k6-2, k6-3, athlon, athlon-tbird, athlon-4, athlon-xp, athlon-mp, k8, opteron, athlon64, athlon-fx, winchip-c6, winchip2, c3 y c3-2
Compilamos:
$ make
Ahora pasamos a instalarlo, nos loggeamos como super usuario y escribimos:
# make install
# cp etc/dosemu.xpm /usr/share/pixmaps
Muy bien ya quedó instalado, ahora para ejecutarlo escriben en una terminal:
$dosemu
Si les marca algún error como el siguiente:
LOWRAM mmap: Argumento inválido
Violación de segmento
Escriban esto en una terminal como root:
# echo 0 > /proc/sys/vm/mmap_min_addr
Y ya no debería de marcar error, sino ejecutarse normalmente.

Notas:
El directorio C: está preconfigurado por el dosemu, pero si nos vamos a D: nos situaremos en nuestro /home/usuario y podremos acceder a las carpetas contenidas allí.

Así que creen una carpeta para el TASM en /home/usuario

Read full story

lunes, 21 de diciembre de 2009

Instalar Flash Player a Iceweasel

0 comentarios
Por fin tengo Internet!!!... mucho tiempo sin darme una vuelta por mi blog, bueno paso al post..



Seguramente alguno ha tenido problemas al querer instalar el flash player (usuarios linux claro) desde el .tar.gz porque sólo trae un archivo y no es un instalador, como anteriormente sí que traía un instalador.

Bien ahora yo uso Iceweasel, que es mi preferido... y para instalar el flash hay algunos métodos para escoger...



Paquete DEB:


Si eres usuario Debian o derivados, este paquete te va, lo descargas desde aquí:
http://get.adobe.com/es/flashplayer/thankyou/?installer=Flash_Player_10_for_Linux_(.deb)
Una ves que se descarga, abres una terminal, te situas en el directorio que se haya descargado el .deb y te pones como super usuario (root) e instalas el paquete así:
dpkg -i install_flash_player_10_linux.deb


.tar.gz:


Esta forma es la que yo prefiero, simplemente nos descargamos el paquete desde esta dirección:
http://get.adobe.com/es/flashplayer/thankyou/?installer=Flash_Player_10_for_Linux_(.tar.gz)
Ya descargado el archivo .tar.gz abrimos una terminal y nos situamos en el directorio que se haya descargado, ahora descomprimimos el .tar.gz:
$tar xzf install_flash_player_10_linux.tar.gz
Bien, ahora veremos un archivo con extension .so en el mismo directorio donde se encuentra el .tar.gz, lo único que resta hacer es copiarlo al directorio de los plugins del navegador, esto se hace como super usuario (root):
# cp libflashplayer.so /usr/lib/iceweasel/plugins/


Alternativas libres:


Esto es desde repositorios, estos son desarrollados por la comunidad, para quien quiera instalarlos en su mozilla:

#aptitude install swfdec-mozilla



Bien eso es todo por hoy. Tengo que preparar más posts =).
Read full story

jueves, 17 de septiembre de 2009

Primeros pasos en MySQL

0 comentarios
Bueno, esta es como una pequeña guía de referencia de instalación y uso de MySQL.

Creo que no hay mucho que decir, MySQL es muy conocido, es un sistema de gestión de Bases de Datos, patrocinado por Sun Microsystems, cabe destacar que es de licencia DUAL, es decir, puede licenciarse su uso bajo la GPL o una licencia especial si se quiere incorporar en productos privativos.

Instalación.

Como saben, yo uso la distribución Debian, así que usé los repositorios para poder instalar MySQL. Esta instalación aplica para Debian y derivados.

Abrimos una Terminal y nos ponemos como Superusuario, y antes que nada vemos los paquetes disponibles:
#apt-cache search mysql-server
#apt-cache search mysql-client
En mi caso me encuentro en la rama Testing actual (Squeeze), y tengo disponible los siguientes paquetes:
mysql-server-5.0
mysql-server-5.1
mysql-client-5.0
mysql-client-5.1
Por razones personales, instalé la versión 5.0 que tenía disponible, ustedes puden instalar la más reciente que les aparezca si lo desean, y escribimos en la terminal:
#apt-get install mysql-server-5.0 mysql-client-5.0
En algún punto de la instalación, se nos pedirá un contraseña para el usuario root pero si no es así, por principio debemos asignarle una contraseña luego. Ahora bien, una ves que termine la instalación podemos verificar el estado del daemon de MySQL de la siguiente forma:
#/etc/init.d/mysql status


Server version 5.0.51a-24+lenny2
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 7 hours 15 min 51 sec

Uso de MySQL

Bien ahora accedamos al servidor, supongo que sí les fue solicitada la contraseña del usuario root, en una terminal como usuario normal escribimos lo siguiente:
$mysql -u root -p
Explico, la opción u es para identificar el usuario con el que queremos acceder al server, éste debe existir en el server, y la opción p es para especificar que sí tiene una contraseña asignada, si no se les solicitó la contraseña durante la instalación, podrán omitir ésta opción.

Si el acceso fue exitoso, veremos un mensaje de bienvenida, y un prompt como éste: mysql>

Bien, ahora veamos las bases de datos que tenemos disponibles, en el prompt escribimos lo siguiente:
mysql> show databases;

+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
+--------------------+
2 rows in set (0.09 sec)
Es importante resaltar que cada instrucción se cierra con punto y coma, así podemos escribir una sóla instrucción en varias líneas y ejecutarla hasta escribir el punto y coma.

Veremos algo como lo anterior, ahora crearemos nuestra propia base de datos, con la siguiente instrucción:
mysql> create database db_prueba;
Query OK, 1 row affected (0.10 sec)
Si vemos el mensaje Query OK, la BD fue creada exitosamente. Comprueben usando otra ves la instrucción para listar las BD's disponibles. Ahora crearemos una tabla, pero primero debemos seleccionar la BD donde queremos crear la tabla, así:
mysql> use db_prueba;
Database changed
mysql> create table prueba(nombre varchar(10), telefono varchar(10));
Query OK, 0 rows affected (0.08 sec)
La instrucción para crear la tabla como ya se deben de haver dado cuenta, es create table nombre_tabla, y lo que va dentro de los parentesis, son los campos que contiene (nombre, telefono), y varchar(10) es el tipo de dato del campo, y el 10 indica la longitud de caracteres, pueden investigar más sobre los tipos de datos.

Ahora comprobemos que existe la tabla recién creada, así:
mysql> show tables;
+------------------+
| Tables_in_db_prueba |
+------------------+
| prueba |
+------------------+
1 row in set (0.00 sec)
Ahora veamos más detalladamente la tabla, con la instrucción:
mysql> describe prueba;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| nombre | varchar(10) | YES | | NULL | |
| telefono | varchar(10) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
2 rows in set (0.09 sec)
Ahora veamos los registros que contiene la tabla, como es de suponer, no contiene nada, ya que no le hemos introducido ningún registro, pero aún así lo haremos como práctica:
mysql> select * from prueba;
Empty set (0.00 sec)
Nos dice que está vacío, pero eso ya lo sabíamos, la anterior es una de las formas más comunes de hacer consultas. Ahora introduzcamos unos registros en la tabla, veremos la primera forma posible de inserción:
mysql> insert into prueba values('Pyr0S-9889', '1234567890');
Query OK, 1 row affected (0.02 sec)
Nos dice Query OK, es decir, la operación fue exitosa, comprueben que se agregaron los datos haciendo una consulta, como expliqué un poco más arriba. Ahora insertaremos datos de otra forma:
mysql> insert into prueba(telefono, nombre) values('0987654321', 'AkinOS');
Query OK, 1 row affected (0.00 sec)
Vuelvan a hacer la consulta para ver si se agregó el nuevo registro. Ahora actualizaremos un registro:

mysql> update prueba set telefono = '1598746320' where nombre = 'AkinOS';
Consulten la tabla otra ves para ver si cambió el valor del campo, y a continuación borraremos un Registro completo:
mysql> delete from prueba where nombre='AkinOS';
Query OK, 1 row affected (0.01 sec)
De nuevo hagan una consulta para comprobar. Ahora borraremos la tabla complea:
mysql> drop table prueba;
Query OK, 0 rows affected (0.00 sec)
Listen las tablas disponibles. Ahora borraré la BD que creamos:
mysql> drop database prueba;
Query OK, 0 rows affected (0.30 sec)
Y bien ahora listen las BD's disponibles, salimos del server con la orden quit. Por último les dejo todo esto en un video para ver si es más entendible:
Si no se ve bien, veanlo en YouTube.com.




Más información en: mysql.com

Read full story

jueves, 3 de septiembre de 2009

Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection

4 comentarios
Bueno hoy un amigo que instaló Debian en su portátil acudió a mí para que le ayudara hacer funcionar su tarjeta de red inalámbrica, para ello hice un lspci:
0c:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)
y la solución rápida que encontré fue instalar desde repositorio un paquete llamado firmware-iwlwifi:
#apt-get install firmware-iwlwifi
y ya con eso la tarjeta quedó funcionando perfectamente. Pueden probar con estos repositorios:

deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free

Read full story

domingo, 30 de agosto de 2009

Tutorial Swing, JAVA

1 comentarios

Saludos a todos aquellos que siguen este blog - si es que alguien lo hace XD - y antes que nada, quiero pedir disculpas a mi blog y a todo aquel que se pasa por aquí de ves en cuando, no he podido publicar nada, no he hecho nada técnico últimamente, me he vuelto un flojo!! - en realidad ya lo soy, pero me he vuleto más flojo.

Bien, pasando a lo importante, ni tanto, en esta entrada sólo les traigo un tutorial de Java enfocado a la librería SWING, ya saben, lo bonito vende jejejeje, así que pues a petición de un primo que es vicioso del Tantra eXtreme les dejo el tuto en el siguiente link:

Descargar Tutorial


PD: Primo, si no sabes cómo compilar o dónde conseguir el compilador, usa GOOGLE, y si después de eso sigues igual, deja un comentario en esta entrada y así yo creo otra entrada para mostrarte cómo conseguir el compilador!!
Read full story

sábado, 27 de junio de 2009

Python, módulo record.py

7 comentarios

Vaya, ya casi ni me he preocupado por el Blog en estos días, he andado un poco distraído con otras cuestiones, unas ajenas a los ordenadores, y otras no tanto, de hecho, esta entrada es por uno de esos motivos que me mantiene frente a monitor y teclado... la programación - aunque no soy muy bueno que digamos jejeje - y esta ves estoy leyendo un manual de Python - ya casi acabo XD.

Bien pues, el libro que estoy leyendo - muy bueno en mi opinión - se titula "Introducción a la Programación con Python" de los autores: Andrés Marzal e Isabel Gracia, pero ocurre un pequeño detalle en el Capítulo 7, donde hacen mención de un módulo llamado record pero que no está en el Estándar de Python, por lo tanto al momento de querer importar el módulo, el interprete nos marca un error, ¡¡¡que no existe el módulo!!!, pero aunque en el mismo libro nos proporcionan el módulo en el apéndice C, me enredó un poco, y mejor decidí bajarlo de la internet, y en verdad que hay pocos sitios con este módulo publicado, aunque creo que sólo es de carácter didáctico el mero módulo, para las prácticas del libro, así que les dejo el enlace donde pueden descargarse el modulo:

Read full story

miércoles, 27 de mayo de 2009

Configurar Bind9 en Debian Squeeze/Testing, DNS Server

9 comentarios
Vaya!!! tiempo sin actualizar el Blog, la verdad es que he tenido un par de semanas algo pesaditas, la primera configurando unos servidores y la siguiente de exámenes y tareas... pero al fin aquí traigo una entrada más...

DNS... Domain Name System...

es una base de datos distribuida y jerárquica que almacena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar diferentes tipos de información a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electrónico de cada dominio. (Fuente: es.wikipedia.org)

Bind9...

BIND (Berkeley Internet Name Domain, anteriormente : Berkeley Internet Name Daemon) es el servidor de DNS más comúnmente usado en Internet, especialmente en sistemas Unix, en los cuales es un Estándar de facto. Es patrocinado por la Internet Systems Consortium. BIND fue creado originalmente por cuatro estudiantes de grado en la University of California, Berkeley y liberado por primera vez en el 4.3BSD. Paul Vixie comenzó a mantenerlo en 1988 mientras trabajaba para la DEC.

Una nueva versión de BIND (BIND 9) fue escrita desde cero en parte para superar las dificultades arquitectónicas presentes anteriormente para auditar el código en las primeras versiones de BIND, y también para incorporar DNSSEC (DNS Security Extensions). BIND 9 incluye entre otras características importantes: TSIG, notificación DNS, nsupdate, IPv6, rndc flush, vistas, procesamiento en paralelo, y una arquitectura mejorada en cuanto a portabilidad. Es comúnmente usado en sistemas Linux.
(Fuente es.wikipedia.org)

Instalar Bind9...

En Debian es muy sencillo hacerlo desde los repositorios, basta con abrir una terminal y ponernos como usuario root y luego escribir:

#apt-get install bind9

Configurar Bind9...


La configuración que aquí voy a explicar es para una LAN, no he intentado hacerla para Internet, pero sí utilizaremos los DNS de algún ISP para la resolución de dominios de Internet, en mi caso usaré los de Telmex...

El directorio donde se encuentran los archivos de configuración de Bind9 es:
/etc/bind/
Ahora, los archivos de configuración principales son:
  • named.conf
  • named.conf.local
  • named.conf.options
De los cuales, sólo modificaremos los últimos dos, así que comenzamos con el named.conf.local abriendolo con algún editor como root:
#nano /etc/bind/named.conf.local
Le agregamos lo siguiente:
zone "divas.com" {
type master;
file "/etc/bind/db.divas.com";
};

zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/192.168.1.rev";
};
El dominio que estoy usando como ejemplo es divas.com (no pregunten por qué jejeje) así que sólo sustituyan divas.com por el dominio que quieran... el fichero db.divas.com es donde configuramos la zona, y el fichero 192.168.1.rev es para la resolución inversa... así que pasemos a crear y configurar el fichero de la zona... como root en una terminal:
#nano /etc/bind/db.divas.com
y a continuación le agregamos lo siguiente:
$TTL 604800
@ IN SOA divas.com. admin.divas.com. (
2008080101 ;serial
04800 ;refresh
86400 ;retry
2419200 ;expire
604800 ;negative cache TTL
)
@ IN NS dns.divas.com.
@ IN A 192.168.1.75
@ IN MX 10 main.divas.com.
dns IN A 192.168.1.72
main IN A 192.168.1.75
www IN CNAME main
ftp IN CNAME main
mail IN CNAME main
vale ahora una pequeña explicación de lo anterior:
Tengo dos ordenadores, uno es exclusivamente el Servidor DNS y el otro es Servidor web, ftp, mail, ssh, samba... el Server DNS tiene la ip 192.168.1.72 y el otro la 192.168.1.75...

Al servidor multiple le denomino main, pero también le doy otros Alias, se les llama nombre canónico, para que también me pueda referir a él como www, ftp o mail.
continuemos con la zona de resolución inversa... en una terminal como root:
#nano /etc/bind/192.168.1.rev
y le agregamos lo siguiente:
$TTL 604800
@ IN SOA divas.com. admin.divas.com. (
2008080101 ;serial
04800 ;refresh
86400 ;retry
2419200 ;expire
604800 ;negative cache TTL
)
@ IN NS dns.divas.com.
@ IN A 192.168.1.75
72 IN PTR dns.divas.com.
75 IN PTR main.divas.com.

Sólo es poner la última cifra de IP de cada ordenador, ahora configuremos el named.conf.options para que utilice los DNS de nuestro ISP... yo los conseguí accesando al router con su ip, 192.168.1.254 en la sección Broadband Link>View Connection Details, ahora sólo abrimos como root el archivo named.conf.options:
#nano /etc/bind/named.conf.options
y descomentamos la parte de forwarders y lo dejamos de tal manera que quede así:

forwarders{
200.33.146.209;
200.33.146.218;
};
Esas IP's pertenecen a los servidores DNS que me proporciona Telmex....


Aplicando los cambios....

Para que todo lo que acabamos de configurar surta efecto es necesario reiniciar el daemon del bind, como root en una terminal lo siguiente:
#/etc/init.d/bind9 restart
Ahora, como muy probablemente tenemos el DHCP habilitado, se nos asigna automáticamente los servidores DNS de Telmex, así que tenemos que editar el archivo resolv.conf ubicato en /etc/ tanto de nuestro servidor DNS como de todas los demás ordenadores que quieran utilizar nuestro Servidor DNS así que como root primero editaremos el resolv.conf de nuestro Servidor DNS:
#nano /etc/resolv.conf
y le ponemos lo siguiente:
domain divas.com
search divas.com
nameserver 127.0.0.1
La IP 127.0.0.1 es para indicar que sea local, ahora editaremos el resolv.conf de todas las otras PC's que quieran que use nuestro Servidor DNS, como root:
domain divas.com
search divas.com
nameserver 192.168.1.72
Es básicamente lo mismo, sólo que ahora ponemos la IP de nuestro Servidor DNS.... ahora tenemos reiniciamos el daemon de networking en todos los ordenadores a los que hayamos modificado el fichero resolv.conf.... como root:
#/etc/init.d/networking restart

Comprobando que todo funciona...

Nos apoyaremos en el comando nslookup para este paso... en una terminal poner lo siguiente:

$ nslookup dns.divas.com
Server: 127.0.0.1
Address: 127.0.0.1#53

Name: dns.divas.com
Address: 192.168.1.72
Algo parecido a eso es lo que deberían ver si todo ha ido bien, ahora main.divas.com:
$ nslookup main.divas.com
Server: 127.0.0.1
Address: 127.0.0.1#53

Name: main.divas.com
Address: 192.168.1.75
Ahora las resoluciones inversas... es decir con las IP...
$ nslookup 192.168.1.72
Server: 127.0.0.1
Address: 127.0.0.1#53

72.1.168.192.in-addr.arpa name = dns.divas.com.

$ nslookup 192.168.1.75
Server: 127.0.0.1
Address: 127.0.0.1#53

75.1.168.192.in-addr.arpa name = main.divas.com.
vale... creo que eso sería todo por esta vez... cualquier duda o corrección por favor comentenla, que yo apenas estoy aprendiendo esto jejeje....


Read full story

jueves, 7 de mayo de 2009

Configurar Monitor en Debian, AOC 1619Sw

0 comentarios
El comienzo...

Hace unos días estaba buscando por un monitor LCD - ya estaba harto del gran espacio que me robaba un CRT - que fuera bueno bonito y barato - no soy codo, soy ahorrativo XD - y me topé con los AOC y recordé que un amigo tiene un LCD OAC de 17" y que la verdad se ve muy bien... y pues me decidí a comprar uno pero por motivos económicos me tube que comprar uno de 15.6"... =(

En cuanto llegó mi monitor lo conecté y lo estube probando y todo perfecto - según yo - después de un rato leyendo unos blogs me di cuenta que por partes se veían borrosas algunas letras... y dije mmmta ya manché la pantalla... y la limpié pero no se quitaba lo borroso... ahí fue cuando caí en la cuenta de que era algo lo que andaba fallando y no una mancha... pero por falta de tiempo no decidí buscar nada en ese momento...

Pero hoy, harto de las columnas borrosas - sí, eran unas columnas enteras las que se veían borrosas... de unos 2 cm de ancho y unos 3 cm de separación entre columnas - decidí reconfigurar el xorg.... para ver si era lo que estaba fallando..

primer intento... FRACASO!!!

Abro una terminal.... con Ctrl+Alt+F1.... me pongo como ROOT y detengo el gdm... /etc/init.d/gdm stop.... luego paso a reconfigurar el xorg:
#cp /etc/X11/xorg.conf /etc/X11/xorgRespaldo
#dpkg-reconfigure xserver-xorg
Según yo así lo tenía que hacer - hace ya algúnos meses también reconfigure mi xorg, y fue de esa manera - pero me topo con la sorpresa que sólo me reconfigura el teclado º_º"!

segundo intento... TRIUNFANDO!!!

Estube investigando un poco y veo que para reconfigurar a partir de Debian 5.0 - la vez pasada lo hice en Etch - se usa otro comando.... y pasé a probar.... el nuevo comando:
#Xorg -configure
#cp xorg.conf.new /etc/X11/xorg.conf
#reboot
Paso a explicar brevemente los comandos...

el primero es para crear un nuevo archivo de configuración del xorg con información de nuevo hardware (mi monitor) y se genera en el directorio que estemos... en mi caso estaba en /root

el segundo es para copiar el archivo de configuración generado por el comando anterior a /etc/X11/ y reemplazar el xorg.conf anterior... ASEGURENCE DE REALIZAR UN RESPALDO DEL XORG.CONF ACTUAL ANTES DE REEMPLAZARLO

el tercer comando es para reiniciar el ordenador...

Ahora ya no se ven las molestas columnas esas que hacían ver borrosas las letras y que me lastimaban mis ojitos =)
Read full story

martes, 5 de mayo de 2009

Fallo en GConf

1 comentarios

Ayer instalé Debian Testing (Squeeze) en el ordenador que tengo en casa de mis padres, y al intentar hacer unas operaciones como root me tiraba el siguiente error:
Falló en GConf: Falló al contactar con el servidor de configuraciones; algunas de las posibles causas son que necesite habilitar TCP/IP en ORBit, o que tiene bloqueos de NFS de una caída de sistema. Vea http://www.gnome.org/projects/gconf/(Detalles - 1: Falló al obtener la conexión con la sesión: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.)
Yo me quedo muy extrañado... diciendo..."Pero si no he tocado nada, el sistema está recien instalado".... pero bueno por falta de tiempo no investigué nada al momento.

Pero hoy me levanto con ánimos de solucionar el problema... me pongo a revisar un poco en la página esdebian.org y veo que ya varios han detectado el error...

Lo que hice para solucionarlo fue desinstalar el paquete gconf2... y por dependencias me desinstaló muchos paquetes más...
#apt-get --purge remove gconf2

apunté todo mi sources.list a stable.... ahora pasé a actualizar mi sistema y como me quedé sin entorno gráfico pues instalé el gnome y por dependencias me descargó e instaló muchos paquetes más...
#apt-get update
#apt-get upgrade
#aptitude install gnome
y luego creé un archivo llamado preferences en /etc/apt/ y le agregué unos datos para que no actualize el paquete gconf2...

#nano /etc/apt/preferences

#####contenido del fichero preferences
Package: gconf2
Pin: release a=stable
Pin-Priority:1001

Package: gconf2-common
Pin: release a=stable
Pin-Priority:1001

Package: libgconf2-4
Pin: release a=stable
Pin-Priority:1001

#####1001 es para que no se actualize el paquete...
y a continuación apunté mi sources.list a testing y volví a actualizar el sistema...
#apt-get update
#apt-get upgrade
y pues ahorita anda todo bien... ya no podré ver como se comporta el sistema porque ya no estaré en casa de mis padres así que espero no de muchos problemas a mi hermana.. que es quien utiliza el Desktop en mi ausencia...

algunos inconvenientes.. muy probablemente se den en las dependencias de los futuros paquetes a instalar... ahorita tengo varios que están retenidos.. ya veré como arreglar eso... espero que los de Debian arreglen esto rápido...

bueno eso sería todo... espero a alguien le sirva esta entrada.. y si saben una mejor manera de reparar esto comentenla por favor para que todos estemos enterados!...
Read full story

domingo, 3 de mayo de 2009

Conectar Thomson y 2Wire

3 comentarios

Esta entrada es para informar que la conexión entre el modem/router Thomson ST585 y el modem/router 2Wire (ambos los distribuye TELMEX) no la pude realizar de forma exitosa =(

La verdad es que el 2Wire tiene funciones muy limitadas... sé que se puede poner en modo bridge con otros routers pero a través de Ethernet...

No intenté hacerlo a través de Ethernet porque ese no era mi objetivo a probar.

Bueno espero que haya una que otra persona esperando este Post... y si alguien logró hacer la conexión, le pido que deje un enlace o la manera en que logró la conexión para así estar todos informados...
Read full story

miércoles, 29 de abril de 2009

Recuperar datos de USB con Autopsy-SleuthKit

5 comentarios


A quién no le apasado que por andar jugando en la consola hace un rm archivo.* para borrar varios archivos con el mismo nombre pero con diferente extensión pero se olvidaron que había un archivo que no debían borrar y que se llamaba igual y ya no está!!!!! =(

Estamos que nos lleva la x!"$&$% lo digo porque me ha pasado... pero no más! =)

Les presento - para los que no lo conozcan - a Autopsy, es una interfaz gráfica para las herramientas de linea de comandos de SleuthKit, que es una colección de herramientas para el análisis forense de ordenadores.

Yo lo uso para recuperar datos de Memorias USB sobre todo, debido a que no son de gran capacidad... aunque se puede hacer con discos duros... pero necesitariamos otro de igual o mayor capacidad de almacenamiento... Autopsy lo uso en conjunto con dd (una herramienta unix que sirve para copiar datos en bruto).

para instalarlo en Debian y derivados:
#apt-get install autopsy sleuthkit
para conseguirlo desde su página oficial de Sleuth Kit:
http://www.sleuthkit.org/autopsy/

la sintaxis con la que uso dd es la siguiente:
#dd if=/dev/dispositivo of=/ruta/de/almacenamiento/archivo.dd
y así creo un fichero que contiene toda la información de una memoria usb por ejemplo.... luego sólo hago en una terminal:
#autopsy
y abro un navegador y escribo:
http://localhost:9999/autopsy
y lo demás mejor lo muestro en este video que hice.... si se ve entrecortado veanlo en YouTube.com:
http://www.youtube.com/watch?v=mk6q9kHYswA




Datos curiosos:
  • Cuando borras un archivo.... no lo borras!!! XD lo que haces es borrar el índice que apuntaba al sector donde está el archivo.
  • Un archivo se borra o corrompe cuando se sobreescribe otro dato en el sector donde está almacenado.
  • Tomando en consideración lo anterior... si quieres recuperar datos borrados es mejor no sobreescribir nada en el dispositivo de almacenamiento hasta después de haber recuperado la información.
  • Si sobreescribes antes de recuperar la información, es posible que puedas recuperar los datos, pero corruptos!
Cualquier cosa por aquí me encuentran jejeje....
Read full story

domingo, 26 de abril de 2009

Modulo RTL8187 en Debian Squeeze kernel 2.6.27

4 comentarios
He sufrido mucho con mi tarjeta de red usb - una Alfa 200mW - por la conexión y la transferencia de datos en mi Debian Lenny y ya estaba fastidiado en verdad...

Hasta el punto querer darle en la madre a mi tarjeta, pero no puede ser el adaptador!!!! es una chulada con el BT3, y pues dije bueno voy a probar con el nuevo Squeeze, porque prefiero estar en la rama Testing de Debian y me descargué el iso e instalé el sistema, pero sorpresa!!!! trae el kernel 2.6.26 que era el mismo que yo tenia en mi Lenny .... y como supuse, los problemas continuaban.... investigando un poco di con un nuevo parche para el kernel 2.6.27 y rapido fui a hacer un apt-cache search linux-image-2.6.27 pero no estaba el kernel... joder tengo que compilar, y no sé cómo ='(

Buscando un poco más, encontré este excelente manual hecho por Ulises Arias y después de darle una ojeada me decidí a compilar de una ves por todas... me descargué el kernel 2.6.27.21 de la página www.kernel.org y lo compilé a la Debian, sólo hago un apunte sobre lo que necesité para compilar:

build-essential
kernel-package
libncurses5-dev
libghc6-zlib-dev
y ya que quedó listo, lo instalé y reinicié... el nuevo kernel estaba funcionando



Ahora a instalar el nuevo módulo y parche!!!!! descarguense estos ficheros:
rtl8187_linux_26.1010
rtl8187_2.6.27.patch
suponiendo que los descargaron en su home... haremos lo siguiente como root:
#unzip rtl8187_linux_26.1010.zip
#mv rtl8187_2.6.27.patch rtl8187_linux_26.1010.0622.2006/
#cd rtl8187_linux_26.1010.0622.2006/
#tar xzf drv.tar.gz
#tar xzf stack.tar.gz
#patch -Np1 -i rtl8187_2.6.27.patch
si por alguna razón les marca algo como esto: "asm/semaphore.h: No such file or directory"... hagan lo siguiente:
#nano ./beta-8187/r8187.h

[ubicamos la siguiente linea]
#include <asm/semaphore.h>
[la cambiamos por]
#include <linux/semaphore.h>
[guardamos cambios y cerramos el archivo, y volvemos a aplicar el parche]

#patch -Np1 -i rtl8187_2.6.27.patch
en mi caso el modulo rtl8187 no se me cargó en el kernel si es tu caso no tomes en cuenta este paso... pero si a alguien se le carga el modulo que viene por "defecto" XD... haga lo siguiente:
#nano /etc/modprobe.d/blacklist
[hasta abajo agregue lo siguiente: blacklist rtl8187] [ahora guarden cambios y cierren el fichero, y luego en la terminal hacer lo siguiente]
#ifconfig wlan0 down
#rmmod rtl8187
ahora sólo queda instalar el módulo....
#make
#make install
listo tenemos instalado el nuevo modulo y parchado!!!!! para activar el módulo sin reiniciar hacer lo siguiente, o si lo prefieren un reboot y ya:
#modprobe r8187
#iwconfig
[y nuestra tarjeta debería aparecer]
El rato que lo llevo probando la tarjeta va muy bien, chulada!... por fin puedo escribir mis posts desde mi pc otra ves... un último screenshot:


ahora sólo espero que mi tarjeta siga así de bien!!! =)
Read full story

sábado, 25 de abril de 2009

Back|Track 3 Intel Pro 3945ABG

10 comentarios
Bueno hace poco un compañero quería iniciarse en esto de las "Auditorias" wireless, pero la tarjeta inalambrica de su Laptop es una intel Pro 3945 ABG (abajo la salida del lspci)y la forma para que esta tarjeta funcionara bien para las auditorías era esta:

#lspci | grep Network
0b:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)
#rmmod iwl3945
#modprobe ipwraw
y de ahí lo demás queda de cada quién ;)

NOTA: de esta forma el modulo ipwraw pone en forma automática a la tarjeta en modo monitor, y no se puede cambiar a modo Managed, así que una ves obtenida la pass vuelvan a montar el modulo iwl3945.

y si por las dudas chequen esto: Crack WEP con BT3
Read full story
 

Pyr0S-9889 © 2008 Business Ads Ready is Designed by Ipiet Supported by Tadpole's Notez