domingo, 25 de noviembre de 2012

Obtener el nombre del host y la ip de una maquina con C++ y boost

Para obtener la direccion IP de una máquina en C++:
#include <netdb.h>
#include <arpa/inet.h>

char szBuffer[1024];
if(gethostname(szBuffer, sizeof(szBuffer)) != 0)
{
    std::cout << "error en gethostname" << std::endl;
}
else
{
    struct hostent *host = gethostbyname(szBuffer);
    if(host == NULL)
    {
        std::cout << "error en gethostbyname" << std::endl;
    }
    else
    {
        char * szLocalIP;
        szLocalIP = inet_ntoa (*(struct in_addr *)*host->h_addr_list);
        std::cout << "mi nombre de host es "<< host->h_name <<" y mi ip con c++   es " << szLocalIP << std::endl;
    }
}

Con boost:
#include "boost/asio.hpp"
using boost::asio::ip::tcp;

boost::asio::io_service io_service;
tcp::resolver resolver(io_service);
tcp::resolver::query query(boost::asio::ip::host_name(), "");
tcp::resolver::iterator iter = resolver.resolve(query);
tcp::resolver::iterator end; // End marker.
while (iter != end)
{
    tcp::endpoint ep = *iter++;
    std::cout << "mi nombre de host es " << boost::asio::ip::host_name() << " y mi ip con boost es " << ep.address() << std::endl;
}

viernes, 9 de noviembre de 2012

Convertir std:string a mayusculas o minusculas con stl

#include <algorithm>
#include <string>

//Para convertir a minuscula:

std::string str("Hola Caracola"),final("");
final.resize(str.length());
std::transform(str.begin(),str.end(),final.begin(),::tolower);
std::cout << "str= \"" << str << "\" final = \"" << final << "\""<< std::endl;


//Para convertir a mayuscula:
std::transform(str.begin(),str.end(),final.begin(),::toupper);
std::cout << "str= \"" << str << "\" final = \"" << final << "\"" << std::endl;


Salida:
str= "Hola Caracola" final = "hola caracola"
str= "Hola Caracola" final = "HOLA CARACOLA"
  

sábado, 3 de noviembre de 2012

Limpieza imposible. Error 46 en Brother MFC-540CN

Problema:

Al encender la impresora Brother MFC-540CN salía en pantalla el mensaje "Limpieza imposible" o "Error 46".

Solución:

Para resolver el problema de "Limpieza imposible" en la Brother MFC-540CN solo debemos resetear el contador de impresión, para ello hacemos lo siguiente:

1.- Desconectamos el cable usb de la impresora y también el de alimentación.
2.- Presionamos el botón de "Menú" y lo mantenemos pulsado, sin soltarlo conectamos el cable de alimentación y la impresora se encenderá, cuando veamos el mensaje "MAINTENANCE" soltamos el botón de "Menú".
3.- Pulsamos la tecla "arriba" hasta que veamos en pantalla el número "8" y pulsamos "Fijar".
4.- Pulsamos la tecla "arriba" hasta que veamos "0" y pulsamos "Fijar".
5.- Pulsamos la tecla "Inicio/Negro" hasta que veamos "PURGE:06414".
6.- Pulsamos la tecla "arriba" hasta que veamos en pantalla el número "2" y pulsamos "Fijar". Repetimos este paso con el número "7", "8", "3".
7.- Veremos que el contador ahora pone "PURGE:00000". Pulsamos el botón "Detener/Salir".
8.- Pulsamos la tecla "arriba" hasta que veamos en pantalla el número "9" y pulsamos "Fijar", repetimos este paso, también con el número "9".

La Brother DCP-115C se reiniciará y desaparecerá el error de "Limpieza imposible" o "Error 46".

fuente: http://www.diariomatica.com/2011/07/115-limpieza-imposible-error-46-brother.html

domingo, 21 de octubre de 2012

Clonar particion de Windows con clonezilla de imagen en DVD a disco duro

  1. Arrancar con cd de arranque de clonezilla (en el mimo cd/dvd esta la imagen de clonezilla a clonar). Si no está en el mismo cd/dvd, debemos arrancar con clonezilla con un usb y meter en el lector de cd/dvd el cd/dvd con la imagen de clonezilla
  2. Elegir tipo y distribucion de teclado
  3. Clonezilla => device/image
  4. Montar directorio de imagen clonezilla => skip
  5. Comprobar en otro terminal ( Ctrl + Alt + F2 y convertirse en root con sudo su), que clonezilla ha montado el cd/dvd en /live/image. Si no lo ha hecho, hacerlo a mano con mount /dev/cdrom /live/image. Si no existe /dev/cdrom, poner /dev/sr0
  6. Crear un enlace simbolico en /home/partimag del directorio que contiene la imagen de clonezilla en el cd/dvd con "cd /home/partimag; ln -s /live/image/directorio_imagen ."
  7.  Volvemos al terminar 1 con Ctrl + Alt + F1
  8. Clonezilla - OpenSource Clone System =>Beginner
  9. Elegir Modo => restoreparts
  10. Imagen de clonezilla => debe salir el contenido de /home/partimag
  11. Elegir particion destino => en mi caso /dev/sda1
  12. Yes al resto de preguntas.

domingo, 30 de septiembre de 2012

Clonar discos duros o particiones con dd en Linux

Voy a explicar como clonar un disco duro en otro o una particion de un disco duro en otra partición de otro disco duro en Linux con el comando dd.
¿Para qué nos sirve esto? Cuando una partición de un disco A se nos ha quedado pequeña y queremos pasar todos los datos de esa partición a otra particion de otro disco duro B con mas espacio.
Lo primero que necesitamos es arrancar con cualquier distribucion Live CD de Linux (Ubuntu, Knoppix,...etc  cualquiera sirve porque todas tiene en comando dd).
Supongamos que tenemos una particion 1 en un disco duro A con los datos que queremos copiar a la otra particion del disco duro B.
Y también tenemos otro disco duro B nuevo (sin particiones)
Lo primero que tenemos que hacer es crear una partición en el disco duro B con (MUY IMPORTANTE) al menos el mismo espacio o más que la particion 1 del disco duro A.
Ahora necesitamos distinguir claramente cuales son las particiones del disco duro A y las del B.
Algunas ditribuciones (como el Mini Linux de HBCD y otras muchas) al arrancar nos meten en el fichero /etc/fstab una entrada por cada particion de cada disco duro que ha encontrado; haciendo cat /etc/fstab veremos esta informacion. Por ejemplo podria se algo asi:
/dev/sda1      /mnt/sda1   .......
/dev/sda2      /mnt/sda2  ........
/dev/sdb1      /mnt/sda1   ......
La primera linea indica que ha encontrado la primera particion del disco 1 en /dev/sda y se puede montar para ver sus datos en el directorio /mnt/sda1. Para montar esta particion y poder ver los datos podemos ejecutar mount /dev/sda1 y entrando en /mnt/sda1 veremos los datos de esta partición. Igual con las demás.

Supongamos que queremos pasar los datos de la particion del disco sda1 a la del disco sdb1. Pues para esto ejecutamos:
dd if=/dev/sda1 of=/dev/sdb1 bs=1M
Si la particion sda1 era una particion de arranque y queremos quitar el disco duro A y dejar solo el B, tenemos que copiar tambien el MBR(Master Boot Record) en la particion sdb1.
Esto se hace con el comando:
dd if=/dev/sda1 of=/dev/sdb1 bs=1M count=1 bs=512
Con esto ya podriamos arrancar solo con el disco duro B que contiene exactamente lo que contenía A pero tiene mas espacio.
El comando tambien sirve para otras cosas como :
-Copiar un disco duro entero (con todas sus particiones) en otro:
dd if=/dev/sda of=/dev/sdb bs=1M
-Crear una imagen de una particion de un disco duro en un fichero:
dd if=/dev/sda1 of=particion_sda1.bin
-Crear la imagen comprimida:
dd if=/dev/sda1 | gzip > of=particion_sda1.bin.gz
-Crear una imagen de un CD o DVD con problemas de lectura debido a que esté rayado:
dd if=/dev/cdrom of=/tmp/dvd_recuperado.iso conv=noerror,sync
-Eliminar el MBR sin alterar la tabla de particiones. Esto sirve para eliminar del disco el GRUB sin tocas las particiones:
dd if=/dev/zero of=/dev/sda bs=446 count=1

 

 

domingo, 23 de septiembre de 2012

Chequear sectores defectuosos de un disco duro

Lo mejor para chequear un disco duro es arrancar el PC con una distribución Linux live como Ubuntu, Knoppix, SystemRescueCD, etc.... para asi no tener montadas las particiones a chequear, ya que las herramientas se deben ejecutar sin montar las particiones.
El chequeo a realizar depende si la partición a chequear es de Linux (extX) o Windows (ntfs o fat).

Para chequear particiones de Linux,yo utilizo tres herramientas basicamente: badblocks, e2fsck y la otra hdck (esta tambien sirve para windows).

Badblocks viene por defecto en la mayoria de las distribuciones Linux como Ubuntu, Knoppix y otras muchas...sobre todo live cd.
Lo básico para utilizar esta herramienta es:

Para realizar solo un chequeo (solo se realizan lecturas de los sectores):

badblocks -b 4096 -c 98304 -s /dev/hda1

-b indica el tamaño de bloque, que por defecto es 1024.
-c indica el numero de bloques a testear en paralelo. Este parametro debemos ajustarlo según la RAM que tengamos en el ordenador.
Si no sabemos cuanta memoria RAM tiene el ordenador se puede obtener con el comando free -m.
Para calcular c debemos usar la formula
Cantidad de memoria en MB * 3 / 32
Por ejemplo: si tenemos un 1GB de RAM, entonces los calculos son 1024 * 3 / 32 = 96 MB.
Entonces el valor maximo de c debe ser 96 * 1024 = 98304
-s indica que se muestre el progreso del chequeo en  %

Aunque lo mas recomendable es usar el siguiente comando, que destruye los datos del disco duro porque el chequeo consiste en lecturas y escrituras de los sectores.

badblocks -b 4096 -c 98304 -w -s /dev/hda1

-w indica que se realice el test en modo de escritura. IMPORTANTE: este modo escribe en los sectores por lo que destruye los datos del disco duro. Si solo quieres chequear el disco duro y no quieres perder los datos NO uses esta opción.
Aunque siempre que se pueda se debe utilizar esta opción para que el chequeo sea completo; lectura y escritura.....pero repito, NO USAR ESTA OPCION SI NO SE QUIEREN PERDER LOS DATOS.

El ultimo parametro  es la particion sobre la que queremos realizar el chequeo.(hdaX, sdaX, etc....)

Otras opciones de badblocks son:
-e max_error  : indica que se pare el test cuando se encuentren max_error  de bloques erroneos en el disco.
-n : indica que se va a realizar el chequeo con lecturas y escrituras pero estas no serán destructivas, es decir, no borra los datos. Esta opción hace el chequeo mas lento que la opcion w.

Si la partición es de Linux, tambien podemos usar el comando e2fsck que tambien usa badblocks:

e2fsck -vccf /dev/sda1


La otra es hdck disponible en http://sourceforge.net/projects/hdck/
Como no está disponible en la mayoria de distribuciones Linux, lo mejor es descargar la ultima version de sourceforge, compilarla y ejecutarla. Para hacer esto, la descargamos de sourceforge, la descomprimimos con tar zxvf  hdck-0.5.0.tar.gz, entramos dentro del directorio descomprimido y la compilamos ejecutando make.
Esto genera el binario hdck.
Para ejecutar el analisis de un disco duro simplemente ejecutamos:
./hdck  --quick  --file  /dev/sda -l fichero.log
En el parametro --file se puede indicar un fichero, una particion (sda1) o un disco completo (sda)
Si quitamos la opcion --quick, realiza mas lecturas sobre los sectores.
La opcion -l o --log indica un fichero donde guardar el log de lo que ha realizado hdck.
Al cesar lo que es del cesar.....la primera vez que lei sobre hdck fue en http://www.sysresccd.org/forums/viewtopic.php?f=6&t=4114


Para chequear particiones Windows, lo mejor es utilizar la herramienta de Windows chkdsk.
Lo mejor es arrancar con el menu de windows pulsando F8 antes de arrancar windows y elegir MS-DOS o con un live cd que tenga esta herramienta como Hirens Boot CD y seleccionar la opcion Dos BootCD del menu de arranque.
Entre ellas (según la version del Hirens BootCD) habrá opciones de chequer el disco, opciones de NTFS o NTFS DOS PRO.
En la version 13.2 de HBCD para ejecutar el chkdsk hay que acceder a los siguientes menus:
1- DOS PROGRAMS en el menu inicial.
2- 9. Next...
3- 4. NTFS Ext2ES, (FileSystem) Tools
4- 1. NTFS4DOS 1.9
5- Nos pregunta si queremos ejecutar chkdsk. Respondemos que si
6- Nos pregunta si queremos ejecutar NTFS4DOS? Respondemos que si.

Tambien se puede ejecutar de la linea de comandos 
Una de ellas nos permitirá ejecutar el comando chkdsk indicando la unidad a chequear y las opciones:
/P Chequea el disco y corrige errores.
/R Chequea el disco, corrige errores, localiza sectores dañados y trata de recuperar la información que sea posible.
/F Corrige errores en el disco.

Por ejemplo: CHKDSK C: /R
Aqui hay  bastante informacion de chkdsk.
Esta web tambien explica como ejecutar el chkdsk antes de iniciar windows con el comando chkntfs (chkntfs unidad  /C) o como quitar este chequeo (chkntfs unidad /X) o tambien se puede hacer desde el registro ( cambiando HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager el valor BootExecute por "autocheck autochk *" )

Esta web nos explica como ver el log del chkdsk si este se ejecuta antes de arrancar windows.

Otras herramientas de chequeo:
-HDTune: HD Tune is a hard disk utility with many functions. It can be used to measure the drive's performance, scan for errors, check the health status (S.M.A.R.T.), securely erase all data and much more. Incluido en Hirens Boot CD
-HDAT2: HDAT2 is program for test or diagnostics of ATA/ATAPI/SATA, SSD AND SCSI/USB devices. Incluido en Hirens Boot CD
-HDD SCAN:  HDDScan is a freeware utility for hard drive diagnostics (RAID arrays, Flash USB and SSD drives are also supported). Incluido en Hirens Boot CD
- HDDRegenerator ( es de pago pero la version del Hirens Boot CD es gratuita):  HDD Regenerator is a unique program for regeneration of physically damaged hard disk drives. It does not hide bad sectors, it really restores them!
En el HBDC esta en Menu de Arranque -> DOSPROGRAMS -> 8. Custom Menu... -> 5. HDDRegenerator.
- TestDisk







domingo, 16 de septiembre de 2012

Instalar modulo PKCS#11 para cifrado digital en thunderbird


El modulo PKCS#11 es necesario para utiliar los Certificados de Usuario en tarjeta generados por Ceres FNMT.
Si al utilizar un certificado digital para cifrar o firmar un email en Thunderbird ocurre algún fallo, es posible que instalando este módulo se solucione.
El FNMT, en su area de descarga de software (http://www.cert.fnmt.es/index.php?cha=cit&sec=9&page=80&lang=es) indica que descargando el ejecutable insmodcripc2v1720 (para 32 o 64 bits) e instalandolo, tambien se instala el modulo PKCS#11.
Esto es lo que indica en la web.

La FNMT-RCM ha desarrollado un instalable que integra todos los elementos necesarios para el funcionamiento de los Certificados de Usuario en tarjeta. Los elementos que se instalan son:
  • Software básico manejo de la tarjeta, desbloqueo de la tarjeta y cambio de PIN.
  • Módulo PKCS#11, para trabajar en Netscape.
  • Módulo CSP, para trabajar con Internet Explorer.
Yo lo instalé pero no encontraba la librería pkcsv2gk.dll de Cryptokit que debía estar en c:\windows\system32 para lanzar el modulo PKCS#11 según indica el manual de instalacion del modulo criptografico de CERES.
Decidí buscar la librería en la página oficial de Cryptokit que indica CERES en Soporte Tecnico y me descargue la ultima version de Cryptokit del area de descargas y la instalé.
Después de reinicar, la librería pkcsv2gk.dll si estaba en el directorio c:\windows\system32 y ya pude cargar el móduo PKCS#11.



Enviar emails cifrados con thunderbird

Para cifrar emails en thunderbird, lo primero que hay que hacer es añadir nuestro certificado digital al thunderbird. Para ello vamos a realizar los pasos que se indican en esta otra entrada de este blog, en la que se indica como enviar emails firmados digitalmente con Thunderbird y al principio indica como añadir los certificados digitales necesarios. (http://sergioalesab.blogspot.com.es/2012/09/firmar-emails-con-thunderbird.html)

Ahora, para cifrar un email que queremos enviar a otra persona, ademas de nuestra firma digital tambien necesitamos la clave pública de la otra persona.
¿Para que? Pues porque cuando se envia un email cifrado a una persona, nosotros (en este caso thunderbird) ciframos la informacion que enviamos a la otra persona con su clave publica y cuando la persona reciba este mensaje, solo ella podrá descrifrarlo con su clave privada.
En esto consiste la infraestructura de clave publica (PKI); nuestra firma digital tiene una clave publica y otra privada.
La clave pública sirve para que otros puedan cifrar mensajes que solo nosotros podremos descifrar con nuestra clave privada.

¿Y como conseguimos la clave pública de la otra persona? Pues lo mas sencillo es diciendole a la otra persona que nos envie un email firmado digitalmente por esta persona. Al llegarnos este email, este contiene un fichero adjunto con su clave publica.
Si abrimos este email en Thunderbird, este mensaje de la otra persona, en la cabecera del mensaje, donde esta el asunto, la fecha, etc...hay un sobre blanco lacrado en rojo. Si pinchamos sobre este sobre, nos sale una ventana indicandonos que el mensaje esta firmado.

Pinchamos sobre "Ver certificado de la firma" y vemos todos los campos del certificado. Seleccionamos la pestaña Detalles y pulsamos sobre el botón Exportar y guardamos el fichero. Este fichero es un fichero con extension .crt que contiene la clave pública de la otra persona.

Tambien es posible que el sobre que veamos en la cabecera del email sea un sobre blanco con una interrogacion azul.

Esto tambien está bien, solo nos indica que la persona nos ha enviado el email con una direccion de correo como remitente pero su certificado digital contiene otra dirección de correo diferente.
¿Como es posible esto? Pues porque cuando la persona creo su certificado digital indicó una direccion de correo A pero esta persona tiene tambien otra cuenta de correo electronico B y ha enviado el email firmado con remitente esta segunda cuenta B.
De igual forma que antes, extramemos su clave publica en un fichero .crt.

Ahora que tenemos su clave publica tenemos que añadirla a Thunderbird.
En la version 15.0.1 de Thunderbird se hace a través de Herramientas -> Opciones -> Icono Avanzado -> Pestaña Certificados.
Pulsamos sobre Ver Certificados y seleccinamos la pestaña Personas.
Añadimos el certificado de la otra persona pulsando sobre Importar y seleccionamos el fichero .crt que hemos guardado antes.
Su certificado lo podemos ver en la pestaña Otros y pulsamos aceptar.

Ya lo tenemos todo para cifrar el mensaje y enviarlo pero antes es muy importante que comprobemos que el certificado de la otra persona ( su clave publica ) a la que le vamos a enviar el email cifrado contenga la misma direccion de email a la que nosotros vamos a enviar el email.
Si el sobre que habia en el mensaje firmado que nos ha enviado la otra persona estaba lacrado en rojo sabemos que esto si es asi, pero si el sobre aparecia con el signo de interrogacion azul tendremos problemas.
Para asegurarnos, comprobamos el email que contiene el certificado digital (su clave publica) de la otra persona.
Para ello, nos vamos a los certificados digitales a través de Herramientas -> Opciones -> Icono Avanzado -> Pestaña Certificados.
Pulsamos sobre Ver Certificados y seleccionamos la pestaña Otros. Seleccionamos el certificado de la otra persona.
Pulsamos el boton Ver. Seleccionamos la pestaña Detalles.
En Campos del certificado buscamos la linea "Nombre alternativo del asunto del certificado" que se encuentra dentro de Certificado -> Extensiones.
Lo seleccionamos y en Valor del campo podemos ver la direccion de correo electronico que figura en el certificado.

Bien, pues a esta direccion de email es la unica a la que podemos enviar el email cifrado. Si no tuviera dirección, no podemos enviar un email cifrado a esta persona. Para poder enviar un email a esta persona, esta debería añadir su email a su certificado y volver a enviarnos un email firmado y hacer los pasos anteriores.

Ahora si que lo tenemos todo.
Para enviar el email cifrado, escribimos el email como siempre y ante de enviar el email buscamos el boton seguridad que hay en la parte de arriba de la ventana de envio de mensaje justo debajo del menu principal. A la derecha del boton seguridad hay una cabeza de flecha negra que despliega un menu del botón.
Pulsamos esa flechita y seleccionados Cifrar este mensaje.
Ya podemos darle a enviar el mensaje y el mensaje le llegará a la persona y ella será la única que podrá descifrar el mensaje.


Enviar emails con firma digital en thunderbird.

Firmar y cifrar emails con thunderbird.
Para firmar emails en thunderbird, lo primero que hay que hacer es añadir nuestro certificado digital al thunderbird.
En la version 15.0.1 de Thunderbird se hace a través de Herramientas -> Opciones -> Icono Avanzado -> Pestaña Certificados.
Pulsamos sobre Ver Certificados y seleccinamos la pestaña Sus Certificados.
Ahi debe aparecer nuestro certificado, si no está, lo añadimos pulsando sobre Importar seleccionamos el fichero de nuestro certificado.
Nuestro certificado es un fichero con extension .p12.
Yo el mío lo obtuve a traves de Ceres en FNMT (http://www.cert.fnmt.es/index.php?cha=cit&sec=4)

Para que nuestro certificado digital sea valido, debemos tener instalado el certificado digital de la autoridad de certificacion
que da validez a nuestro certificado. Como lo hemos obtenido FNMT debemos instalar su certificado raiz(FNMT Clas 2 CA).
Se puede descargar de su pagina https://www.sede.fnmt.gob.es/descargas/certificados-raiz-de-la-fnmt y el enlace directo es FNMTCalse2CA.cer.
Lo descargamos a nuestro disco duro y lo instalamos igual que hemos instalado nuestro certificado digital pero desde la pestaña Autoridades.
Pulsamos importar y seleccionamos el certificado raiz de FNMT que acabamos de descargar (FNMTClase2CA.cer).
Buscamos el certificado por el nombre (FNMT) (y lo expandimos en caso de que no este expandido) y seleccionamos la fila del elemento que tiene dentro con nombre FNMT Class 2 CA - FNMT. Una vez seleccinado, pulsamos sobre el boton Editar Confianza y nos aseguramos que esten seleccinado los tres elementos.

Una vez hecho esto, en la pestaña Sus certificados debemos ver nuestro certificado y en la pestaña Autoridades debemos ver, entre otros, el certificado del FNMT.
Pinchamos en aceptar para cerrar esta ventana.

Ya tenemos instalados los certificados, ahora hay que indicarle a Thunderbird que use nuestro certificado para firmar digitalmente un email.
Para ello pulsamos en el menu principal sobre Herramientas -> Configuracion de Cuentas.
En la cuenta que vamos a utilizar pulsamos sobre la seccion Seguridad.
Pulsamos sobre Seleccionar en Firma Digital y seleccionamos nuestro certificado.
Despues nos pregunta si queremos usar el mismo certificado para cifrar, le decimos que si (Aceptar).

Con todo esto ya podemos firmar un email con nuestra firma digital.
Para ello redactamos el email como se hace normalmente y antes de enviar buscamos el boton seguridad que hay en la parte de arriba de la ventana de envio de mensaje justo debajo del menu principal. A la derecha del boton seguridad hay una cabeza de flecha negra que despliega un menu del boton.
Pulsamos esa flechita y seleccionados Firmar digitalmente este mensaje.
Ya podemos darle a enviar el mensaje y se enviará con nuestra firma digital.

Posibles problemas:
- A mi me pasó cuando hice todos estos pasos en un ordenador con Windows7 y al enviar me daba el error "No se confia en el certificado porque el certificado emisor a caducado".
Si te ocurre este fallo asegate que has marcado las tres opciones del editor de confianza del certificado de autoridad del FNMT.
Si te sigue dando el problema, buscando por google el posible problema, encontre que la solucion podía ser instalar el modulo PKCS#11.
En esta entrada del blog (http://sergioalesab.blogspot.com.es/2012/09/instalar-modulo-pkcs11-para-cifrado.html) se indica como instalar este modulo.

viernes, 31 de agosto de 2012

Escaner Canon lide 200. No es posible seleccionar el origen Twain

Después de instalar los driver del escaner en un Windows XP (sin el escaner conectado por usb, una vez instalados los driver, si....conectar el escaner al usb) me encuetro la sorpresa de que la primera vez funcionó pero después, cada vez que le daba a escanear con la aplicacion de Canon que me creó un acceso directo en el escritorio (Canon ToolBox o algo asi parecido), abría la aplicación perfectamente pero al darle a escanera me daba el mensaje "No es posible seleccionar el origen Twain".
Comprobé que desde Panel de Control -> Escaner y cámaras estaba el scaner y al darle con el botón derecho sobre el icono y abrir Propiedades, había un botón para Probar escaner. Al pulsarlo, el escaner trabajaba y de decía que todo iba bien.
Buscando por Google, encontré que era debido a un problema de permisos del usuario de la aplicación de Canon.
Una posible solución era ir a "C:\Windows\twain_32\" y ver las carpetas que habían.
Yo tenia 2 con nombres parecidos a CNQL25 o algo parecido.
La solución indicaba que cogiera el nombre de la carpeta (C:\Windows\twain_32\CNQL25) y la metiera en la variables de entorno Path.
Esto, en Windows XP, se hace  pulsando botón derecho sobre Mi PC en el escritorio. Seleccinar la pestaña Opciones Avanzadas. Pulsar sobre el botón Variables de entorno. En Variables de sistema busar la variable Path y pulsar sobre Modificar. Irse al final del campo de texto Valor de Variable; Escribir todo junto ; (punto y coma) y el directorio C:\Windows\twain_32\CNQL25. Este no, el que tu tengas.Aceptar y reiniciar el ordenador.
Yo metí las dos, reinicié el ordenador y me siguió dando el mismo problema.
Entonces vi que dentro de unas de las dos carpetas había un programa ejecutable (con un icono de una impresora, no recuerdo el nombre) y al ejecutarlo se me habria el programa del escaner y funcinonaba perfectamente. Asi que creé un acceso directo de este programa en el escritorio y a funcionar.

viernes, 13 de enero de 2012

Crear usb autoarrancable desde iso y guardar usb autoarrancable en iso en Linux


Para crear una usb autoarrancable a partir de una imagen iso escribimos el comando:
sudo dd if=usb-image.iso of=/dev/sdb

Es importante asegurarse de que el usb es /dev/sdb con el comando dmesg.
Las ultimas versiones de Ubuntu tienen una aplicación para pasar una imagen .iso a un usb.
Se llama "Startup disk creator" y se accede desde Sistema -> Administracion -> Startup Disk Creator.
Tan solo hay que insertar el usb, seleccionar Format (es necesario formatear el usb primero), seleccionar la imagen .iso y pulsar sobre "Make startup disk"

Con el comando dd también podemos guardar su contenido en una imagen iso.
Esto se hace con el comando:

sudo dd if=/dev/sdb of=usb-image.iso

El problema de este comando es que, si por ejemplo, /dev/sdb es un pendrive de 4GB que contiene solo 500MB, el fichero usb-image.iso ocupará 4GB aunque los datos solo ocupen 500MB.

sábado, 7 de enero de 2012

Instalar Eclipse MarketPlace en Eclipse

Después de descargar e instalar la última versión de Eclipse (desde http://download.eclipse.org/eclipse/downloads/  a día de hoy, la última versión es la 4.1.1), ví que para instalar nuevos plugins, no tenía disponible el Eclipse MarketPlace.

Bueno, pués para instalarlo, hay que hacer los siguientes pasos:

  1. Help->Install New Software...
  2. Seleccionar el sitio de Indigo. (es el nombre de la version 4.1.1). Si no está disponible, añadirlo. El repositorio es http://download.eclipse.org/releases/indigo)
  3. Seleccinar dicho sitio.
  4. Buscar en "General Purpose Tools"->Marketplace Client
  5. Instalar y reiniciar Elipse y encontraremos el MarketPlace en "Help->Eclipse Marketplace..."