MeltIT
30Mar/103

Windows Vista/7: Localhost web server slow access (apache, others)

El otro día instale un servidor HTTP Apache en Windows 7. A mi sorpresa, cada vez que intentaba acceder, demoraba unos segundos en resolver el nombre, y luego cargaba la página. Como no lo utilice mucho, no le preste demasiada atención, aunque era demasiado lento por ser un servidor en la misma computadora.

Ayer, un amigo instalo el WAMP y tuvo el mismo problema en un Windows 7 recien instalado.

Luego probe acceder mediante 127.0.0.1, ó, ya que tengo instalado un Adaptador Loopback de Microsoft, mi IP de internet. Para mi sorpresa, en ambos casos cargo instantaneamente (como debiera ser con localhost). Se me ocurrio que podía llegar a ser algo con la resolución del nombre. Me fui al archivo hosts, C:\Windows\system32\drivers\etc\hosts. A mi sorpresa, encontre que decía:

# localhost name resolution is handled within DNS itself.

Y la línea 127.0.0.1 localhost, estaba comentada, ya que como dice la línea anterior, el localhost lo maneja el DNS ahora, al parecer.

La solución:

Basta con DEScomentar la línea 127.0.0.1 localhost, esto es, borrarle el # al inicio, y el problema esta solucionado. Al parecer, el DNS se demora, y esto produce que el acceso sea lento.

17Mar/104

iPhone/RockApp: Uso de CPU alto – Se esta quedando sin espacio [high cpu usage sys]

Hoy por la tarde, venía escuchando música en el auto a traves del iPhone. En un momento me bajo del auto, y cuando vuelvo a subir, veo que no arranca la música. Al chequear, veo que el iPhone se había reiniciado, ya que estaba la manzana de Apple. Tardaba bastante en iniciar, pero finalmente lo hizo. Horas más tarde, cuando intente ver la hora, veo que me aparece que estaba descargado y que debía conectarlo. Un hecho raro ya que siempre me sobra bateria y no lo había usado practicamente al telefono en el día. Procedo a hacerlo, y nuevamente se demoraba en iniciar.

(La solución esta al final, precede el relato y explicación)

El problema de la bateria:

Procedo a conectarme por SSH, y utilizar top, ya que imagine que si la batería se había descargado, era por uso de CPU anormal (elevado). A mi sorpresa, veo que el mayor porcentaje era de sys, algo como el 75% y un 25% de user. Ningún proceso llegaba a tales numeros, el único era top con 5%. Luego veo en el telefono un mensaje (pop-up) que dice "Aviso" y que hay poco espacio disponible, que elimine fotos. Con df, me doy cuenta que el espacio utilizado de /private/var/ era del 100%, ergo el mensaje era correcto.

El problema del espacio y donde:

El uso de CPU en sys, me decía que por alguna razón estaba ligado a la falta de espacio en disco, ya que no era un proceso utilizando CPU. Mediante WinSCP, fui triangulando que carpetas podían tener el espacio utilizando. Primero elimine una serie de aplicaciones, ya que sino no podía encontrar la fuente donde crecía el/los archivos. Teniendo espacio disponible podía monitorear por cambios.

En WinSCP, mediante Properties (F9) y clickeando Calculate, obtengo el espacio utilizado por carpeta. Estando sobre /private/var, identifique mobile como la carpeta utilizando más espacio (Nota, es lógico, ya que el contenido como Aplicaciones y Media [música], se encuentra ahí, pero el resto de las carpetas tenía un tamaño muy chico como para ser la raíz del problema). Luego, carpeta por carpeta, y revisando dos veces cada una (ya que el tamaño crecia más de 1 vez por segundo, verificado con df), vi que era Library. Dentro de esta, realize lo mismo, y encontre que era la carpeta RYP (Rock Your Phone = RockApp). La primera carpeta que procedi a examinar era logs (si algo tiende a crecer, es un log). Y en efecto, vi un log que crecia a cada segundo.

Hecho intersante: Hacía bastante que no utilizaba RockApp, y de hecho no lo había utilizado hoy cuando sucedio el problema. De hecho, el log tenía fecha de hoy (rockapp_2010-03-16.log), una falla de un daemon seguramente, ya que no utilice la aplicación. El contenido del log era: "HORA: Wrote Zero Bytes".

La solución:

El log en /private/var/mobile/Library/RYP/logs/ y ahi el archivo es rockapp_FECHA.log es el cual crece en tamaño hasta que no hay más espacio. La solución consiste en eliminar este archivo y luego con espacio disponible, actualizar el RockApp. Por último, reiniciar el iPhone.

Tambien encontre en Google, el tema en BigBoss

Filed under: iPhone 4 Comments
3Mar/101

Linux/Debian 5: Realtek RTL8139D ethernet drivers (8139D)

Hoy estaba instalando Linux, Debian 5 Lenny (i386), en una PC vieja, una Vectra VE. En esta, tengo una placa de red PCI. Según lspci, Hangzhou Silan Microelectronics RTL8139 [REALTEK] (rev 01). Según observo el controlador (fisico), leo RTL8139D.

El problema fue que en el instalador no me reconocía la placa de red. Me ofrecía una lista para seleccionar. Lo primero que hice fue ver la placa fisicamente, a ver que controlador veía, encontre el que menciono arriba. En la lista, encuentro dos opciones para el 8139, el correcto parece ser 8139too, pero el mismo falla (sigue pidiendome el controlador).

Con ALT+F2, accedo a una consola. Procedo a utilizar lspci y me encuentro con que aparece la placa de red, como mencione al inicio del post. Realizo un modprobe 8139too, y observo el dmesg, y me encuentro con que carga el módulo, pero al parecer sigue sin funcionar.

Una busqueda en google (rtl8139D debian), encuentro un resultado, un tanto extraño, ya que al parecer esta explicado así nomás y no parece muy real. No obstante, lo que menciona en el título es, rtl8139D = sc92031. Al ver esto lo que pienso es que el módulo que debo buscar es sc92031, el problema es que no esta inclúido en el CD de Debian.

Obteniendo el .ko (kernel object, module):

(A continuación relato como lo obtuve, adaptando esto se puede encontrar como obtener el controlador para otras arquitecturas, de no interesar, más abajo proporciono el link directo al .ko [aunque para i386 (32bits) únicamente])

Siguiendo en el post ese que encontré, veo la línea deb http://debian.torredehanoi.org/debian lenny main contrib non-free, la cual hace referencia a un repositorio Debian (en este caso, replíca oficial). Deduzco que es posible que el archivo que estoy buscando se encuentre ahí.

(En un futuro hare una guía simple de como explorar manualmente estos archivos) Entro mediante el navegador web ( link ), y navego hacía la raíz. Veo el archivo Contents-i386.gz (que es un archivo comprimido y adentro tiene un archivo de texto), el cual hace referencía a la plataforma que estoy utilizando (x86 [32-bit]). Este archivo es el que indica en que paquete se encuentra cada archivo.

Busco sc92031 y encuentro lib/modules/2.6.26-2-486/kernel/drivers/net/sc92031.ko (.ko = kernel object, módulo, controlador/driver) en el archivo admin/linux-image-2.6.26-2-486. Necesito el linux-image ese.

Navego hacía main/binary-i386/, y encuentro el archivo Packages.gz, el cual son los paquetes, y estoy dentro de la arquitectura. Como en el caso anterior, extraígo y examino el archivo. Busco el paquete, (linux-image-2.6.26-2-486), y encuentro su ubicación en el repositorio (Filename: pool/main/l/linux-2.6/linux-image-2.6.26-2-486_2.6.26-21_i386.deb). El archivo entonces esta en http://debian.torredehanoi.org/debian/pool/main/l/linux-2.6/linux-image-2.6.26-2-486_2.6.26-21_i386.deb.

(Para obtener de otras arquitecturas, en vez de i386, debería bastar con buscar el .deb correto, dentro del Packages.gz de la arquitectura deseada en este link (o en cualquier otro repositorio que sea réplica oficial) ya que el paquete que estamos buscando es linux-image-2.6.26 (?) , o cualquiera sea la versión del kernel, y en este, extraer el mencionado .ko)

En Windows, con 7-zip, se puede extraer el .deb, y navegar por data.tar.gz, que son los archivos del paquete. Abro el .deb descargado, y navego hacía lib/modules/2.6.26-2-486/kernel/drivers/net/ (directorio de los modulos del kernel, lo subrayado es la versión del kernel) y encuentro el sc92031.ko, que estaba buscando. Lo extraígo y copio a un diskette para pasarlo a la otra PC (esto es porque probe inicialmente pasarlo con la opción de buscar en un medio extraíble y no funciono) (es posible hacer esto con un pendrive).

sc92031.ko, descarga directa.

Moviendo e "instalando" el módulo:

En mi caso, lo voy a realizar con un floppy disk (diskette), ya que es una PC vieja, es lo mismo para un PENDRIVE, solo cambia el mount, para más info, ver este articulo, que explica como encontrar cual es la unidad USB.

Para montar un floppy, basta con mount /dev/fd0 /mnt/undirectorio, siendo undirectorio, una carpeta ya creada (mkdir /mnt/undirectorio/). Procedo a copiar el .ko al sistema:
cd /mnt/undirectorio/
cp sc92031.ko /lib/modules/2.6.26-2-486/kernel/drivers/net/

Por último, modprobe sc92031, y no me muestra nada, lo cual me índica una carga satisfactoria.

Vuelvo a la instalación, ALT+F1, y luego de seleccionar uno cualquiera (ej, 8391too), salta a la configuración DHCP (que también se completa), con lo cual la instalación fue satisfactoria y continuo con la misma.

Otra opción es también terminar la instalación del sistema, y luego agregar el .ko, una vez en el sistema.

Filed under: Linux 1 Comment
2Mar/100

Notebook Destruction (i486 + Hammer + Drill)

You need to install or upgrade Flash Player to view this content, install or upgrade by clicking here.

MeltIT Productions Presents:

Notebook Destruction: What happens when your notebook doesn't work and how to make it work.

-----

La notebook se rompio, y no tubo más remedio que cargarsela.

Hardware:

i486 SL
-rest unknown-

Filed under: MeltIT Videos No Comments