Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

¿Cómo convertir un sistema de archivos Ext3 a Ext4?

Ext4 ha demostrado ser un sistema de archivos con mucho mejor desempeño que su predecesor, ext3. Si uno necesita hacer pruebas, es posible montar una partición ext3 como ext4, pero carecerá de muchas funciones propias de ext4. Si uno ha venido utilizando Fedora desde la versión 10 y actualizado desde entonces, como es mi caso, las particiones originales quedaron como ext3. Si se ha actualizado a Fedora 13, conviene convertir a ext4 dichas particiones, a fin de lograr un mejor desempeño del sistema. A continuación describo el procedimiento para convertir una partición ext3 a una ext4, con Fedora 13, sin morir en el intento.

Antes de comenzar, debo hacer la advertencia de que si se comete algún error, el sistema puede quedar imposibilitado para funcionar. De deslindo de cualquier responsabilidad si se hace mal uso de este documento.

Por favor, leer y estudiar todo este documento antes de poner en práctica los procedimientos. Este documento asume que se utilizan particiones normales y que el sistema carece de volúmenes lógicos.

Determinar las particiones del disco duro.

Recomiendo utilizar el mandato df para verificar que dispositivos corresponden a los puntos de montaje del sistema. También puede utilizarse e mandato fdisk con la opción -l.

Preparar un disco vivo (LiveCD o LiveDVD).

Conviene realizar todos los procedimientos desde un disco vivo. De este modo, si algo sale mal, será posible realizar una recuperación de datos. Recomiendo utilizar un disco vivo de Fedora 13.

Respaldar información.

El título lo dice todo. Conviene hacer un respaldo de la información más importante antes de proceder. Un error al realizar los procedimientos puede tener repercusiones dramáticas.

Particularmente para los procedimientos, recomiendo respaldar los archivos /etc/fstab y /boot/grub/grub.conf en una llave USB o cualquier otro dispositivo de almacenamiento a la mano.

Conocer la herramienta blkid.

El procedimiento de convertir una partición de Ext3 a Ext4 puede cambiar el UUID (Universally Unique Identifier, Identificador Universalmente Único) de la partición. La herramienta blkid sirve para determinar los UUID y será utilizada posteriormente para determinar el nuevo UUID de la partición que se vaya a modificar. Ejemplo:

blkid /dev/sda1

Lo anterior debe devolver algo similar a lo siguiente:

/dev/sda1: UUID="493b7266-9111-446f-b236-5cd3bfef3467" TYPE="ext4"

Procedimientos.

Iniciar la computadora con el disco vivo de Fedora 13. Ingresar como el usuario predeterminado del disco vivo. Abrir una terminal e ingresar lo siguiente:

su -l root

Siendo que el usuario root en el disco vivo de Fedora 13 carece de clave de acceso, el cambio debe proceder sin solicitar clave de acceso.

Identifique la partición a modificar. para tal fin se pude utilizar el mandato fdisk con la opción -l:

fdisk -l

Vamos a asumir como ejemplo que se se va a cambiar la partición /dev/sda2, la cual hipotéticamente corresponde a la partición /.

Para convertir la partición de Ext3 a Ext4, solo se requiere ejecutar el mandato tune2fs con las opciones -O extents,uninit_bg,dir_index e indicando el dispositivo a modificar (dev/sda2):

tune2fs -O extents,uninit_bg,dir_index /dev/sda2

Una vez terminado lo anterior, se debe ejecutar el mandato fsck con las opciones -fDC0, a fin de corregir algunas de las estructuras modificadas por tune2fs.

fsck -fDC0 /dev/sda2

Si se omite lo anterior, el sistema estará imposibilitado para montar esta partición.

A continuación, se debe determinar el nuevo UUID de la partición /dev/sda2:

blkid /dev/sda2

Lo anterior debe devolver algo similar a lo siguiente.

/dev/sda2: LABEL="Fedora" UUID="3694bdf2-9055-4af8-acb9-45472634a7e1" TYPE="ext4"

Se debe tomar nota del nuevo número de UUID, en caso de que este haya cambiado, a fin de actualizar éste en los archivos /etc/fstab y /boot/grub/grub.conf del sistema operativo en el disco duro

Para realizar el cambio, se debe crear un punto de montaje temporal para la partición /dev/sda2, como por ejemplo /mnt/fedora:

mkdir /mnt/fedora

Luego se procede a montar /dev/sda2 en /mnt/fedora:

mount /dev/sda2 /mnt/fedora

Es importante montar también /dev/sda1, partición que por lo general corresponde a /boot.

mount /dev/sda1 /mnt/fedora/boot

utilizar gedit y modificar los archivos /mnt/fedora/etc/fstab y /mnt/fedora/boot/grub/grub.conf.

En el archivo /mnt/fedora/etc/fstab se debe actualizar el UUID de la partición correspondiente a / y el formato de la misma como ext4.

#
# /etc/fstab
# Created by anaconda on Tue Dec 15 13:42:13 2009
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=3694bdf2-9055-4af8-acb9-45472634a7e1 / ext4 defaults 1 1
UUID=493b7266-9111-446f-b236-5cd3bfef3467 /boot ext3 defaults 1 2
UUID=2e7efa7f-ebaf-4202-944d-8b115f373c07 /home ext3 defaults 1 2
UUID=7a0811e4-5bd2-4309-83ef-53d0ec9011ed swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0

Ejemplo del archivo /mnt/fedora/boot/grub/grub.conf.

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
#        all kernel and initrd paths are relative to /boot/, eg.
#        root (hd0,0)
#        kernel /vmlinuz-version ro root=/dev/sda2
#        initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=0
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
password --md5 $1$M1qJ4oR.$EFT/LInF5r.At1hKPFgQd1
title Fedora (2.6.33.5-112.fc13.i686)
        root (hd0,0)
        kernel /vmlinuz-2.6.33.5-112.fc13.i686 ro root=UUID=3694bdf2-9055-4af8-acb9-45472634a7e1 LANG=es_MX.UTF-8 KEYBOARDTYPE=pc KEYTABLE=es rhgb quiet
        initrd /initramfs-2.6.33.5-112.fc13.i686.img

Luego de haber terminado lo anterior, se debe reiniciar el sistema para verificar que todo funcione correctamente.

Si todo funcionó correctamente, se pude repetir el procedimiento para cambiar de ext3 a ext4 otras particiones.

Advertencia respecto de convertir a ext4 la partición correspondiente a /boot.

Si alguien realiza este procedimiento con Fedora 11, éste requiere que /boot esté en una partición con formato ext3, por lo cual dicha partición debe dejarse como está, en ext3.

En el caso de Fedora 12 y Fedora 13, éstos pueden utilizar ext4 en la partición /boot, sin problemas.

Sí se convierte a ext4 la partición /boot, va a requerirse reinstalar grub. Para este fin, recomiendo iniciar con el disco vivo y realizar el siguiente procedimiento, asumiendo, para este ejemplo, que /boot corresponde a /dev/sda1 y / corresponde a /dev/sda2:

su -l
tune2fs -O extents,uninit_bg,dir_index /dev/sda1
fsck -fDC0 /dev/sda1
mkdir /mnt/fedora
mount /dev/sda2 /mnt/fedora
mount -o bind /dev /mnt/fedora/dev
mount -o bind /sys /mnt/fedora/sys
mount -o bind /proc /mnt/fedora/proc
chroot /mnt/fedora
mount /dev/sda1 /boot
grub-install /dev/sda
exit

Nota: El montado de /boot debe hacerse después de hacer chroot /mnt/fedora/, ya que de de otro modo fallará la reinstalación de grub.

Antes de reiniciar, es importante verificar que el UUID de /boot sea el mismo especificado en los archivos /mnt/fedora/boot/grub/grub.conf y /mnt/fedora/etc/fstab. Utilizar el mandado blkid como se especifica arriba.

Comentarios finales.

Un sistema con todas sus particiones en formato ext4 mejora el tiempo de arranque de el mismo sistema con ext3. En el caso de dos Acer Aspire One A150, la mejoría fue de 17 segundos menos en el arranque del sistema, lográndose hasta 28 MB/s contra 10 MB/s del mismo sistema con ext3.

Bootchart Fedora 12, Acer Aspire One, A150 con Ext3 Bootchart Fedora 12, Acer Aspire One A150, con Ext4

Si todo lo anterior procedió sin contratiempos, recomiendo aprovechar y realizar optimización del sistema de archivos.

Fuente de información: Wiki de Kernel.org.


Atención: Salvo que se indique lo contrario, la licencia del texto de este documento es Creative Commons Reconocimiento 2.5, mediante la cual usted tiene permitido copiar, modificar, comunicar y distribuir el contenido de este texto, de manera total o parcial, y publicarlo o difundirlo en cualquier otro sitio de Internet o medio de comunicaciòn, siempre y cuando incluya o cite (1)el nombre de este sitio de Internet, (2)enlace permanente de este documento, (3)nombre del autor y (4)la misma licencia de distribución.

Opciones: Imprimir | Recomendar | Enlace permanente

Twitter Facebook Google Bookmarks Bitacoras.com Wikio Menéame Technorati Bloglines Digg Yahoo Buzz

Seguimientos (Trackback)

URL de seguimiento para esta entrada:
http://www.alcancelibre.org/trackback.php/como-convertir-ext3-ext4
  • ¿Cómo convertir un sistema de archivos Ext3 a Ext4?
  • 0comentarios
  • Crea cuenta nueva
Agregar comentario

Los siguientes comentarios son de la persona que los haya enviado. Este sitio se deslinda de cualquier responsabilidad respecto de las opiniones expresadas por los participantes en nuestros foros y secciones de comentarios, y el hecho de publicar las mismas no significa que se esté de acuerdo con éstas.