Sistemas de archivos Unix: UFS1 y UFS2

Sistemas de archivos Unix: UFS1 y UFS2

Contenido

  1. ¿Qué es el sistema de archivos UFS?
  2. Estructura del sistema de archivos UFS1 y UFS2
  3. ¿Dónde se utilizan los sistemas de archivos UFS1 y UFS2?
  4. La diferencia entre UFS, UFS2 y EXT4
  5. ¿Cómo puedo ver archivos en un UFS1 en un disco UFS2 en OS Windows y, si es necesario, copiarlos al otro disco local?

¿Qué es el sistema de archivos UFS?

El sistema de archivos UFS (Unix File System) fue diseñado originalmente específicamente para su uso en la familia de sistemas operativos BSD. Hoy en día, se utiliza en una forma más refinada en sistemas operativos similares a Unix (como Linux y Solaris), que admiten este sistema de archivos a nivel del kernel. El soporte para UFS también está implementado en Mac OS X, pero no es nativo de este sistema operativo.

En una etapa temprana de desarrollo, el sistema de archivos UFS se llamaba FS. Era bastante simple y contenía solo datos como superbloques, bloques de arranque, bloques de datos y descriptores de índice (también conocidos como inodos). FS era adecuado para los discos duros de tamaño pequeño que dominaban el mercado en ese momento. Pero con el tiempo, la capacidad de almacenamiento aumentó y gradualmente quedó claro que el sistema de archivos FS no podía proporcionar el rendimiento necesario. Esto llevó al desarrollo posterior de FS. Los desarrolladores agregaron grupos de cilindros. Cada grupo tenía sus descriptores de índice para evitar la acumulación de «basura» en el sistema de archivos, y el sistema de archivos en sí cambió su nombre de «FS» a «FFS (Fast File System)».

El objetivo principal de FFS era consolidar todo el contenido de un directorio (datos y metadatos) en un grupo de cilindros. Esto reduciría en gran medida el nivel de fragmentación que se producía debido a la propagación severa de datos en la superficie del disco. Sin embargo, debido al rápido aumento del tamaño del disco y el tamaño de los archivos almacenados en ellos, esta solución dejó de ser efectiva ya que el tamaño del bloque se incrementó para mantener el rendimiento en el nivel adecuado. En consecuencia, almacenar una gran cantidad de archivos pequeños ocupaba mucho espacio.

Esto obligó nuevamente a los desarrolladores a desarrollar el sistema de archivos y basándose en FFS se creó el sistema de archivos revisado «UFS1«, y posteriormente su versión revisada – «UFS2«, cuya creación permitió proporcionar confiabilidad y velocidad gracias a la división de bloques en fragmentos, que se utilizan para almacenar los bytes finales del archivo (anteriormente se asignaba un bloque completo para esto) y algunas nuevas tecnologías.

De hecho, «UFS1» y «UFS2» son dos capas adicionales: la capa superior, que proporciona la estructura de directorios y admite metadatos en el descriptor de estructura de índice, y las capas inferiores, que permiten representar los datos del contenedor como descriptores de índice. Esto se hizo para admitir tanto FFS tradicional como LFS.

La estructura del sistema de archivos UFS se detalla en el siguiente párrafo de este artículo.

Estructura del sistema de archivos UFS1 y UFS2

La estructura de los sistemas de archivos UFS1 y UFS2 es la siguiente: primero se encuentra el bloque de arranque, seguido del superbloque. A continuación, se coloca la tabla de descriptores de índice (tabla de inodos), seguida de los catálogos. Además, en algunos sistemas operativos (por ejemplo, Solaris), el sistema de archivos almacena listas de control de acceso (ACL) para proporcionar descriptores de índice de sombra (inodos de sombra). Esto es aproximadamente lo que parece una partición de FreeBSD cuando se utiliza el sistema de archivos UFS:

Sistemas de archivos UFS1 y UFS2

Todo el espacio en disco se divide en grupos de cilindros, y cada grupo almacena la siguiente información:

  • Bloque de arranque – diseñado para almacenar los datos necesarios para arrancar el sistema operativo. Si faltara, el sistema operativo no podría arrancar. El bloque de arranque aparece solo en el grupo de cilindros cero y ocupa los primeros 8 Kbytes de la parte del disco. Si el sistema de archivos no se utiliza cuando se inicia el sistema, permanece vacío;
  • Superbloque – esta sección del sistema de archivos contiene su descripción, así como información sobre su configuración;
  • Descripciones de los grupos de «cilindros» (resumen de CG). Los cilindros son un área separada del resto, que contiene algunos archivos anidados. En consecuencia, un grupo de cilindros contiene varios cilindros de disco.
  • Mapa de inodos libres — datos sobre los inodos libres e información resumida sobre el uso de inodos en el grupo;
  • Mapa de bloques libres — datos sobre los bloques libres e información resumida sobre el uso de bloques de disco en el grupo;
  • Matriz de inodos – el inodo contiene toda la información sobre el archivo excepto su nombre, como el tamaño del archivo, la fecha y hora de creación, la última modificación y la última lectura del archivo. Cada archivo tiene su propio inodo;
  • Copia de seguridad del superbloque;
  • Un cierto número de bloques de datos en los que se almacenan los datos del archivo;

Para mejorar el rendimiento del sistema operativo, UFS utiliza algunas soluciones adicionales. Por ejemplo:

  • bloques de datos más grandes para aumentar el ancho de banda y, por lo tanto, el rendimiento;
  • creación de duplicados de superbloque — esta solución permite la recuperación del disco cuando sea necesario;
  • fragmentación de bloques en 2, 4 o 8 fragmentos para un mejor rendimiento con archivos de tamaño pequeño;
  • asignación de cada nuevo directorio a un grupo de cilindros separado para distribuir uniformemente la información en el disco;
  • optimización del acceso físico para un mejor rendimiento de lectura;

Otras características del sistema de archivos UFS son las «banderas de estado«. Estas están diseñadas para indicar el estado del sistema de archivos. Hay cuatro estados disponibles: limpio, estable, activo o desconocido. Evita comprobaciones innecesarias del sistema de archivos. Si todo está bien y el estado se muestra como «limpio» — la utilidad de comprobación no se ejecuta cuando se carga el sistema operativo;

También vale la pena señalar que el número de inodos en UFS es fijo y no es posible agregarlos dinámicamente (como en el sistema de archivos XFS). Es una razón más por la cual el sistema de archivos UFS es más adecuado para archivos grandes que para archivos pequeños, ya que si se agotan todos los inodos libres, el usuario debe recrear el sistema de archivos en el disco, y cuando hablamos de terabytes de datos, es un proceso bastante largo.

¿Dónde se utilizan los sistemas de archivos UFS1 y UFS2?

Debido a su rápido rendimiento con archivos grandes, el sistema de archivos UFS (Unix File System) es el más comúnmente utilizado en servidores. Esto es especialmente cierto para servidores que almacenan datos de video, ya que los archivos de video suelen ocupar la mayor cantidad de memoria. Por lo tanto, cuanto mayor sea la velocidad de carga del servidor, mejor será el rendimiento del servicio de video en general. Además, muchos administradores de servidores prefieren utilizar UFS debido a sus extensas marcas de tiempo.

UFS existe en varias variantes y se puede instalar en muchos tipos de sistemas UNIX, incluyendo FreeBSD, HP-UX, NetBSD, OpenBSD, Apple OS X y Sun Solaris. Muchos sistemas operativos han modificado una o más estructuras de datos a lo largo de los años para adaptarse a sus necesidades, pero todos comparten los mismos conceptos. Por ejemplo, Solaris ha agregado complementos propietarios que modifican el sistema de archivos de tal manera que otros sistemas operativos pueden no reconocer el sistema de archivos. Al mismo tiempo, muchas de las empresas mencionadas anteriormente continúan utilizando el tamaño y la anchura originales del bloque de datos. Gracias a esto, se ha preservado cierta compatibilidad entre plataformas. Sin embargo, antes de utilizarlo en múltiples plataformas, es recomendable aprender más sobre la compatibilidad para evitar bloqueos del sistema operativo y posibles futuras pérdidas de datos.

El sistema operativo FreeBSD se basa completamente en FFS y UFS. Se hizo para soportar la evolución del estándar UFS2 que agrega un bloque de puntero de 64 bits, lo que permite que el sistema operativo maneje hasta 8 zettabytes (8 millones de millones de gigabytes) de almacenamiento.

Los sistemas de archivos UFS1 y UFS2 son muy comúnmente utilizados en varias distribuciones de Linux, pero vale la pena señalar aquí que el kernel de Linux solo admite este sistema de archivos a nivel de lectura. Para que tanto UFS1 como UFS2 funcionen completamente, se deberán instalar paquetes de software adicionales.

También vale la pena señalar que con utilidades adicionales es posible proporcionar journaling y así obtener un sistema de archivos journalable que pueda trabajar rápidamente con archivos de tamaño enorme.

Las consolas de juegos Sony PlayStation 2 y Sony PlayStation 3 utilizan sus modificaciones de UFS1 y UFS2, respectivamente. La razón es que para el rápido rendimiento de la consola, los desarrolladores necesitaban un sistema de archivos que pudiera proporcionar el nivel adecuado de rendimiento de la consola al trabajar con grandes imágenes de juegos instalados.

Entre otras cosas, no se puede dejar de mencionar el hecho de que el sistema de archivos ext4 se basa en UFS. Lea sobre cómo ext4 difiere de UFS en el siguiente párrafo de este artículo.

La diferencia entre UFS, UFS2 y EXT4

UFS1 y UFS2 son muy similares. Ambos tienen la misma estructura y alcance. Sin embargo, como UFS2 es una versión mejorada de UFS1, la diferencia entre ellos radica en la funcionalidad.

La principal diferencia entre UFS2 y UFS1 es que es de 64 bits y puede trabajar con volúmenes de disco mayores a un terabyte. Tenga en cuenta que la longitud de entrada de la tabla de inodos en UFS2 se ha duplicado a 256 bytes.

Además, UFS2 incluye soporte para atributos de archivo extendidos, como ACLs. Es esencial para los administradores de red. Lo que el usuario promedio notará es que la creación de un nuevo sistema de archivos es más rápida (especialmente en discos muy grandes).

En general, desde la perspectiva del usuario, no hay diferencia entre UFS y UFS2. En la práctica, sin embargo, es mejor usar UFS2 porque es más nuevo y tiene más características.

Como se mencionó anteriormente, el sistema de archivos ext4 (como ext2 y ext3) se basa en UFS, por lo que son similares. Por ejemplo, los bloques de datos en ext4 se combinan en grupos, que se asemejan fuertemente a los grupos de cilindros en UFS. Además, ext4 utiliza inodos y superbloques de la misma manera que UFS.

Al mismo tiempo, ext4 tiene algunas diferencias con UFS. Por ejemplo, tiene soporte para «extensiones«, que permiten abordar un gran número (hasta 128 MB) de bloques consecutivos con un solo descriptor. Hasta 4 punteros a extensiones se pueden colocar directamente en el inodo, lo que es suficiente para archivos pequeños y medianos. Esta solución permite aumentar la velocidad de lectura/escritura de datos. UFS utiliza el principio de asignación de espacio físico para aumentar la velocidad de lectura de datos. Significa que mientras la cabeza de la unidad de disco duro está leyendo la información, hay una demora entre el final de la lectura de un bloque y el comienzo de la lectura del siguiente. Durante este tiempo, el disco magnético tiene tiempo para girar varios grados, y si hay archivos en el disco uno después del otro, el disco tiene que completar una rotación completa para permitir que la cabeza comience a leer el siguiente bloque, y esto requiere cierta cantidad de tiempo. El sistema de archivos UFS tiene esto en cuenta y distribuye los archivos en el espacio del disco de tal manera que se minimiza la demora al moverse de un bloque de datos al siguiente. Sin embargo, la práctica muestra que las extensiones son más eficientes. Además, al trabajar con archivos pequeños, UFS pierde mucho en rendimiento en comparación con ext4.

Otra diferencia entre los sistemas de archivos ext4 y UFS es la profundidad de bits. Ext4 utiliza números de bloque de 48 bits, mientras que UFS utiliza números de bloque de 64 bits. En la práctica, esto significa que el tamaño máximo de un sistema de archivos ext4 es de 1 exabyte, mientras que UFS2 tiene un tamaño máximo de 8 zettabytes. Es por eso que al trabajar con grandes cantidades de datos (alojamiento de video, etc.), la elección recae en UFS2.

El sistema de archivos ext4 admite journaling de forma predeterminada, mientras que UFS requiere software adicional.

En resumen, ext4 tiene una buena oportunidad de superar a UFS2 en el futuro, pero aún necesita evolucionar (por ejemplo, agregar números de bloque de 64 bits). Además, ext4 no tiene verificación de suma de comprobación para los datos, lo que hace imposible detectar la corrupción de datos debido a fallas de hardware.

¿Cómo puedo ver archivos en un UFS1 en un disco UFS2 en OS Windows y, si es necesario, copiarlos al otro disco local?

A pesar de todas las ventajas de los sistemas de archivos UFS1 y UFS2, se utilizan con mayor frecuencia en sistemas operativos similares a UNIX. Por ejemplo, los usuarios de Linux a menudo prefieren instalar UFS2 en discos duros externos de alta capacidad donde almacenan películas y otros datos. Sin embargo, la práctica muestra que el 97% de los usuarios de PC y portátiles utilizan Windows como su sistema operativo principal, que no admite el sistema de archivos UFS. Entonces, ¿cómo se puede abrir un disco formateado en UFS en un sistema Windows?

Para abrir una unidad flash o un disco duro externo formateado con FreeBSD, HP-UX, NetBSD, OpenBSD o Sun Solaris, no es necesario instalar controladores ni utilizar una máquina virtual para instalar el segundo sistema.

La mejor solución es utilizar el programa RS Linux Recovery. Es muy fácil de usar y no requiere muchos recursos informáticos. Además, tiene una interfaz intuitiva. Por lo tanto, puede estar seguro de que abrirá su disco UFS sin importar cuál sea su nivel de competencia informática.

El mismo método se puede utilizar si ha eliminado accidentalmente un archivo importante o formateado su disco UFS siguiendo la recomendación del Explorador de Windows.

Entonces, para abrir su disco UFS, siga unos simples pasos:

Paso 1: Descargue e instale RS Linux Recovery siguiendo los consejos del asistente de instalación. Luego, inicie el programa.

Paso 2: El Asistente de recuperación de archivos se abrirá frente a usted. Haga clic en «Siguiente«. El programa le pedirá que escanee su disco UFS en busca de archivos. RS Linux Recovery ofrece dos tipos de escaneos: un escaneo rápido y un escaneo completo. La primera opción vale la pena elegirla si solo desea ver los datos en el disco y copiarlos a otro disco local. La segunda opción vale la pena elegirla si ha perdido información importante y desea recuperarla.

También en esta etapa, vale la pena seleccionar el tipo de sistema de archivos del disco. RS Linux Recovery admite TODOS los sistemas de archivos que se utilizan en Linux. Haga clic en «Siguiente«.

Sistemas de archivos UFS1 y UFS2

El análisis del disco comenzará y tomará varios minutos.

Sistemas de archivos UFS1 y UFS2

Paso 3: Una vez que se complete el análisis, RS Linux Recovery mostrará TODOS los archivos en su disco UFS (incluidos aquellos que se han eliminado y se pueden recuperar). Puede navegar por los archivos que desee. Una vista previa rápida también estará disponible en el lado derecho. Si desea copiar un archivo a un disco diferente de su computadora o recuperar un archivo perdido, haga clic derecho en él. Luego, elija «Recuperación«.

Sistemas de archivos UFS1 y UFS2

Paso 4: Elija dónde desea copiar o restaurar el archivo deseado. Puede ser un disco duro, un archivo ZIP o un servidor FTP. Luego, haga clic en «Siguiente«. El proceso de copia/restauración comenzará. Por lo general, tarda unos minutos, dependiendo del tamaño.

Sistemas de archivos UFS1 y UFS2

También vale la pena señalar que puede utilizar este método para ver datos en discos con los sistemas de archivos ext2,3,4, XFS, ReiserFS y otros sistemas de archivos modernos.

Preguntas frecuentes

UFS2 es una versión de 64 bits reestructurada de UFS1. También cuenta con algunas características nuevas. Puede encontrar más detalles en nuestro sitio web.
Para copiar archivos desde un disco con sistema de archivos UFS2 en Windows, utiliza el programa RS Linux Recovery. El programa es fácil de usar y no requiere controladores adicionales.
UFS (Sistema de Archivos Unix) es un sistema de archivos utilizado en muchos sistemas operativos similares a Unix, como Linux, FreeBSD, HP-UX, NetBSD, OpenBSD o Sun Solaris.
Solo a nivel de lectura. Para brindar soporte completo para el sistema de archivos UFS (1,2) se necesitaría utilizar software adicional.
Todo depende de tus necesidades. Si trabajas con archivos grandes, elige UFS. Si trabajas con archivos pequeños, elige ext4, ya que es notablemente más rápido que UFS para archivos pequeños.
Deja un comentario

Artículos relacionados

Sistema de archivos de Linux: XFS
Sistema de archivos de Linux: XFS
Los sistemas de archivos se utilizan para controlar cómo se escribe la información en el disco, para controlar el acceso a esta información y para almacenar información y metadatos sobre los archivos. Los sistemas de archivos se revisan continuamente para … Continue reading
El sistema de archivos Btrfs
El sistema de archivos Btrfs
El sistema operativo Linux soporta una amplia gama de sistemas de archivos. En este artículo, discutiremos las ventajas y desventajas de usar el sistema de archivos Btrfs.
ReiserFS – Sistema de archivos de Linux
ReiserFS – Sistema de archivos de Linux
El sistema de archivos ReiserFS fue desarrollado especialmente para el sistema operativo Linux por Hans Reiser y la compañía Namesys. Fue el primer sistema de archivos con registro de diario que fue aceptado en el kernel y se desarrolló cuando … Continue reading
¿Qué es RAID y qué tipo de RAID debería usar?
¿Qué es RAID y qué tipo de RAID debería usar?
Cada año, el rendimiento del hardware de computadoras está aumentando a una tasa alta. Los procesadores están equipados con un gran número de núcleos y flujos, y las tarjetas gráficas con una frecuencia de chip más alta. Sin embargo, en … Continue reading
Online Chat with Recovery Software