martes, 1 de octubre de 2013

Montar un fichero con una imagen de la raspberry en nuestro disco

¿Para qué?

Normalmente para ver o modificar su contenido de forma directa, sin necesidad de tostar la imagen en una SD y arrancar la raspberry

¿Cómo funciona?

Un fichero img es una imagen de disco (sea su soporte físico una SD, un CD, un disco duro...) Incluye también la tabla de particiones y la estructura de ficheros. El comando format permite tomar una de estas particiones y extenderla como un sistema de archivos dentro del punto de montaje que le definamos. Podremos acceder por tanto a los archivos y directorios guardados en el archivo  .img. Y, lo que es más interesante si cabe: cualquier cambio que hagamos sobre ese sistema de archivos se grabará realmente en el archivo .img

Pasos:


Como hemos dicho antes, un fichero .img es una imagen completa de un sistema de archivos, tabla de particiones incluida. Cuando contiene más de una partición, es necesario montar cada una de forma independiente. Para averiguar que particiones existen en el fichero .img y sus características podemos usar la utilidad parted





En el ejemplo vemos que primero cambiamos la unidad de tamaño de parted con el comando interno unit, cuando nos pregunta fijamos la unidad a B (bytes) y por último ejecutamos el comando interno print.

Observamos que hay una partición primaria de arranque y otra extendida que contiene a su vez una lógica en formato ext4. Es habitual en los sistemas de la raspberry: La primera contiene archivos referentes al arranque y en la segunda se encuentra el sistema de archivos.

Dentro de la raspberry lo habitual es que la segunda partición se monte en la raiz de directorios "/" y la primera se montará en /boot


Elegimos un directorio como punto de montaje (en mi caso usaré /mnt/sbdboot para la primera /mnt/sbd para la segunda partición), y el comando utilizado será finalmente: sudo mount ~/Descargas/archlinux-hf-2013-07-22.img /mnt/sbd -o loop,offset=96468992 -t ext4
  • -o indica que debe montar el archivo a partir de la posición de comienzo de la partición que nos interesa. (eliminada la B final, que indica solo la unidad de medida en bytes)
  • -t tipo de formato de sistema de ficheros, que tal y como indica parted es ext4 (Dependiendo de la versión, parted y mount puedes utilizar literales distintos para definir los distintos tipos de formato, así es posible que en lugar de fat16 sea necesario usar vfat. Cualquier problema debería poder resolverse con una consulta al man)

Un ls /mnt/sbd nos confirmará si hemos instalado o no la partición correcta:


No hay comentarios:

Publicar un comentario