viernes, 25 de diciembre de 2020
Feliz Navidad 2020
sábado, 10 de octubre de 2020
MBR2GTP: Convertir disco con MBR a GPT
Hace mucho tiempo que tendría que haber hecho la conversión de la estructura del disco duro de mi portátil de MBR a GPT. Creo recordar que en su momento quise hacerlo pero tenía que formatearlo y no me apetecía nada.
Así, hace no más de una semana y pico se me ocurrió buscar cómo se podía hacer y me encontré con algunas páginas que indicaban que a partir de Windows 10 v1709 existía una herramienta llamada MBR2GTP.exe que lo hacía "perfectamente" (entrecomillado porque cuando uno tiene que hacerlo no siempre es tan sencillo como cabría esperar).
Es importante el disclaimer de siempre, por si las moscas: podrías perder tus datos o el sistema. Por lo que tirar de esta herramienta es solo tu decisión y responsabilidad todo lo que pase con ellos.
La primera sorpresa fue que en la búsqueda, una de las primeras entradas era un vídeo en Youtube de Sysadmit. Ya hace mucho tiempo que le tengo en mi feed y está en el listado de blogs a los que sigo.
Normalmente pondría el paso a paso de lo que fui haciendo pero creo que en esta ocasión lo voy a hacer de otra forma.
Esta herramienta se ejecuta desde un cmd con privilegios de administración. Y se encuentra en %system32%. La ejecución seria
MBR2GTP.EXE [/validate | /convert] /disk:0 /allowFullOS [/logs:rutaLogs]
Con estos parámetros se consigue lo siguiente, si bien algunos son muy intuitivos por su nombre:
- validate: es el modo prueba. Antes de lanzarse a ver si te dejaría como norma general hacer la conversión.
- convert: ejecutar de forma efectiva la conversión
- disk: se indica qué disco duro quieres convertir
- alloFullOS: sobre todo si es el mismo disco duro donde tienes el sistema operativo que estás ejecutando, te obligará a pasar este parámetro. De hecho, si no lo pasas, ya se encargará de recordártelo especificamente.
- logs: Parece ser que lo normal es que te guarde unos logs directamente en %windir%. Yo no fui capaz de encontrarlos y tuve que ponerle este parámetro. Ayuda bastante a debuguear. Te genera cuatro ficheros: diagerr.xml, diagwrn.xml, setupact.log y setuperr.log.
Con una validación sin problemas obtendrías algo así:
mbr2gpt.exe /validate /disk:0 /allowFullOS
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
MBR2GPT: Validation completed successfully
Pero te puedes encontrar con algún problema:
MBR2GPT: Attempting to validate disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
Disk layout validation failed for disk 0
Este error puede venir porque tu disco duro en MBR tiene más particiones de las que realmente permite esta herramienta. Sólo funcionará si tienes como máximo 3 particiones. Si tienes una específica para datos ya irían 4: interna oculta del sistema, sistema operativo, recovery... (Ya van tres)... Y la cuarta de datos.
Aunque el log de error donde lo redirigía no tiene todos los mensajes el que se encuentra en %windir% sí. Para este caso en concreto setuperr.log mostraria:
_datetime_, Error ValidateLayout: Too many MBR partitions found, no room to create EFI system partition.
_datetime_, Error Disk layout validation failed for disk 0
La solución para continuar con el proceso pasaría por eliminar una partición. Las dos primeras no puedes: te quedarías sin sistema operativo y no podrías arrancarlo.
Una solución que se encuentra por internet (¡¡pero no la hagas hasta que termines de leer todo el post!!): "he eliminado la partición del recovery y me ha funcionado.". Puede ser una locura que temporalmente se podría pasar por alto... Depende de cada uno si se quiere arriesgar. Sabiendo las consecuencias... Y no se puede eliminar desde dismgmt.msc por lo que habría que utilizar diskpart desde cmd, evidentemente con privilegios de administración.
diskpartlist partition
select partition 3
delete partition override
list partition
MBR2GPT: Attempting to validate disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
Cannot find OS partition(s) for disk 0
- Volver a crear la partición del recovery si es que se eliminó usando diskpart y poniendo el tipo de partición 0x27. Además, quedaría un paso adicional que ahora explicaré.
- Eliminar la cuarta partición: que puede ser la de datos. Espérate.
- Partición recovery y su entrada BCD eliminada.
- Partición de datos eliminada sin necesidad de tocar recovery.
MBR2GPT: Validating layout, disk sector size is: 512 bytes
MBR2GPT: Validation completed successfully
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
MBR2GPT: Trying to shrink the OS partition
MBR2GPT: Creating the EFI system partition
MBR2GPT: Installing the new boot files
MBR2GPT: Performing the layout conversion
MBR2GPT: Migrating default boot entry
MBR2GPT: Fixing drive letter mapping
MBR2GPT: Conversion completed successfully
Call WinReReapir to repair WinRE
MBR2GPT: Failed to update ReAgent.xml, please try to manually disable and enable WinRE.
MBR2GPT: Before the new system can boot properly you need to switch the firmware to boot to UEFI mode!
- Youtube Sysadmit
- Blog Sysadmit: convertir de MBR a GPT sin perder datos.
- IT Army: vídeo1 y vídeo2.
- Microsoft oficial
- Cannot find OS partitions(s) for disk 0: otra manera de solucionarlo. Entiende bien cuál era el problema del autor: no se sabe cuántas particiones tenía.
domingo, 30 de agosto de 2020
Rsync desde Debían liveUSB con Veracrypt
martes, 18 de agosto de 2020
Buscando ficheros duplicados
Como ya os conté hace apenas unos días estoy configurando OpenMediaVault como servidor NAS. Y después de copiar un montón de datos de los distintos discos con backups hechos a mano no me queda otra que organizar todos los datos. Ya se sabe, en casa del herrero...
Para ello estoy usando varias herramientas. La de dupeguru, que es precisamente la que os conté el otro día, puede servir pero... Realmente no hace las comparaciones por hash, que creo que es sí que es importante. Y buscando la otra que vi y tenía pendiente de probar, rmlint, me he encontrado con un post en el que muestran un listado de más herramientas con comparativas de tiempos y consumo de memoria.
La entrada en cuestión es esta:
https://www.virkki.com/jyri/articles/index.php/duplicate-finder-performance-2018-edition/
Espero que os sea de utilidad para cuando os haga falta.
lunes, 17 de agosto de 2020
OpenMediaVault y dupeGuru
Hace menos de una semana me instalé en una máquina OpenMediaVault, una distribución Linux para montar un NAS.
De momento estoy intentando hacerme con el sistema. La idea es hacer backups de los datos, sobre todo de los distintos discos que tengo dispersos. Pero de momento tengo que tener cuidado porque no he podido configurar la redundancia de los discos. Ya veré si acabo contando algo sobre la configuración después de su instalación (como cualquier otro Debian).
Uno de los módulos que tiene es la posibilidad de instalar containers en de docker. En OpenMediaVault 5 usan Portainer. La verdad, nunca había trabajado con Portainer (realmente nada de docker). Y para la instalación de los distintos stacks (¿son como las imágenes que después puedes pedir que se carguen como si fuesen máquinas virtuales?), que son realmente las aplicaciones con las que se trabajan, se puede hacer pasando la URL de un git, subiendo un fichero de texto escribiendo el contenido de ese fichero en el textarea. Sé que es un poco lío (y cuando lo lea dentro de unos meses me llevaré las manos a la cabeza sorprendiéndome de lo mal que me expreso).
Resumen: quieres instalar una aplicación de docker, escribes una ristra de parámetros con su sintaxis, y si es capaz de encontrarla con esos parámetros, la instala.
Una de las aplicaciones que se proponen para buscar ficheros repetidos es dupeguru. Es muy básica y por lo que he podido averiguar, no verifica los hashes. Ya buscaré otra que lo haga. El problema es que no hay publicada la estructura que hace falta para esta forma de instalar y para esta aplicación.
Para ver si podía instalarla del mismo modo que lo hice con una anterior que sí lo tenían publicado lo que intenté hacer es basarme en los sus parámetros y después cambiar o añadir los valores necesarios.
Este es el resultado:
version: "2.1"
services:
dupeguru:
image: jlesage/dupeguru
container_name: dupeguru
environment:
- PUID=XYZ
- PGID=ZYP
- TZ=Europe/Madrid
ports:
- 5800:5800
- 5900:5900
volumes:
- /srv/dev-disk-by-_______/dirConfigs/dupeguru:/config
- /srv/dev-disk-by-_______/carpetaVirtualRaiz:/storage
- /srv/dev-disk-by-_______/trash:/trash
restart: unless-stopped