No se puede encontrar el disco duro al instalar lunix en winxp, disco duro serie Hitachi
Un sistema de archivos es un software de sistema que se utiliza para administrar y organizar los datos almacenados en un dispositivo. unidad de disco., que implementa garantías de integridad de datos, es decir, garantizar que los datos escritos en el disco sean consistentes con el contenido leído posteriormente. Además de guardar datos almacenados en forma de archivos, los sistemas de archivos también almacenan y administran información importante sobre los archivos y el propio sistema de archivos (como fecha y hora, propiedad, permisos de acceso, tamaño del archivo, ubicación de almacenamiento, etc.). Esta información suele denominarse metadatos.
Debido a que la mayoría de los sistemas de archivos funcionan de forma asincrónica para evitar cuellos de botella en el acceso al disco, las interrupciones repentinas en las operaciones del disco pueden provocar la pérdida de datos. Por ejemplo, ¿qué sucede si está trabajando en un documento en un sistema de archivos Linux ext2 y la máquina falla repentinamente?
Hay varias posibilidades:
* El sistema falló después de guardar el archivo. Este es el mejor de los casos y no perderá ninguna información. Simplemente reinicie su computadora y continúe trabajando.
* El sistema falló antes de guardar el archivo. Perderás todo tu trabajo, pero la versión anterior del documento seguirá ahí.
*El sistema falló al escribir un documento guardado en el disco. Este es el peor de los casos: una nueva versión del documento sobrescribe la versión anterior. Esto dejará un archivo parcialmente nuevo y parcialmente antiguo en el disco. Si el archivo es un archivo binario, puede suceder que no se pueda abrir porque su formato de archivo es diferente al que espera la aplicación.
En el último caso, la situación puede ser peor si el disco duro falla mientras se escriben metadatos. Se puede dañar el sistema de archivos y perder un directorio completo o una partición completa de datos del disco.
El sistema de archivos estándar de Linux (ext2fs) llama a la utilidad de escaneo de archivos fsck para intentar recuperar información de metadatos corruptos al reiniciar. Debido a que el sistema de archivos ext2 realiza copias de seguridad redundantes de información de metadatos importantes, generalmente es poco probable que se pierdan datos por completo. El sistema calcula la ubicación de los datos dañados y luego restaura la información de metadatos redundantes o elimina directamente los archivos dañados o los archivos con información de metadatos corruptos.
Obviamente, cuanto más grande sea el sistema de archivos que debe detectarse, más tiempo llevará este proceso. Para particiones que tienen un tamaño de decenas de GB, puede llevar mucho tiempo detectarlas. A medida que Linux se utiliza cada vez más para aplicaciones críticas en servidores grandes, se ha vuelto menos tolerante a tiempos de inactividad prolongados. Esto requiere un sistema de archivos más complejo y compacto para reemplazar ext2.
Para satisfacer esta demanda, surgió un sistema de archivos de registro.
¿Qué es un sistema de archivos de registro?
Lo anterior es solo una breve introducción al sistema de archivos de registro. Si necesita información más detallada, consulte los artículos Sistemas de archivos con registro en diario o Introducción a los sistemas de archivos con registro en diario.
La mayoría de los sistemas de archivos modernos utilizan tecnología de registro derivada de sistemas de bases de datos para mejorar la recuperación ante fallos. Una transacción de disco primero escribe secuencialmente en una ubicación específica en el área de registro del disco (o área de registro) antes de escribir en su ubicación final en el disco.
Dependiendo de la implementación del sistema de archivos de registro, la información escrita en el área de registro es diferente. Algunas implementaciones solo escriben metadatos del sistema de archivos, mientras que otras registran todo lo escrito en el registro.
Ahora, si se produce un fallo antes de que se escriba el contenido del registro, los datos originales seguirán en el disco y sólo se perderá la última actualización. Si el bloqueo ocurre cuando ocurre una operación de escritura real (es decir, el contenido del registro se actualiza), el contenido del registro del sistema de archivos de registro mostrará qué operaciones se realizaron. Por lo tanto, cuando el sistema se reinicia, las actualizaciones corruptas se pueden restaurar fácilmente y rápidamente según el contenido del registro.
En cualquier caso, se pueden obtener datos completos sin dañar la partición. Dado que el proceso de recuperación se basa en registros, todo el proceso es muy rápido y solo toma unos segundos.
Cabe señalar que el uso de un sistema de archivos de diario no significa que la herramienta de escaneo de archivos fsck sea completamente innecesaria.
Los errores aleatorios de hardware y software en el sistema de archivos no se pueden recuperar del registro y deben resolverse utilizando la herramienta fsck.
Sistemas de archivos de registro en entornos Linux actuales
A continuación se analizarán tres sistemas de archivos de registro: El primero es ext3, desarrollado por Stephen Tweedie del kernel de Linux. ext3 se implementa agregando la función de registro al sistema de archivos ext2, que actualmente es el sistema de archivos predeterminado de redhat 7.2; Namesys desarrolló el sistema de archivos de registro ReiserFs, que se puede descargar y actualmente lo utiliza Mandrake 8.1. SGI lanzó el sistema de archivos de diario XFS en marzo de 2001. Se puede descargar desde oss.sgi.com/projects/xfs/. En los siguientes capítulos, examinaremos y probaremos el rendimiento de estos tres sistemas de archivos de diario utilizando diferentes herramientas.
Instalación de ext3
Para obtener más información sobre los aspectos técnicos del sistema de archivos ext3, consulte el artículo y la entrevista del Dr. Stephen Tweedie. Su característica principal es que es totalmente compatible con versiones anteriores. De hecho, solo agrega funciones de registro basadas en el sistema de archivos de registro ext2. Su mayor desventaja es que no tiene el alto rendimiento de los sistemas de archivos modernos y no puede mejorar la velocidad de procesamiento y descompresión de datos de archivos.
ext3 está disponible como parche desde 2.2.19. Si desea agregar soporte para ext3 en el kernel, puede hacerlo.
* ext3-0.0.7a.tar.bz2: parche del kernel
* e2fsprogs-1.21-WIP-0601.tar.bz2 admite el paquete de programas ext3 e2fsprogs
Copie linux-2.2.19.tar.bz2 y ext3-0.0.7a.tar.bz2 al directorio /usr/src y extráigalos:
mv linux linux-old
tar -Ixvf linux-2.2.19 .tar.bz2
tar -Ixvf ext3-0.0.7a.tar.bz2
cd linux
cat . / ext3-0.0.7a/linux-2.2.19.kdb.diff| parche -sp1
cat .../ext3-0.0.7a/linux-2.2.19.ext3.diff| sp1
El primer paso es agregar el parche del depurador del kernel kdb de SGI al kernel, y el segundo paso es parchear el sistema de archivos ext3. A continuación, debe configurar el kernel, responder "Sí" a "Habilitar el código de desarrollo fs de la segunda extensión" en la sección del sistema de archivos y luego compilar.
Después de compilar e instalar el kernel, necesita instalar el paquete de software e2fsprogs:
tar -Ixvf e2fsprogs-1.21-WIP-0601.tar.bz2
cd e2fsprogs -1.21
./configure
make
make check
make install
Qué hacer Lo siguiente que debe hacer es crear un sistema de archivos ext3 en la partición y reiniciar con un nuevo kernel. En este punto, tiene dos opciones: crear un nuevo sistema de archivos con diario o actualizar el sistema de archivos ext2 existente a un sistema de archivos con diario ext3.
Si necesita crear un nuevo sistema de archivos ext3, simplemente use el comando mke2fs con el parámetro -f del paquete e2fsprogs instalado:
mke2fs -j /dev /xxx
mke2fs -j /dev /xxx p>
/dev/xxx aquí está la nueva partición donde desea crear el sistema de archivos ext3.
El parámetro -j crea un sistema de archivos ext3 en lugar de un sistema de archivos ext2. Puede utilizar el parámetro "-Jsize=" para especificar el tamaño del área de registro requerido (n, en M).
Para actualizar un ext2 existente, use tune2fs:
tune2fs -j /dev/xxx
Puede modificar tanto montado como desmontado El sistema de archivos realiza una actualización operación. Si el sistema de archivos se está cargando actualmente, se crea un archivo .journal en el directorio donde está cargado el sistema de archivos. Si el sistema de archivos que se está actualizando no está cargado en ese momento, se utiliza el registro de inodos del sistema implícito y ninguno de los contenidos del sistema de archivos se daña.
Puedes montar el sistema de archivos ext3 usando el siguiente comando:
mount -t text3 /dev/xxx /mount_dir
Dado que ext3 es en realidad un sistema de archivos con un registro Un sistema de archivos ext2 documentado, por lo que cargar un sistema de archivos ext3 es lo mismo que cargar un sistema de archivos ext2.
Instalación del sistema de archivos XFS
Para obtener información técnica sobre el sistema de archivos XFS, consulte las páginas Sistema de archivos XFS y Información de SGI de SGI.
XFS es un sistema de archivos de registro desarrollado por SGI para el entorno Linux. Es una tecnología madura y se utilizó originalmente como sistema de archivos en el sistema IRIX. La última versión del sistema de archivos xfs es actualmente la 1.02. Primero, descargue el siguiente
patch-2.4.14-xfs-1.0.2.bz2
patch-2.4.14-xfs-1.0.2-kdb.bz2
Copie el kernel de Linux linux-2.4.2.tar.bz2 al directorio /usr/src, cambie el nombre del directorio del kernel antiguo y descomprima el nuevo kernel:
mv linux linux -old
tar - Ixf inux-2.4.2.tar.bz2
Copia cada parche al directorio fuente del kernel (por ejemplo: /usr/src/linux-2.4.14 -xfs-1.0.2-kdb.bz2).
parche zcat-2.4.14-xfs-1.0.2.bz2 | parche -p1
parche zcat-2.4.14-xfs-1.0.2-kdb.bz2 | -p1
Luego abra las opciones del kernel en la sección del sistema de archivos y configure el kernel: "Soporte para sistema de archivos XFS" (CONFIG_XFS_FS) y "Soporte para búfer de página" (CONFIG_PAGE_BUF). También necesitarás actualizar las siguientes herramientas del sistema a las siguientes versiones o superiores:
modutils-2.4.0
autoconf-2.13
e2fsprogs-devel- 1.18
Instale el nuevo kernel y reinicie el servidor.
Luego descarga la herramienta xfs. Este paquete contiene los siguientes comandos para manejar sistemas de archivos. Instale el paquete usando el siguiente comando:
tar -zxf xfsprogs-1.2.0.src.tar.gz
cd xfsprogs -1.2.0.src.tar.gz
Instala el nuevo kernel y reinicia el servidor. 0
make configure
make<
make install
Después de instalar estos comandos, puede crear un nuevo sistema de archivos XFS:
mkfs -t xfs /dev/xxx
Si xxx es un sistema de archivos existente, debe usar el parámetro "-f" para crear una nueva partición, pero recuerde, esto destruirá todos los datos de la partición.
mkfs -t xfs -f /dev/xxx
Después de la creación, puede utilizar el siguiente comando para montar el nuevo sistema de archivos:
mount -t xfs / dev/xxx /mount_dir
Instalación del sistema de archivos ReiserFS
Si desea obtener más información técnica sobre el sistema de archivos reiserFS, puede utilizar el parámetro -f. Para utilizar un sistema de archivos reiserFS, primero debe instalar una herramienta de soporte del sistema de archivos en su sistema (por ejemplo, la herramienta mkreiserfs para crear sistemas de archivos ReiserFS). La última versión del sistema de archivos ReiserFS se puede agregar como parche al kernel 2.2.x o 2.4.x. Aquí tomamos 2.2.19 como ejemplo:
El primer paso es descargar el código fuente del kernel y el parche 2.2.19 del sistema de archivos ReiserFS. La última versión es linux-2.2.19-reiserfs. -3.5.34- parche.bz2.
Luego descomprima el código fuente del kernel y el paquete de parches en /usr/src:
tar -Ixf linux-2.2.19.tar.bz2
bzcat linux -2.2.19-reiserfs-3.5.34-patch.bz2 | parche -p0
Compile el kernel para admitir reiserfs e instálelo. Luego instale las utilidades del sistema de archivos:
cd /usr/src/linux/fs/reiserfs/utils
make
make install
Instale el nuevo kernel y reinicie. El nuevo sistema de archivos reiserfs ahora se puede crear y montar:
mkreiserfs /dev/xxxx
mount -t reiserfs /dev/xxx /mount_dir
sistema de archivos Prueba de rendimiento
Entorno de prueba El entorno informático utilizado en la prueba es el siguiente: Pentium III - 16 Mb de memoria - Disco duro de 2 Gb, sistema operativo RedHat 6.2. Todos los sistemas de archivos funcionaban normalmente, por lo que se realizó un análisis comparativo para comparar su rendimiento. Primero, probé el proceso de recuperación del sistema de archivos de registro simplemente desconectando el sistema, simulando un corte de energía del sistema. Todos los sistemas de archivos pasaron con éxito la fase de detección del análisis de archivos y, después de unos segundos, el análisis del sistema se completó y se inició normalmente.
El siguiente paso es utilizar el programa de prueba de rendimiento bonnie++, que realiza acceso de tipo base de datos a archivos y crea, lee y elimina archivos pequeños. Estas operaciones son servidores de correo en formato Squid, INN o Maildir (qmail). Operaciones más comunes del programa. El comando de prueba de rendimiento es:
bonnie++ -d/work1 -s10 -r4 -u0
Esta es una prueba de 10 Mb (-s10) en un sistema de archivos montado en el directorio /work1 . Por lo tanto, antes de ejecutar la prueba, se debe crear y montar un sistema de archivos del tipo apropiado en el directorio /work1. Otros parámetros especifican el número M de tamaños de memoria (-r4) y el número M de programas de prueba para ejecutar como root. Los resultados de la prueba son los siguientes:
Cada tipo de prueba tiene dos conjuntos de datos: velocidad del sistema de archivos (K/seg) y uso de CPU (%CPU). Cuanto mayor sea la velocidad, mejor será el sistema de archivos. Y para el uso de la CPU, cuanto menor sea el número, mejor será el rendimiento. Como puede verse, el sistema de archivos Reiserfs funciona mejor en términos de operaciones de archivos (creación secuencial y partes de creación aleatoria), superando a otros sistemas de archivos por un factor de 10. En otros aspectos (salida secuencial y entrada secuencial), su rendimiento es comparable al de otros sistemas de archivos. No hay diferencias significativas para otros sistemas de archivos, XFS está cerca del sistema de archivos ext2 y ext3 es ligeramente más lento que ext2 (debido al tiempo adicional requerido para el registro).
Finalmente, utilizamos y modificamos el programa de prueba de rendimiento mongo para probar los tres sistemas de archivos de registro. Se agregaron comandos para cargar sistemas de archivos xfs y ext3 en el programa mongo.pl, los formatearon y luego comenzaron el análisis de prueba de rendimiento. El script formatea la partición /dev/xxxx, monta y ejecuta la cantidad especificada de procesos en cada etapa: creación, copia, procesamiento de enlaces simbólicos, lectura, visualización de información sobre el estado del archivo, cambio de nombre y eliminación de archivos. Además, el programa cuenta el número de fragmentos tras las fases de creación y copia.
Fragm = número_de_fragmentos / número_de_archivos
Se pueden obtener los mismos resultados de comparación de pruebas en el archivo de resultados:
registro - resultados sin procesar
log .tbl - Resultados de salida de programas de comparación
log_table - Resultados de tabla
El comando de prueba es el siguiente:
mongo.pl ext3 /dev/hda3 / work1 logext3 1
Si desea probar otros sistemas de archivos, debe cambiar ext3 en los parámetros del comando anterior a reiserfs o xfs. Otros parámetros incluyen la partición a montar, la ruta de montaje y el archivo de prueba guardado. Otros parámetros incluyen la partición a cargar, la ruta de carga, el nombre del archivo para guardar los resultados de la prueba y la cantidad de procesos a iniciar.
La siguiente tabla muestra los resultados de la prueba. La unidad de datos es segundos. Cuanto menor sea el número, mejor será el rendimiento. La primera tabla usa un tamaño de bloque de 100 bytes, la segunda tabla usa un tamaño de bloque de 1000 bytes y la última tabla usa un tamaño de bloque de 10000 bytes
Como puede ver en la tabla anterior, resulta Observe que ext3 funciona mejor en la eliminación de estado y el cambio de nombre, mientras que el sistema de archivos ReiserFS funciona mejor en la creación y copia de archivos. También puede ver que ReiserFS hace un gran trabajo manejando archivos pequeños, como se menciona en la documentación.
Conclusión
Actualmente, existen al menos dos sistemas de archivos de diario potentes y confiables disponibles para Linux (XFS y reiserFS), los cuales son ampliamente utilizados. Por ejemplo, Mandrake 8.1 admite el sistema de archivos reiserFS de forma predeterminada.
A partir de los resultados de las pruebas de rendimiento, podemos ver que reiserFS es la mejor opción.