Skitergia

Parametrizando el mundo



Recuperando instalación de windows desde un USB

by Skiter on 12 mayo, 2015

Ayer me pidió un amigo una ayuda para instalar una imagen corporativa de windows en su portatil de empresa.Le habían dado un disco duro con la imagen para instalar (se entiende que con todo lo necesario para su trabajo dentro) y un CD de WinPE para arrancar lo minimo, en cualquier equipo, que permita instalar la imagen de sistema.

El problema estaba en que el nuevo ordenador no tenía unidad de CD (ni había una externa disponible) y solamente permitia el arranque de una memoria USB. Copiando el contenido del CD de WinPE a un pendrive USB, y seleccionando el modo de arranque adecuado en la BIOS, el sistema no arrancaba.

Esto es porque para que cualquier sistema de archivos pueda ser arrancable, bien sea un disco duro, un CD o DVD, o una memoria flash, hay que “configurarle las instrucciones1 para que el sistema sepa que tiene que arrancar desde ahi. Y esto lo hace mirando una sección de los datos del sistema de archivos del soporte llamada MBR. Dependiendo de las instrucciones que contenga el MBR, el sistema arrancará con los datos de la partición indicada, o “montará”2 el soporte como una unidad de almacenamiento más.

 

1-“Configurarle las Instrucciones”: forma sencilla, coloquial y poco precisa de explicarlo .

2-“Montar”: o “colocar” una unidad de disco en un lugar determinado para que sea accesible. Como ponerle el número a tu casa para que el cartero sepa que ahí pueden llegar cartas.

 

Para hacer esto, he encontrado un sencillo tutorial de Ubuntu, una distribución de linux, que se puede aplicar tambien para arrancar cualquier otro tipo de archivos o sistemas operativos, puesto que tira de una herramienta libre y multi-sistema llamada PendriveLinux. Descargando el programita (no requiere instalación, en windows al menos), podemos ejecutar una modificación del MBR de cualquier dispositivo USB para que sea arrancable, y luego ponerle dentro lo que nosotros queramos (una Ubuntu, un Windows, un WinPE para instalar o restaurar otro windows, un virus…), aparte de la opción por defecto en el tutorial de Ubuntu de cargarle directamente una imagen de sistema operativo arrancable.

 

Lo que también se puede hacer es simplemente hacer la partición arrancable, engañando al programita con un archivo ISO de imagen falso, y copiando luego de forma normal los archivos que queramos. En este caso, copiar y pegar los archivos que vienen en el CD de WinPE.

Para hacer esto, hay que seguir los siguientes pasos:

1-. Crear un archivo de texto en cualquier sitio y renombrarlo como extensión .iso.

ISO

2-. Descargar y ejecutar el programita PendriveLinux (aqui o aqui directamente). Tras pulsar en “I Agree” en los términos legales, el programa se ejecuta (sin instalación).

2015-05-12_115734

3-. En el primer desplegable, y único que se puede pinchar, seleccionamos de la lista el sistema operativo que se vaya a ejecutar en esa partición. En este caso, abajo del todo, Windows 7 installer.2015-05-12_1158314-. Tras esto, se activa el siguiente campo de texto donde seleccionaremos el archivo de imagen .iso falso que acabamos de crear.

2015-05-12_1201565-. Tras esto, se activa el desplegable del paso 3, para seleccionar la unidad externa en la que se quiere instalar todo.

2015-05-12_120315Es posible que no aparezca aqui la unidad deseada, si ésta no está reconocida como un dispositivo extraible, si está formateada en un tipo de archivo atípico, sin formato, etc. En ese caso, para ver todas las unidades visibles y no visibles, seleccionar el checkbox “Show all Drives”, pero con mucho cuidado, pues veréis también particiones de vuestro sistema operativo, de intercambio, y otras muchas posibles cosas que si las rompéis os pueden generar una catastrofe engorrosa en vuestro equipo.2015-05-12_1209086-. Se puede seleccionar, además, el formatear la unidad elegida. No siempre es necesario hacerlo, y si tenéis otros datos que queráis conservar, mejor no hacerlo.

7-. Al pulsar el botón “Create” aparecerán una serie de diálogos y barras de progreso mientras se modifica el MBR y se intenta copiar la imagen .iso que le hemos indicado. Este proceso fallará, ya que nuestro falso archivo de imagen está en realidad vacío, y nos dará un mensaje de error, pero no importa. El formato del MBR para hacer esa partición arrancable se habrá realizado.

8-. Una vez terminado el proceso, podremos ver la unidad conectada a nuestro equipo como un dispositivo extraible de almacenamiento cualquiera. A efectos prácticos, enchufado a cualquier equipo tras haberlo encendido, la memoria flash, el disco, CD o DVD que sea seguirá funcionando como cualquier otro. Unicamente si dejamos el USB/HD/CD/DVD enchufado al equipo antes de encenderlo, podremos arrancar el sistema que lleve esta nueva partición dentro al encenderlo3.

3- Es importante tener la BIOS del sistema configurada para arrancar de USB, unidad de CDo DVD en un orden de prioridad anterior al disco duro interno del equipo, y/o pulsar la tecla signada al prompt de selección de menú de arranque (generalmente F12 nada más encender el equipo), para poder seleccionar el arranque desde USB o CD/DVD. Es muy sencillo, pero no lo explicaré aqui para no alargarme más.

Recuperar el registro de Windows de un disco duro viejo

by Skiter on 19 julio, 2013

Recientemente he cambiado el disco duro de un equipo, porque empezaba a dar problemas de rendimiento y antes de que se terminase de estropear, lo he puesto en una caja USB para poder sacar los datos cuando instale de nuevo Windows en un disco nuevo. Pero aún asi, algunos datos se han perdido, porque estaban en el registro de windows, que inicialmente parece que solo se puede consultar si está ese windows ejecutandose.

Como por ejemplo, las sesiones guardadas del WinSCP. Y es justo en la ayuda online de este programa donde hay una solución muy sencilla al problema, utilizando otro programita muy útil: el RFV o MiTeC Windows Registry File Viewer.

[caption id="attachment_2457" align="aligncenter" width="774"]2013-07-19_201250 Por si el repositorio original del archivo desapareciera, dejo el archivo del programa también subido aqui en Skitergia (LeS) [/caption]

.

1-. Descargamos el programa y lo ejecutamos (si lo queréis ejecutar en Windows 7, tendréis que activarle la compatibilidad con Windows XP en las propiedades del ejecutable)

2-. Localizamos el archivo de registro en nuestro disco duro (el viejo), en la ruta equivalente en la que estarí­an los datos de nuestro usuario. Si era Windows XP, será X:\Documents and Settings\nombre_de_usuario\ntuser.dat, donde X será la letra de la unidad que tenga el disco. En el caso de Windows Vista o Windows 7, será X:\Users\nombre_de_usuario\ntuser.dat.

3-. Buscamos la clave de registro que necesitamos encontrar, o la carpeta completa, o lo que necesitemos. En el caso del WinSCP, las sesiones estan en Software/Martin Prikryl/WinSCP 2

4-. Vamos al menú archivo (File) y seleccionamos Export to REGEDIT 4 format.

5-. En la ventana que aparece, seleccionamos “Only Selected Key” para que exporte solo lo que hemos seleccionado y no todo el registro. En el desplegable, elegimos la opción HKEY_CURRENT_USER.

6-. Al darle a OK podremos guardar el archivo donde queramos en formato .reg.

7-. Para instalar en nuestro registro actual la exportación que acabamos de hacer, sencillamente tendremos que ejecutar/abrir el archivo .reg que acabamos de exportar. Las claves de registro viejas se actualizarán en el registro nuevo automáticamente.

Liandola parda con MSDOS

by Skiter on 5 mayo, 2011

Soy Linuxero converso desde el primer año de carrera y por deformación “frikiaccional” estoy malacostumbrado a usar el Shell Scripting para muchos apaños.

Llevo dos dí­as intentando organizar un par de scripts Linux y Windows para hacer backups automáticos a unidades de disco encriptadas usando TrueCrypt, Rsync, Cygwin y liandola parda (en la parte de windows, como no).

Hoy he sufrido mi propia maldición. Usando un comando linux (sed.exe y gawk.exe en windows, provistos por CYGWin) estaba intentando filtrar la fecha y la hora para añadirla al final del nombre de los archivos de log en formato SQLTime (YYYYMMDDhhmmss)

echo %date% %time% | C:\cygwin\bin\sed.exe -e “s/\//\ /g”| C:\cygwin\bin\sed.exe -e “s/\:/\ /g” | C:\cygwin\bin\sed.exe -e “s/,/\ /g”| c:\cygwin\bin\gawk ‘{print $3″.”$2″.”$1″.”$4$5$6 }’

Output: 2011.05.05.135915    (lo se, lo se. No es SQLTime. He añadido unos puntitos “a lo aleman“)

Con dos cojones (con perdon). Como todo lo que suelo hacer yo, hay una forma más facil de hacerlo (en Windows). Al final va a resultar que MS-DOS no era tan malo).

echo %DATE:~6,4%.%DATE:~3,2%.%DATE:~0,2%_%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%

Output: 2011.05.05_135915    (Ta Da!!!!)

Resulta que a las variables de entorno que ya existen, puedes incluirle “recortes” añadiendo los dos puntos (:) y la ví­rgula (~). El primer número es el primer caracter desde el que se empieza a mostrar (la cuenta empieza en 0), el segundo número es el número de caracteres que se muestran (contando desde el primer número).

echo %DATE% = 05/05/2011

echo %DATE:~6,4% = 2011

(a partir del sexto caracter, el 2, contamos 4, inclusive el sexto)

Y cual es la diferencia que ha hecho que me vuelva loco buscando una alternativa nativa de MS-DOS???

Que la segunda forma puedes incrustarsela a un comando de MS-DOS que utilice un ejecutable Linux-like (de CyGWin) y se lo come como si fuese un caracter más en la linea de comandos (por ejemplo, al pasarselo a un atributo de una opción del comando linux).

Cuando termine con los scripts de BackUp dejaré un HowTo aqui y veréis por que necesitaba esta pijoteria.

 

 

 

 

P.D.: como curiosidad para todos aquellos que habéis aprendido hoy que el “rabito de la ñ” se llamaba “ví­rgula“, y no biribula, birbula, ño o “palito de la ñ”, os sugiero que busques la definición y la compareis con los resultados en imágenes de google…jajajaja.

P.D. II: Os dejo otros truquillos que despues, refinando el script, he tenido que usar para darle formato a los datos que iba almacenando en las variables.

echo %DATE:~,-3% = 05/05/2

(el -3, sin numero, pero con coma delante, elimina los 3 últimos caracteres)

echo %DATE:~-3% = 011

(el -3, sin numero ni coma delante, empieza a contar por el final, hacia atrás. Sólo los 3 últimos caracteres se muestran)

echo %DATE:/=\% = 05\05\2011

(con un igual entre caracteres, reemplaza las instancias del primero por el segundo. Aqui, las / con \)

echo %DATE:/=% = 05052011

(igual que el anterior, pero reemplazando por nada. Elimina el carácter)

 

A %d blogueros les gusta esto: