4 herramientas para administrar la salud de EXT2, EXT3 y EXT4 en Linux
Un sistema de archivos es una estructura de datos que ayuda a controlar cómo se almacenan y recuperan los datos en un sistema informático. Un sistema de archivos también se puede considerar como una partición física (o extendida) en un disco. Si no se mantiene bien y se supervisa regularmente, puede dañarse o dañarse a largo plazo, de muchas maneras diferentes.
Hay varios factores que pueden hacer que un sistema de archivos se vuelva insalubre: fallas en el sistema, fallas de hardware o software, controladores y programas defectuosos, su ajuste incorrecto, la sobrecarga de datos excesivos y otros problemas menores.
Cualquiera de estos problemas puede hacer que Linux no monte (o desmonte) un sistema de archivos con gracia, provocando fallas en el sistema.
Además, la ejecución de su sistema con un sistema de archivos deteriorado puede dar lugar a otros errores de tiempo de ejecución en los componentes del sistema operativo o en las aplicaciones de usuario, lo que podría provocar una pérdida de datos grave. Para evitar sufrir daños o daños en el sistema de archivos, debe vigilar su estado de salud.
En este artículo, cubriremos herramientas para monitorear y mantener la salud de los sistemas de archivos ext2, ext3 y ext4. Todas las herramientas descritas aquí requieren privilegios de usuario root, por lo tanto, use el comando sudo para ejecutarlas.
Cómo ver la información del sistema de archivos EXT2 / EXT3 / EXT4
dumpe2fs es una herramienta de línea de comandos que se utiliza para volcar información del sistema de archivos ext2/ext3/ext4, lo que significa que muestra información de superbloques y grupos de bloques para el sistema de archivos en el dispositivo.
Antes de ejecutar dumpe2fs , asegúrese de ejecutar el comando df -hT para conocer los nombres de los dispositivos del sistema de archivos.
$ sudo dumpe2fs /dev/sda10
dumpe2fs 1.42.13 (17-May-2015) Filesystem volume name: Last mounted on: / Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Filesystem flags: signed_directory_hash Default mount options: user_xattr acl Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 21544960 Block count: 86154752 Reserved block count: 4307737 Free blocks: 22387732 Free inodes: 21026406 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 1003 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 8192 Inode blocks per group: 512 Flex block group size: 16 Filesystem created: Sun Jul 31 16:19:36 2016 Last mount time: Mon Nov 6 10:25:28 2017 Last write time: Mon Nov 6 10:25:19 2017 Mount count: 432 Maximum mount count: -1 Last checked: Sun Jul 31 16:19:36 2016 Check interval: 0 () Lifetime writes: 2834 GB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 First orphan inode: 6947324 Default directory hash: half_md4 Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805 Journal backup: inode blocks Journal features: journal_incompat_revoke Journal size: 128M Journal length: 32768 Journal sequence: 0x00580f0c Journal start: 12055
Puede pasar el indicador -b
para mostrar cualquier bloque reservado como incorrecto en el sistema de archivos (ninguna salida implica a badblocks):
$ dumpe2fs -b
Comprobación de los sistemas de archivos EXT2 / EXT3 / EXT4 en busca de errores
e2fsck se utiliza para examinar los sistemas de archivos ext2/ext3/ext4 en busca de errores y fsck comprueba y, opcionalmente, puede reparar un sistema de archivos Linux; es básicamente una interfaz para un rango de verificadores de sistemas de archivos ( fsck.fstype por ejemplo fsck.ext3 , fsck.sfx etc.) ofrecidos bajo linux
Recuerde que Linux ejecuta e2fack/fsck automáticamente al iniciar el sistema en las particiones que están etiquetadas para verificar el archivo de configuración /etc/fstab . Esto normalmente se hace después de que un sistema de archivos no se haya desmontado limpiamente.
rojo
$ sudo unmount /dev/sda10 $ sudo fsck /dev/sda10
Alternativamente, habilite la salida detallada con el interruptor -V
y use el -t
para especificar un tipo de sistema de archivos como este:
$ sudo fsck -Vt ext4 /dev/sda10
Tunning EXT2 / EXT3 / EXT4 sistemas de archivos
Mencionamos desde el principio que una de las causas del daño del sistema de archivos es un ajuste incorrecto. Puede usar la utilidad tune2fs para cambiar los parámetros ajustables de los sistemas de archivos ext2/ext3/ext4 como se explica a continuación.
Para ver el contenido del superbloque del sistema de archivos, incluidos los valores actuales de los parámetros, use la opción -l
como se muestra.
$ sudo tune2fs -l /dev/sda10
tune2fs 1.42.13 (17-May-2015) Filesystem volume name: Last mounted on: / Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Filesystem flags: signed_directory_hash Default mount options: user_xattr acl Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 21544960 Block count: 86154752 Reserved block count: 4307737 Free blocks: 22387732 Free inodes: 21026406 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 1003 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 8192 Inode blocks per group: 512 Flex block group size: 16 Filesystem created: Sun Jul 31 16:19:36 2016 Last mount time: Mon Nov 6 10:25:28 2017 Last write time: Mon Nov 6 10:25:19 2017 Mount count: 432 Maximum mount count: -1 Last checked: Sun Jul 31 16:19:36 2016 Check interval: 0 () Lifetime writes: 2834 GB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 First orphan inode: 6947324 Default directory hash: half_md4 Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805 Journal backup: inode blocks
A continuación, utilizando el indicador -c
, puede establecer el número de montajes después de los cuales e2fsck revisará el sistema de archivos. Este comando le indica al sistema que ejecute e2fsck contra /dev/sda10
después de cada montaje 4 .
$ sudo tune2fs -c 4 /dev/sda10 tune2fs 1.42.13 (17-May-2015) Setting maximal mount count to 4
También puede definir el tiempo entre dos comprobaciones del sistema de archivos con la opción -i
. El siguiente comando establece un intervalo de 2 días entre las comprobaciones del sistema de archivos.
$ sudo tune2fs -i 2d /dev/sda10 tune2fs 1.42.13 (17-May-2015) Setting interval between checks to 172800 seconds
Ahora, si ejecuta este comando a continuación, el intervalo de verificación del sistema de archivos para /dev/sda10
ya está establecido.
$ sudo tune2fs -l /dev/sda10
Filesystem created: Sun Jul 31 16:19:36 2016 Last mount time: Mon Nov 6 10:25:28 2017 Last write time: Mon Nov 6 13:49:50 2017 Mount count: 432 Maximum mount count: 4 Last checked: Sun Jul 31 16:19:36 2016 Check interval: 172800 (2 days) Next check after: Tue Aug 2 16:19:36 2016 Lifetime writes: 2834 GB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 First orphan inode: 6947324 Default directory hash: half_md4 Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805 Journal backup: inode blocks
Para cambiar los parámetros predeterminados del registro por diario, use la opción -J
. Esta opción también tiene subopciones: tamaño = tamaño del diario (establece el tamaño del diario), dispositivo = externo-diario (especifica el dispositivo en el que está almacenado) y < strong> location = journal-location (define la ubicación de la revista).
Tenga en cuenta que solo se puede configurar una de las opciones de tamaño o dispositivo para un sistema de archivos:
$ sudo tune2fs -J size=4MB /dev/sda10
Por último, pero no menos importante, la etiqueta de volumen de un sistema de archivos se puede configurar utilizando la opción -L
como se muestra a continuación.
$ sudo tune2fs -L "ROOT" /dev/sda10
Depuración de los sistemas de archivos EXT2 / EXT3 / EXT4
debugfs es un depurador de sistemas de archivos ext2/ext3/ext4 basado en la línea de comandos sencilla e interactiva. Te permite modificar los parámetros del sistema de archivos interactivamente. Para ver los subcomandos o solicitudes, escriba ?
.
$ sudo debugfs /dev/sda10
De forma predeterminada, el sistema de archivos debe abrirse en modo de lectura y escritura, use el indicador -w
para abrirlo en modo de lectura y escritura. Para abrirlo en modo catastrófico, use la opción -c
.
debugfs 1.42.13 (17-May-2015) debugfs: ? Available debugfs requests: show_debugfs_params, params Show debugfs parameters open_filesys, open Open a filesystem close_filesys, close Close the filesystem freefrag, e2freefrag Report free space fragmentation feature, features Set/print superblock features dirty_filesys, dirty Mark the filesystem as dirty init_filesys Initialize a filesystem (DESTROYS DATA) show_super_stats, stats Show superblock statistics ncheck Do inode->name translation icheck Do block->inode translation change_root_directory, chroot ....
Para mostrar la fragmentación del espacio libre, use la solicitud freefrag , como tal.
debugfs: freefrag
Device: /dev/sda10 Blocksize: 4096 bytes Total blocks: 86154752 Free blocks: 22387732 (26.0%) Min. free extent: 4 KB Max. free extent: 2064256 KB Avg. free extent: 2664 KB Num. free extent: 33625 HISTOGRAM OF FREE EXTENT SIZES: Extent Size Range : Free extents Free Blocks Percent 4K... 8K- : 4883 4883 0.02% 8K... 16K- : 4029 9357 0.04% 16K... 32K- : 3172 15824 0.07% 32K... 64K- : 2523 27916 0.12% 64K... 128K- : 2041 45142 0.20% 128K... 256K- : 2088 95442 0.43% 256K... 512K- : 2462 218526 0.98% 512K... 1024K- : 3175 571055 2.55% 1M... 2M- : 4551 1609188 7.19% 2M... 4M- : 2870 1942177 8.68% 4M... 8M- : 1065 1448374 6.47% 8M... 16M- : 364 891633 3.98% 16M... 32M- : 194 984448 4.40% 32M... 64M- : 86 873181 3.90% 64M... 128M- : 77 1733629 7.74% 128M... 256M- : 11 490445 2.19% 256M... 512M- : 10 889448 3.97% 512M... 1024M- : 2 343904 1.54% 1G... 2G- : 22 10217801 45.64% debugfs:
Puede explorar muchas otras solicitudes, como crear o eliminar archivos o directorios, cambiar el directorio de trabajo actual y mucho más, simplemente leyendo la breve descripción proporcionada. Para salir de debugfs, use la solicitud q
.
¡Eso es todo por ahora! Tenemos una colección de artículos relacionados en las diferentes categorías a continuación, que encontrará útiles.
- 12 Useful “df” Commands to Check Disk Space in Linux
- Pydf an Alternative “df” Command to Check Disk Usage in Different Colours
- 10 Useful du (Disk Usage) Commands to Find Disk Usage of Files and Directories
- 3 Useful GUI and Terminal Based Linux Disk Scanning Tools
- How to Check Bad Sectors or Bad Blocks on Hard Disk in Linux
- How to Repair and Defragment Linux System Partitions and Directories
Mantener un sistema de archivos saludable siempre mejora el rendimiento general de su sistema Linux. Si tiene alguna pregunta o comentario adicional para compartir, utilice el formulario de comentarios a continuación.