Jan 3

Si alguna vez necesitas crear/modificar la contraseña de un usuario desde la línea de comandos sin necesidad de que sea de manera interactiva, puedes hacerlo utilizando la herramienta chpasswd, en caso contrario tendrás que hacerlo mediante la herramienta passwd de manera interactiva.

El manual chpasswd nos dice:
chpasswd reads a list of user name and password pairs from standard input and uses this information to update a group of existing users, so you can update passwords in batch mode.

Que traducido significa :)

# echo “usuario:contraseña” | chpasswd

És muy útil si tienes que poner una contraseña conocida a un usuario nuevo mediante algún proceso automático mediante un script o similar, asegúrate en este caso, que solo usuarios conocidos pueden leer el fichero, puesto que la contraseña está en texto claro.

Jan 2

Glendix es un proyecto que pretende combinar el kernel de Linux con las herramientas de usuario que ofrece el sistema operativo Plan 9.

Plan 9 nació en su día, de la mano de los laboratorios Bell, intentando suplir carencias de Unix en entornos distribuidos. El proyecto no tuvo el éxito esperado, aunque si aportó nuevas características y desarrollos que se implementaron en sistemas Unix, como por ejemplo el directorio /proc y la codificación UTF-8 entre otros.

Para conocer mejor que ventajas puede aportar Plan 9 sobre lo que ya existe hoy en día en el mundo Linux, aquí tenemos una cita de la Wikipedia que da una idea muy general de su principal característica:

Fue desarrollado como el sucesor en investigación del sistema UNIX por el Computing Sciences Research Center de los Laboratorios Bell entre mitad de los años 80 y 2002.

Plan 9 es conocido especialmente por representar todos los interfaces del sistema, incluyendo aquellos utilizados para redes y comunicación con el usuario, a través del sistema de archivos en lugar de con sistemas especializados.

Glendix está todavía en fase de despegue y probablemente no tiene la suficiente madurez para juzgarlo. Pero de momento, hasta que haya algo listo para probar nos es suficiente con conocer que el proyecto existe y un poco de teoría para que podamos preveer cuales serán sus puntos fuertes y en que situaciones podremos sacarle partido.

A modo de curiosidad, supongo que Glendix ha tomado el nombre inspirándose en la mascota de Plan 9, que se llamaba Glenda. Os presento a Glenda :P


glenda-4001

Visto en http://www.nodejodeaprender.com

Jan 2

Para los que no lo sepan, una manera “curiosa” de lanzar comandos de sistema en PHP, és utilizar las comillas invertidas, de la misma manera que la utilizan otros lenguagues de scripting como Bash.

Esto va para dedicado para Abraham que un día se lo comenté y le gustó esta manera de hacerlo.

~$ cat comando.php
#!/usr/bin/env php
<?php
    $cmd = "whoami";
    echo `$cmd`;
    echo shell_exec($cmd);
    system($cmd);
?>
~$ chmod u+x comando.php
~$ ./comando.php
ruben
ruben
ruben

Como podemos observar, la salida de ambos métodos és exactamente la misma, así que para ir más deprisa podemos utilizar `comando` sin miedo a tener resultados inesperados.

Funciona tanto para PHP como módulo de Apache o bien desde la línea de comandos.

Dec 30

Hola,

Ayer probé el último kernel para ver que funcionalidades nuevas vienen por defecto y si existe alguna ligera diferencia con las anteriores versiones. Yo he saltado directamente del versión 2.6.25 a la 2.6.28 que és la última actualmente, aparentemente todo sigue más o menos igual a vista del usuario, excepto dos grandes cambios a tener en cuenta, ext4 ya és estable, ya no es marcado más como experimental, pero el cambio que realmente me afectó a mí fué que, YA NO HAY SOPORTE POR DEFECTO PARA EXT2!, alguien puede decir que que hago yo con ext2 todavía no?, pues bien, la suelo utilizar para la partición /boot, puesto que no tiene que escribir nada en ella y el kernel se carga en memoria solo al iniciar el sistema operativo, por tanto, no tenía mucho interés para mí tener Journaling en dicha partición.

Ahora bien, justamente mi partición /boot era de ext2, solo una de 12 y és justamente la primera en montar para arrancar el sistema operativo!, así que si no hay soporte por defecto… el último kernel me regaló por navidad que no podía arrancar mí distribución GNU/Linux, puesto que ya no existía soporte para ext2. En fin, tuve que hacer los típicos trapicheos para poder arrancar desde un live CD y convertir mi partición ext2 a ext3 sin perder mis datos.

Desde un Live CD

# mkdir -p /mnt/linux/boot
# mkdir /mnt/linux/{dev,proc}
# mount /dev/sda1 /mnt/linux
# mount /dev/sda3 /mnt/linux/boot
# mount -t proc none /mnt/linux/proc
# mount -o bind /dev /mnt/linux/dev
# chroot /mnt/linux /bin/bash

Una vez dentro del chroot, para convertir la partición sin perder los datos utilizaremos tune2fs

# tune2fs -j /dev/sda3
(convierte de ext2 a ext3 sin perder datos, añade solo journaling)
# $EDITOR /etc/fstab (cambiamos todo lo de ext2 por ext3)

Y listos!

Me gusta hacerlo con chroot en vez de usar mount directamente, aunque ambos métodos són aceptables.

Una vez migrada la partición a ext3, todo arrancó correctamente :)

Personalmente veo más correcto que yo tenga que migrar a ext3, que no volver a añadir soporte ext2 en el kernel por defecto, ya que las compatibilidades históricas hacen retroceder injustamente la evolución del software.

kernel-2628


# pwd
/usr/src/linux-vanilla/linux-2.6.28
# grep EXT2 arch/x86/configs/i386_defconfig
# CONFIG_EXT2_FS is not set

Saludos!

Dec 3

Puesto que PHP es un lenguaje interpretado, cada página tiene acceso mediante la ejecución del propio script, que este a su vez es parseado, analizado, compilado y finalmente ejecutado.

Este ciclo de cargar, analizar y compilar puede añadir una demora de tiempo en el procesamiento bastante elevado, especialmente cuando uno alberga un sitio web con un número de visitas considerable.

Los aceleradores cache de PHP tienen como objetivo solventar esta situación, reducir la demora y lograr mantener una versión compilada de la secuencia de comandos en memoria (o disco) consiguiendo en la siguiente petición servir el mismo script compilado, optimizando el ciclo natural de la ejecución de PHP.

APC tiene claras ventajas:
  • Reduce el tiempo en la carga de las páginas
  • Se puede manejar mediante el mismo PHP
  • Es transparente para la aplicación
  • Evita recompilar el código PHP por cada conexión
  • Disminuye la carga en el servidor, principalmente tiempo de CPU y consumo de memoria, lo cual es elemental para una web grande, o en particulares cuando sufren los famosos efectos de webs populares como meneame o digg.

Esto nos va a venir de perlas para aplicativos similares a drupal o wordpress u otros.

Ahora vamos a ver como podemos utilizarlo en GNU/Linux, para ello nos hará falta tener un servidor web como Apache y tener PHP instalado como módulo del mismo.

Puede que según la versión, tenga un paquete con distinto nombre, simplemente hay que seleccionar el más acorde.

Debian/Ubuntu:

$ sudo aptitude update
$ sudo apt-get install apache2-threaded-dev php5-dev php-pear make
$ sudo ln -s /usr/bin/apxs2 /usr/bin/apxs
$ sudo pecl install apc
$ sudo gedit /etc/php5/apache2/php.ini o bien /etc/php5/conf.d/apc.ini

Si en debian sale el mensaje “Sorry, I was not able to successfully run APXS.“, hay que instalar apache2-prefork-dev
$ sudo aptitude install apache2-prefork-dev

Ahora en el fichero php.ini añadiremos estas dos lineas al final:
extension=apc.so
apc.enabled=1


Finalmente reiniciamos el servidor web
$ sudo /etc/init.d/apache2 restart

Para instalaciones manuales desde los fuentes (válido para cualquier distribución Linux) previamente hay que tener instalado el servidor Apache y PHP, en este escenario, vamos a suponer que ambos programas los tenemos instalados en /usr/local, es decir:
/usr/local/apache
/usr/local/php


Ahora nos bajamos la última versión del APC de la web oficial. (actualmente la 3.0.19)

http://pecl.php.net/package/APC/

// Como usuario normal

$ cd /tmp
$ wget http://pecl.php.net/get/APC-3.0.19.tgz
$ tar xvfz APC-3.0.19.tgz
$ cd APC-3.0.19
$ /usr/local/php/bin/phpsize
$ ./configure --enable-apc --enable-apc-mmap --with-apxs=/usr/local/apache/bin/apxs --with-php-config=/usr/local/php/bin/php-config
$ make
// como usuario root
# make install

Esto nos instalará el módulo en /usr/local/php/lib/php/20060613/apc.so
Para la activación manual, editamos el fichero php.ini
# gedit /usr/local/php/etc/php.ini

Añadimos estas dos lineas alfinal del fichero php.ini:

extension=/usr/local/php/lib/php/20060613/apc.so (poner la ruta absoluta)
apc.enabled=1

Finalmente reiniciamos el servidor web
# apachectl stop
# apachectl start


Para verificar que está realmente activo el APC, podemos utilizar la linea de commandos de PHP o bien el módulo de Apache con una sencilla página PHP.

$ php -i | grep -i apc

O bien, crear una página estilo info.php:

<?php
phpinfo();
?>

Ambos commandos deberían de devolver respuesta confirmando la utilización del APC, por tanto, ya hemos logrado nuestro objetivo, nuestras aplicaciónes desde este momento y de manera transparente empezarán a utilizar el sistema de cache compilada en PHP.

De manera predeterminada, para la mayoría de usuarios las opciones por defecto son suficientes, en caso de querer experimentar comportamientos distintos, hay que leer las opciones de configuración que se deben añadir en el fichero php.ini e ir jugando con distintos valores hasta lograr los resultados esperados.

Salam Aleikoum!

Nov 18

Buenas noches:

Es mucha la gente, muchísima que me pregunta como se pueden desactivar los odiosos mensajes de Windows Vista que, al fin y al cabo, impiden que podamos instalar, desintalar, ejecutar o simplemente trabajar en la “joya de la corona” de Microsoft. El culpable de todo este embrollo es el Control de Cuentas de Usuario, en inglés abreviado con UAC.

El Control de Cuentas de Usuario es una tecnologia de seguridad introducida por primera vez en un sistema operativo de Microsoft. En teoría, su objetivo es el de mejorar las condiciones de seguridas mediante un software de aplicación que limita los priviliegios de usuario normal hasta que un administrador de sistemas (hola Ruben, hola Marius) aumenta los privilegios de este usuario. De esta manera, sólo las aplicaciones en las que el usuario confía, es decir, ese software que conocemos y nos instalamos dia a dia, como por ejemplo el Winrar o el Adobe Acrobat Reader, reciben mayores niveles de privilegios.

Pero al fin y al cabo, esto es un verdadero coñazo, pues la gente no son administradores de sistemas y no quieren poner niveles de privilegios ni prioridades de ejecución en sus aplicaciones del trabajo diario. Cabrea mucho y se pierde muuucho tiempo en ir “aceptando” o “permitiendo” la ejecución de los programas Y esto la gente, normalmente no sabe desactivar. Pues, a ello vamos:

  • Vamos al Panel de Control
  • Vamos a Cuentas de Usuario
  • Aquí veremos un enlace que nos dice “Activar o Desactivar Control de Cuentas de Usuario”
  • Dentro “destildamos” la opción activada de UAC y reiniciamos

I listos! Ya tenemos el UAC desactivado y una vez reiniciemos el Sistema Operativo, seguirá yendo igual de lento, pero almenos no nos hará perder el tiempo permitiendo/denegando la ejecución de los programas.

Para cualquier consulta o duda, por favor, no dudéis en poneros en contacto conmigo en dr_hard@ytuquelees.net.

Saludos

Nov 11

Muchas veces y por desgracia son más de las que nos gustarían, Windows nos da errores al inciar la carga del sistema operativo, conocidos como pantallazos azules, o Blue Screen Of Dead (BSOD, Pantalla Azul de la Muerte). La primera reacción que tenemos el 99% de los seres humanos es de maldecir los huesos de los programadores y acto seguido reiniciamos, pensando que el sistema se arreglará solito (y a veces así ocurre). Pero … alguna vez nos hemos molestado en leer las indescifrables causas de estos problemas ? Debido a mi trabajo, me he visto obligado a aprenderme cada uno de estos fallos para, de esta forma, poder solucionar mucho más rápido el problema.

Cabe decir también, que muchas veces justo cuando aparece el error, el sistema se reinicia solo y no nos da tiempo a leerlo. Para solucionar esto, deberemos deshabilitar el reinicio automático de Windows cuando hay un error. Para ello, justo depués de la carga de la BIOS, pulsamos F8 y nos aparecerá un menú de arranque con varias opciones. Seleccionamos la que pone “Deshabilitar el reinicio automático si hay un error en el sistema” y le damos al INTRO. Nos cargará el sistema operativo con normalidad y, cuando nos salte el error, se quedará la pantalla fija, pudiendo de esta forma leer y saber de donde proviene el problema.

A continuación, voy a definir la causa del problema y a explicar su posible solución. Recuerdo siempre a los usuarios de Windows que en muchas ocasiones la mejor forma de eliminar/solucionar el problema, es reinstalando el sistema operativo, incluso formatear.

• STOP 0×0000000A (IRQL_NOT_LESS_OR_EQUAL
EXPLICACIÓN: Este error indica que un proceso en modo kernel o un driver ha intentado acceder a una dirección de memoria para la que no tiene permisos. Se suele producir porque en el código hay un puntero que hace referencia a una parte de la memoria que no corresponde al proceso. Esto provoca una violación de la separación de procesos en Windows y una parada para evitar que se sobrescriba código o datos de otro proceso.
SOLUCIÓN: Eliminar el driver que causa el fallo (normalmente el último driver instalado) y instalar un driver nuevo.

• STOP 0×0000001E (KMODE_EXCEPTION_NOT_HANDLED)
CAUSA: Drivers incompatibles o mal hechos, software con fallos graves, hardware defectuoso.
EXPLICACIÓN: El administrador de excepciones del kernel ha detectado que un proceso ha intentando ejecutar una instrucción inválida.
SOLUCIÓN: Lo mismo que el caso anterior. Reinstalamos driver (tanto haciendo un upgrade o degradando la versión del driver). Si el fallo es de software, eliminarlo (mediante el Modo a Prueba de Fallos) e instalar otro nuevo. Si es de hardware, reemplazarlo.

• STOP 0×00000024 (NTFS_FILE_SYSTEM)
CAUSA:
Disco duro dañado, cables en mal estado, sistema de ficheros dañado
EXPLICACIÓN: Windows no puede acceder a la partición NTFS donde están sus ficheros
SOLUCIÓN: Con el Hiren’s Boot (explicado en este post), cargar el programa HDD Recovery para recuperar los sectores del disco duro defectuosos. En su defecto, se puede hacer un CHKDSK con los parámetres /F /R. Si aún así falla, deberemos fijarnos si al cargar el programa HDD Recovery detecta que el primer sector del disco está dañado. Si es así, poco hay por hacer a menos que no sea cambiar el disco.

• STOP 0×00000050 (PAGE_FAULT_IN_NONPAGED_AREA)
CAUSA: Drivers incompatibles, software incompatible, RAM defectuosa, placa o tarjeta defectuosas
EXPLICACIÓN: Un driver o programa ha solicitado una página de una dirección de memoria inválida.
SOLUCIÓN: Siempre es muy recomendable instalar los drivers directamente de la web del fabricante o de algun gestor de drivers de pago (www.driveragent.com). En este caso, reinstalamos los drivers de la placa o dispositivo correspondiente y listos. Si no funicona, eliminamos el software y le pasamos un testeador de memoria RAM (en el Hiren’s Boot, podemos encontrar algunos de muy buenos), Si aun así sigue fallando, la placa base o la targeta del dispositivo (sea Firewire, USB, gráfica, Capturadora TV, de red, wireless …..) deberemos reemplazar el hardware por uno nuevo.

• STOP 0×00000077 (KERNEL_STACK_INPAGE_ERROR)
CAUSA: Possible sector defectuoso en el archivo de intercambio, los cables IDE defectuosos o directamente un virus
EXPLICACIÓN: Una página de memoria solicitada por el kernel no ha podido ser leída del fichero de intercambio a la RAM.
SOLUCIÓN: Regenerador de sectores de disco duro, sea con HDD Recovery o sea con CHKDSK con las opciones /F /R. Cambio de los cables IDE por unos de nuevos o revisar la conexiones de los mismos. Si se trata de un virus, sacar el disco duro del PC y conectarlo a otro PC y des de allí limpiarlo.

• STOP 0×0000007B (INACCESSIBLE_BOOT_DEVICE)

CAUSA: Se ha cambiado la placa base mateniendo el disco duro o se ha cambiado el disco duro (con los ficheros del sistema) a otro PC. También puede ocasionarlo un virus
EXPLICACIÓN: Windows no puede encontrar la partición donde están sus ficheros. Es una situación parecida a la del error 0×000000ED y esto se debe a que cuando instalamos Windows, este nos detecta el hardware que tenemos y no puede arrancar porque el hardware detectado no es el original de cuando lo instalamos.
SOLUCIÓN: Averiguar que versión de Windows tenemos (XP Home, XP Professional o VISTA) y hacer una reinstalación del sistema sin perdida de datos, explicado en este post.

• STOP 0×0000007E (SYSTEM_THREAD_EXCEPTION_NOT_HANDLED)

CAUSA: Drivers o software incompatibles, BIOS incompatible, hardware incompatible
EXPLICACIÓN: Un proceso del sistema ha generado una excepción que no ha sido procesada por el administrador de excepciones.
SOLUCIÓN: Si el error se produce al conectar un dispositivo USB, es porque el bus USB está siendo utilizado al 100% ya. Conectar ese dispositivo en otra controladora USB o parar el otro dispositivo antes de conectar el nuevo.Si el error es en Kbdclass.sys, es provocado por la utilidad Logitech iTouch. Si no se produce por conectar ninguno de estos dos dispositivos, lo que nos queda es desconectar el último dispositivo que hayamos instalado. En segundo lugar y como recomendación, actualizar la BIOS.

STOP 0×0000007F (UNEXPECTED_KERNEL_MODE_TRAP)
CAUSA: Hardware defectuoso, normalmente RAM o placa base, software incompatible
EXPLICACIÓN: Un proceso del kernel o un driver se ha encontrado que no hay suficiente espacio en el stack para efectuar la operación que pretendía.
Una de las causas más frecuentes es Norton Antivirus.
SOLUCIÓN: Si la causa del problema es el Norton Antivirus, acceder a Modo a Prueba de Fallos y eliminarlo des de allí con Revo Uninstaller o con la propia herramienta de desintalación de Norton. Si no tenemos instalado Norton Antivirus, desintalamos el último software que hayamos instalado (recordad, modo a prueba de fallos siempre) y, si aun así persiste el error, no nos queda más remedio que probar de cambiar la RAM. Si sigue fallando, se deberá cambiar la placa base.

• STOP 0×0000008E (KERNEL_MODE_EXCEPTION_NOT_HANDLED)
CAUSA: Hardware, drivers o BIOS incompatible. Lo más habitual es RAM defectuosa o drivers de nvidia.
EXPLICACIÓN: Un proceso del kernel ha producido una excepción no procesada por el administrador de excepciones. Es similar al error 0×0000007F.
SOLUCIÓN: Más de lo mismo. Accedemos a Modo a Prueba de Fallos, eliminamos los drivers del chipset de nVidia. Si sigue sin funcionar, actualizamos la BIOS a la ultima versión. Por norma general, este error se produce cuando instalamos los drivers del chipset nVidia en placas MSI (por propia experiencia). Estas placas, el chipset debe de ser muy muy concreto y nunca lo descarguéis ni instaléis des de la web de nVidia, siempre de la web del fabricante. Si es hardware, el problema vienen dado, normalmente por la targeta gráfica.

• STOP 0×0000009F (DRIVER_POWER_STATE_FAILURE)
CAUSA: Driver que no funciona correctamente con las funciones de ahorro de energía
SOLUCIÓN: Desinstalar el último driver asntes del error y buscar mediante el chipset del hardware (realtek, haupagge, nvidia, VIA, C-Media, etcétera) el driver necesario o actualizado directamente de la página del fabricante. Recordad que a veces el driver actualizado no es el que mejor funciona.

• STOP 0×000000C2 (BAD_POOL_CALLER)
CAUSA: Driver o software mal hecho
SOLUCIÓN: Aquí poco se puede hacer. O se busca otro driver o se busca otro software.

• STOP 0×000000EA (THREAD_STUCK_IN_DEVICE_DRIVER)
CAUSA: Driver, típicamente el de la tarjeta gráfica, mal hecho
EXPLICACIÓN: El driver ha entrado en un ciclo sin fin, repitiendo las mismas instrucciones una y otra vez.
SOLUCIÓN: Probar con el driver actualizado. Si el fallo lo ha dado con ese driver, degradar el driver una o dos versiones. Normalmente son ATI o nVidia.

• STOP 0×000000ED (UNMOUNTABLE_BOOT_VOLUME)
CAUSA: Cambio de placa base o controladora de discos, los cables IDE son defectuosos o inadecuados, cambios en la conexión de los discos
EXPLICACIÓN: Windows no puede acceder a la partición donde están sus ficheros.
SALUCIÓN: Este problema se solucina de la misma manera que el  STOP 0×0000007B (INACCESSIBLE_BOOT_DEVICE) anteriormente explicado. Se debe a que hemos instalado un hardware nuevo sin reinstalar el Sistema Operativo. La reinstalación del mismo (sin afectar a la estructura de ficheros personales del disco) solucionará el problema. Si persiste, cambiar los cables IDE/SATA.

Como podéis ver, no siempre cuando sale un problema en Windows debemos de tirarnos de los pelos y ponernos nervioso. Con solamente leer el problema y tener un buen apoyo (que al fin y al cabo es lo que intento para todos vosotros) se puede solucionar sin perder la información que teníamos almacenada, ya sea fotos o documentos. Esta claro que Windows es un sistema operativo muy inestable, pero a la par, sus problemas son fácilmente detectables y algunas veces fácilmente solucionables. Antes de formatear y perder de 2 a 4 horas de nuestro tiempo, aparte de tooooda la información, lo mejor que podemos tener es paciencia y serenidad. Poco a poco iré colgando más posts con los problemas más frecuentes en Windows.

Aun así, si tenéis dudas o problemas, poneros en contacto conmigo en dr_hard@ytuquelees.net.

Saludos!

Nov 11

Buenas noches:

Esta tarde, me he encontrado con un problema bastante curioso. Me ha llegado a mis manos un portátil con un Windows XP Home instalado que no podía cargar el Sistema Operativo. Cuando, en teoría, el sistema debería de haber cargado, salía el siguiente mensaje:

STOP:C0000135{ unable to locate DLL }

El sistema no podía cargar porque no encontraba la librería dinámica (DLL) winsrv.dll. La principal solución para estos caso (y en la mayoría de los problemas de Windows), es la de reinstalar el sistema operativo pero, cuando falla una dll, lo fácil es copiarla de nuevo y listos.

Pero … si la solución es tan obvia, ¿por qué este post? Muy sencillo señores. El problema de este fallo se debe al antivirus AVG y su incompatibilad con el Sercvice Pack 2 de Microsoft. AVG, cuando se actualiza a su versión 7.5 detecta que el user32.dll y el winsrv.dll son troyanos en el sistema y, directamente, los elimina o los bloquea del registro, haciendo que el sistema de arranque no los detecte y no pueda cargar el Sistema Operativo.


La solución: más sencilla de lo que parece. Vamos a ello:

PASO 1: Accedemos al Sistema Operativo en “Modo a prueba de fallos”, pulsando F8 justo después de que la BIOS haya terminado de cargar. Pulsamos la opción “Modo Seguro” y cargamos Windows.

PASO 2: Vamos a Inicio -> Panel de Control -> Agregar/Quitar Programas y eliminamos el AVG Antivirus System. La mayor “ventaja” de este antivirus es que no utiliza las librerías Windows Installer 3.1, deshabilitadas en el Modo a Prueba de fallos. Si, por lo que sea, no podemos desinstalarlo nos descargamos un genial programa de desintalación llamado Revo Uninstaller. Sin ningún problema lo podremos instalar y ejecutar en modo a prueba de fallos.

PASO 3: Reiniciamos y cambiamos la configuración de la BIOS para el PC arranque des de el CDROM.

PASO 4: Ponemos el CD de instalación del Windows XP. Esperamos que cargue todos los ficheros iniciales de la instalación y en cuanto nos salga el primer menú, pulsamos la R de “Reparar”.

PASO 5: Esperemos a que termine de cargar la consola de recuperación y, una vez hayamos seleccionado la partición y el password de administrador (por defecto es la opción 1 y sin password), buscamos nuestra unidad de CDROM (d:, e:, f: ….) y ejecutamos el siguiente comando:

  • d:\expand d:\i386\winsrv.dl_ c:\WINDOWS\system32\
  • d:\expand d:\i836\user32.dl_ c:\WINDOWS\system32\

Vamos a explicar este paso: fijaros que la extensión no es dll sinó que es dl_. Esto es porque los ficheros de Windows vienen “comprimidos” y lo que hacemos es “expandir” (descomprimir) el archivo *.dl_ en uno que será *.dll. Tened también en cuenta que se deben de respetar las mayúsculas y las minúsculas.

En ambos casos, nos pedirá si queremos sustituir el fichero existente. Le decimos que Si.

PASO 6: Reiniciamos el PC y listos. El Windows debería arrancar sin nigún tipo de problema.

Si tenéis cualquier consulta o duda, podeis poneros en contacto conmigo en dr_hard@ytuquelees.net.

Gracias y espero haberos ayudado.

Saludos.

Nov 9

Mucho se habla de si Microsoft dejará de dar soporte a Windows XP, peró la gente se olvida que cuando hay dinero por medio, todo vale, y al parecer Microsoft seguia vendiendo licencias de Window 3.x hasta el 1 de noviembre de 2008, dónde finalmente ha dejado de ofrecer soporte oficial, dejando 2 décadas al sistema operativo de 1990.



Los usuarios de Windows XP, pueden estar algo más tranquilos después de leer esta noticia, mínimo va a estar soportado hasta el 2014 :)

Más info: http://news.bbc.co.uk/1/hi/technology/7707016.stm

Nov 2

El otro dia, me encontré con un problema que por desgracia es bastante común en los sistemas windows y que nos dan muchos quebraderos de cabeza. ¿Qué pasa cuando el administrador de impresión nos dice que no puede imprimir documentos?  Es decir, cuando se atasca la cola de impresión.

Normalmente este problema se soluciona abriendo el administrador de impresión (Inicio -> Panel de Control -> Impresoras y Faxes -> Seleccionamos la impresora y hacemos doble click. Aquí nos mostrará los documentos que actualmente se estan imprimiendo. Hacemos click con el botón derecho y pulsamos “Cancelar”

Si aún haciendo esto, los documentos no se cancelan y seguimos teniendo el mismo problema, pulsamos sobre “Archivo” y seleccionamos “Cancelar todos los doucmentos”.

Si, aún así (y es frecuente) no funciona, paramos la impresora y reiniciamos el pc. De esta manera, en teoria vaciamos la cola de impresión, tanto del pc como de la impresora y, a veces puede que una vez reiniciado, al volver a conectar la impresora se imprima el documento que teníamos atascado.

Pero, me gustaría enseñaros una forma de cancelar TODOS los documentos de golpe, rápida y efectiva: eliminando manualmente los documentos en la cola de impresión. Para ello, abrimos la ventana de ejecución de programas (Inicio -> Ejecutar) y ponemos este path:

C:/WINDOWS/system32/spool/PRINTERS

Aquí nos encontraremos una serie de ficheros con extensión SHD y SPL. Si los eliminamos así por las buenas, nos dará un error porque el servicio de cola de impresión aun está activo y deberemos pararlo. Para ello vamos a Inicio -> Ejecutar y ponemos “services.msc”, buscamos el servicio de “Cola de impresión” y lo detenemos.

Una vez hayamos detenido el servicio, volvemos a la ventana donde tenemos los archivos de la cola de impresión, y ahora si que los podremos aliminar sin ningún tipo de problema y, de esta forma podemos volver a imprimir esos documentos que se atascaron. Cabe decir, que muy frecuentemente los documentos que se atascan son corruptos o estan dañados. Es decir, si una vez hecho todo esto, vuelve ha aparecer el mismo problema, es más que seguro que el documento es corrupto o está dañado.

Espero haberos ayudado. Para cualquier consulta dr_hard@ytuquelees.net