¿Sueña Tux en código fuente?

4 Octubre 2008

Opensolaris – Montando y leyendo particiones Ext3

Archivado en: opensolaris — Etiquetas:, , , — mmejiav @ 6:34 PM

Continuando con las aventuras en Opensolaris contaré un caso puntual que me sucedió y como luego de leer y buscar y probar logre solucionarlo.

El caso

Tengo actualmente en mi equipo casero 3 discos duros:

  • Ide de 80 gb en donde esta instalado Opensolaris y Win2 Vista utilizando multi boot. En la misma correa (controladora) esta conectada la unidad lectora de DVD
  • Disco SATA de 160 gb con información y películas de Anime. Una sola partición. Ext3
  • Disco SATA de 500 gb en donde estaba instalado Linux Debian y tiene una partición bastante amplia para datos varios. Ext3 todas las particiones.

Deseo poder leer y preferiblemente escribir en las particiones. El lío es que Opensolaris de forma “nativa” no permite hacer esto. Es necesario instalar paquetes adicionales y montar a mano las particiones.

Un poco de teoría

En Opensolaris y otras versiones *nix se manejan nombres lógicos de los dispositivos. En el caso puntual de discos duros la notación seria: número de controladora, número del disco y dentro del disco el número de partición.

Para verificar dicha información utilizo el comando prtpart

# prtpart
Available disk devices:

/dev/rdsk/c0d0p0
/dev/rdsk/c3d0p0
/dev/rdsk/c3d1p0

Use /usr/bin/prtpart <disk device> to get partition details
Use /usr/bin/prtpart -help for usage help

Y haciéndole caso al comando puedo verificar por ejemplo la controladora cero, el disco cero (en donde esta instalado Win2 y Opensolaris. Capacidad de 80 gb)

# prtpart /dev/rdsk/c0d0p0

Fdisk information for device /dev/rdsk/c0d0p0

Block Size : 512 bytes
Controller : ide
Disk       : cmdk
Capacity   : 76 GB

#  start block  # nblocks    startCylSecHd endCylSecHd   OSType
1: 0000000063   0040965687     0/ 1/ 1    ff/ff/fe      IFS: NTFS
2: 0040965750   0119117824    ff/ff/fe    ff/ff/fe      Solaris x86

Y verificando un disco con múltiples particiones:

# prtpart /dev/rdsk/c3d0p0

Fdisk information for device /dev/rdsk/c3d0p0

Block Size : 512 bytes
Controller : ide
Disk       : cmdk
Capacity   : 465 GB

#  start block  # nblocks    startCylSecHd endCylSecHd   OSType
1: 0000002048   0081920000     0/21/20    ff/ff/fe      IFS: NTFS
2: 0081931500   0013655250    ff/ff/fe    ff/ff/fe      Linux native
3: 0095586750   0881181315    ff/ff/fe    ff/ff/fe      DOS Extended

#  start block  # nblocks    startCylSecHd endCylSecHd   OSType
5: 0000000063   0003903732    ff/ff/fe    ff/ff/fe      Linux swap
0: 0003903795   0039070080    ff/ff/fe    ff/ff/fe      DOS Extended

#  start block  # nblocks    startCylSecHd endCylSecHd   OSType
6: 0000000063   0039070017    ff/ff/fe    ff/ff/fe      Linux native
0: 0042973875   0838207440    ff/ff/fe    ff/ff/fe      DOS Extended

#  start block  # nblocks    startCylSecHd endCylSecHd   OSType
7: 0000000063   0838207377    ff/ff/fe    ff/ff/fe      Linux native

El software necesario y configuración.

Luego de googlear un rato encontré que para leer dichas particiones es necesario el siguiente software:

1. Paquete FSWpart

Luego de la descarga descomprimir con:

gunzip -c FSWpart.tar.gz | tar xvf -

A continuación instalar con:

# pkgadd -d . FSWpart

2. Paquete FSWfsmisc

Luego de la descarga descomprimir con:

gunzip -c FSWfsmisc.tar.gz | tar xvf -

A continuación instalar con:

# pkgadd -d . FSWfsmisc

Para verificar las particiones logicas entonces se utiliza la variable -ldevs que segun la propia documentación del programa:

-ldevs – Lists logical device names for all the partitions on the disk
including the extended partitions. The extended partition
device names are non-standard virtual names for accessing
other filesystems, namely NTFS and EXT2FS

Así que el resultado del comando es:

# prtpart /dev/rdsk/c3d0p0 -ldevs

Fdisk information for device /dev/rdsk/c3d0p0

** NOTE **
/dev/dsk/c3d0p0      – Physical device referring to entire physical disk
/dev/dsk/c3d0p1 – p4 – Physical devices referring to the 4 primary partitions
/dev/dsk/c3d0p5 …  – Virtual devices referring to logical partitions

Virtual device names can be used to access EXT2 and NTFS on logical partitions

/dev/dsk/c3d0p1    IFS: NTFS
/dev/dsk/c3d0p2    Linux native
/dev/dsk/c3d0p3    DOS Extended
/dev/dsk/c3d0p5    Linux swap
/dev/dsk/c3d0p6    Linux native
/dev/dsk/c3d0p7    Linux native

Montar la partición

Una vez verificada cual partición deseamos montar es similar a montar particiones en GNU/Linux con la diferencia que debemos decirle que es un ext2

# mount -F ext2fs /dev/dsk/c3d0p7 /media/montado/

Y para desmontar es igual que en GNU/Linux

# umount /media/montado

3 comentarios

  1. muy buen blog…
    este tipo de herramientas deberian venir por default en OS…

    comentario por emanuel — 2 Diciembre 2008 @ 1:37 PM

  2. hola mi pregunta??? lo has hecho por que no se puede escribir en particiones ext3 solo en ext2 y se pueden montar como de solo lectura ext3 espero que lo leas y si es que pudiste escribir en las particiones ext3 pudieras echarme la mano no? gracias

    comentario por sinuhe estraa — 19 Diciembre 2008 @ 1:31 PM

    • Saludos y gracias por leerme. Te cuento que la máquina en la que estaba instalado OpenSolaris actualmente tengo Linux. Lo ultimo que supe es que acceso y escritura a Ext3 ya era nativo en Opensolaris, más no lo puedo asegurar.

      comentario por mmejiav — 21 Diciembre 2008 @ 8:38 AM


Canal RSS de los comentarios de la entrada. URI para TrackBack.

Disculpa, los comentarios están cerrados.

Blog de WordPress.com.