lunes, 21 de abril de 2008

Disquetera USB

Por una razón que ahora no viene al caso (bueno, en realidad sí que podría venir pero ya lo contaré otro día) he tenido que generar un disquete de arranque a partir de un fichero imagen. Como mi portátil no trae disquetera, he tomado prestada una del trabajo para poder hacerlo.

En Linux hay muchos y variados comandos para manejar disquetes de 3,5'' pero tienen un problema: Están pensados para unidades fijas (p.e. dispositivo /dev/fd0) y no funcionan bien (o no lo hacen en absoluto) con unidades USB. La razón es la forma en que tiene de trabajar con las unidades de disquete: Como todos los dispositivos, tiene asociado un fichero en el directorio /dev, siendo el que más frecuentemente se usa el famoso /dev/fd0 para referirse a la "unidad A:". Pero además existen otros llamados /dev/fd0H1440, /dev/fdH02880, etc. para especificar que el disquete tiene capacidad de 1,44 o 2,88 MB.

Las disqueteras USB se detectan como dispositivos SCSI (en mi caso /dev/sdb) y las utilidades típicas (como fdformat) necesitan tener acceso a esos otros ficheros con las capacidades posibles del soporte para saber cómo ha de tratarlo al formatearlo.

La única solución que he encontrado ha sido utilizar un programa especialmente preparado para manejar unidades USB, que increiblemente no viene en los repositorios oficiales de las distribuciones habituales. Se llama ufiformat y de su página se pueden descargar tanto los fuentes como binarios y paquetes RPMs.

Una vez instalado su uso es muy simple. Basta con ejecutar:

ufiformat

así sin parámetros, y él solito encontrará la disquetera que tengamos conectada y dará formato al disco según su capacidad máxima. Si somos poco atrevidos con eso de la detección automática podemos especificar el dispositivo si nos quedamos más tranquilos con ello:

ufiformat /dev/sdb

No hay comentarios: