Cómo migrar sistemas de archivos Ext2 o Ext3 a Ext4 en Linux

¿Sabe que debería actualizar su sistema de archivos Linux pero no puede enfrentar la agravación? Aquí se explica cómo convertir ext2 y ext3 en ext4 sin la agitación de una reinstalación completa.

Sistemas de archivos de linux

Si fueras educado, llamarías venerable al sistema de archivos ext3, ya que se inició en 2001. En cuanto a la antigua ext2 pobre, ese sistema de archivos es de 1993, y no hay otra palabra que no sea antigua. En términos informáticos, ext3 es una antigüedad. Y ext2 es un hallazgo arqueológico.

El sistema de archivos moderno en el mundo de Linux es ext4, que se lanzó en 2008. Es más rápido, menos propenso a la fragmentación, capaz de manejar sistemas de archivos más grandes y archivos más grandes. Tiene sellos de fecha de archivos más precisos y ¿mencionamos que es más rápido? Mucho más rápido.

OK, estoy vendido, hagamos esto

Vamos a pensar en esto. En realidad, es probable que no desee actualizar su sistema de archivos.

Tiene más sentido actualizar su sistema Linux completo en su lugar. Por actualización nos referimos a realizar un par de copias de seguridad de datos, borrar su sistema, reinstalar una distribución moderna y restaurar sus datos. Ir para la actualización completa. Obtenga los beneficios de una distribución moderna de Linux con software actualizado, así como un sistema de archivos limpio, actual y recién instalado.

Si no puede ejecutar un Linux moderno en su hardware, incluso una de las distribuciones ligeras como Lubuntu, LinuxLite o CrunchBang ++, y absolutamente tiene que seguir con el Linux que tiene, todavía hay advertencias.

Para actualizar su sistema de archivos a ext4, debe utilizar la versión 2.6.28 del kernel o posterior. Entonces, si no tiene esa versión del kernel o una versión posterior, primero debe actualizar su kernel.

Advertencia: No piense en intentar esto sin cumplir con el requisito de la versión del kernel. Terminarás con una computadora que no se puede arrancar. Verifique qué versión de kernel está utilizando antes de continuar.

Asegúrese de tener un disco de instalación para la versión de Linux que está utilizando actualmente y manténgalo en espera. Actualizar su sistema de archivos no está exento de peligros.

Las copias de seguridad son su red de seguridad. Antes de hacer algo, haga un par de copias de seguridad de datos en diferentes medios de copia de seguridad, y asegúrese de tener ese viejo disco de instalación de Linux a mano. Si algo va mal, puede volver a instalar su antiguo Linux y restaurar sus datos.

También necesitarás un CD / DVD en vivo de una distribución moderna de Linux para realizar la actualización del sistema de archivos. Así que asegúrate de tener uno de esos a mano también.

Por cierto, este artículo se investigó utilizando una instalación de Ubuntu Jaunty Jackalope, que se lanzó en abril de 2009. Usó ext3 como sistema de archivos.

¿Sigues con nosotros?

John Wayne dijo que el coraje estaba siendo aterrorizado, pero aún así se estaba ensuciando. Admiro tus entrañas.

Lo primero que vamos a hacer es verificar la versión del kernel con uname. El comando uname puede mostrar diferentes tipos de información del sistema.

En su vieja computadora Linux abra una ventana de terminal y escriba el siguiente comando. Escribe uname, un espacio, -r, luego presiona Enter.

uname -r

La versión de Linux en esta computadora usa la versión del kernel 2.6.28-11, por lo que hemos cumplido con el requisito de la versión del kernel.

En serio, si no has cumplido con este requisito, detente ahora. Lo suficientemente cerca no es suficiente. Debe cumplir o exceder este número de versión del kernel.

Ahora verificaremos los identificadores de disco con blkid, que identifica los dispositivos de bloque en el sistema.

blkid

Este sistema tiene un solo disco duro (sda) que tiene un sistema de archivos (sda1) que está montado en / dev / sda1. Este es un sistema de archivos ext3. Este es el sistema de archivos que vamos a convertir.

También hay un sistema de archivos llamado swap, pero eso no nos interesa.

Reinicia con el Live CD

Inserte el Live CD y reinicie su computadora. Es posible que deba presionar una tecla durante el reinicio para que la computadora arranque desde el CD. La tecla para presionar se mostrará durante las primeras etapas del proceso de arranque. Sea rápido, la ventana de oportunidad no dura mucho. Si lo echas de menos, reinicia y vuelve a intentarlo.

Cuando haya iniciado en el entorno de Live CD, asegúrese de no iniciar una instalación accidentalmente. Tómese el tiempo para leer las opciones que se le proporcionan, y si hay una que diga algo similar a “Pruebe DistributionName”, seleccione esa opción.

Convertirse en raíz

Abra una ventana de terminal y escriba el siguiente comando. Esto efectivamente lo hace root y significa que no necesita escribir sudo delante de cada comando.

sudo bash

Tenga en cuenta que el símbolo del sistema ha cambiado. Usted es la raíz Ve con cuidado.

Identificar los sistemas de archivos

Necesitamos identificar los sistemas de archivos una vez más para ver cómo se muestran en esta instancia de Linux.

fdisk -l

Verás una salida similar a la siguiente.

El sistema de archivos que identificamos anteriormente como sda1 ha sido encontrado y reconocido por el Live CD Linux. Ese es el primer mini-hito.

El segundo es convertir el sistema de archivos.

Convertir el sistema de archivos

Aquí se enumeran dos comandos, uno para convertir de ext2 a ext4 y otro para convertir de ext3 a ext4. ¡Asegúrate de usar el correcto para ti!

Para convertir de ext2 a ext4 usa esto:

tune2fs -O extensiones, uninit_bg, dir_index, has_journal / dev / sda1

Para convertir de ext3 a ext4 usa esto:

tune2fs -O extensiones, uninit_bg, dir_index / dev / sda1

Es un poco decepcionante ya que no parece suceder mucho. Volverá a la línea de comandos. Si ve alguna salida, probablemente serán mensajes de error. Así que ninguna noticia es buena noticia aquí.

Compruebe el sistema de archivos

Aunque no se hayan marcado errores, seamos minuciosos y verifiquemos todo el sistema de archivos en busca de problemas Usaremos un comando llamado e2fsck. Esta es una herramienta utilizada para verificar la integridad de los sistemas de archivos. También puede intentar reparar cualquier problema que encuentre. La herramienta e2fsck funciona con sistemas de archivos ext2, ext3 y también ext4.

La opción -p (preen) hace que e2fsck intente reparar errores y la opción -f (forzar) hace que e2fsck compruebe el sistema de archivos incluso si el sistema de archivos parece estar limpio.

e2fsck -pf / dev / sda1

No se reportaron errores. Ahora podemos intentar montar el sistema de archivos.

Montaje del sistema de archivos

Necesitamos ajustar la tabla del sistema de archivos (fstab) y el gestor de arranque de grub para que funcione con el sistema de archivos convertido. Para ello, debemos montar el sistema de archivos. Lo montaremos en / mnt. Identificamos el sistema de archivos como sda1 anteriormente, por lo que nuestro comando es:

monte -t ​​ext4 / dev / sda1 / mnt

Ahora que está montado, deberíamos poder listar el sistema de archivos. Vamos a comprobar eso. La raíz del sistema de archivos estará en el punto de montaje, / mnt.

ls / mnt

Eso es alentador. Parece que lo esperaríamos.

Editando fstab

Necesitamos editar el archivo fstab y cambiar cualquier referencia de ext3 (o ext2, si ese es el sistema de archivos desde el que has convertido) a ext4.

El Live CD utilizado en este ejemplo tiene el editor nano. Es un pequeño editor simple, así que lo usaremos. Si nano no está disponible en su Live CD, habrá otro editor que habrá sido incluido por la distribución de Linux en el CD.

nano / mnt / etc / fstab

Aparecerá la ventana del editor nano. Debe buscar las incidencias de la cadena “ext3” o “ext2” y cambiarlas a “ext4”. En este ejemplo, hubo una aparición de ext3, que está resaltada.

El ext3 fue reemplazado por ext4.

Necesitas guardar el archivo y salir del editor. En nano, Ctrl + O guardará el archivo y Ctrl + X cerrará el editor.

Mejora de grub

Debido a que hemos montado el sistema de archivos sda1 en / mnt, las rutas a los directorios en el sistema de archivos se han movido efectivamente un nivel más profundo de lo habitual. Es por eso que el camino que proporcionamos a nano era / mnt / etc / fstab en lugar del habitual / etc / fstab.

Debido a que grub espera encontrar cosas en ciertos lugares, debemos hacer que el sistema de archivos parezca que está montado normalmente. Necesitamos que la raíz del sistema de archivos esté en / y no en / mnt. El comando chroot nos permite ejecutar un comando shell y especificar el punto raíz que deseamos utilizar.

El comando que utilizamos es:

chroot / mnt

Tenga en cuenta que el símbolo del sistema ha cambiado.

Ahora podemos emitir el comando update-grub para que grub lea el archivo fstab y se reconfigure.

update-grub

.

Una vez que grub se haya reconfigurado, debemos instalar una nueva instancia de grub en el disco duro. Tenga en cuenta que este es el disco duro sda, no el sistema de archivos sda1. No incluya el “1”, simplemente escriba “sda”.

grub-install / dev / sda

Reiniciando tu Linux

Reinicie su sistema y retire el Live CD. Cuando su sistema se haya reiniciado, abra una ventana de terminal e ingrese el siguiente comando:

blkid

Como podemos ver, el sistema de archivos ahora es un sistema de archivos ext4.

La máquina en la que se investigó este artículo tomó tanto tiempo para reiniciarse (más de diez minutos), se asumió que algo había salido mal y que nunca volvería a funcionar.

Tal vez fue porque era una máquina virtual, o tal vez parte de la conversión del sistema de archivos tiene lugar durante el primer arranque. De cualquier manera, la paciencia ganó, y eventualmente volvió a surgir. Si su máquina hace algo similar, espere. Todo podría no estar perdido.

Los reinicios posteriores fueron tan rápidos como lo normal.

Actualice su Linux en su lugar

Bueno, llegamos allí. Pero aún se queda con un híbrido no estándar que usa una versión antigua de Linux en un sistema de archivos moderno.

Si para usted es importante mudarse a un nuevo sistema de archivos, y su hardware puede soportarlo, lo mejor es tomar una distribución de Linux actual. Disfrutará de todas las otras ventajas de seguridad y software que se obtienen al hacerlo.