Monitorizar disco duro en Linux

Quizás muchos de vosotros conocerán top, la herramienta para monitorizar el sistema por defecto en GNU/Linux, y es posible que en esta aplicación el único aspecto que podemos echar en falta es el hecho de poder conocer el estado de nuestros discos duros en el momento de ejecutar un programa.

Para ello, existe una herramienta llamada iotop, que con un aspecto similar a top presenta el estado nuestros dispositivos de entrada/salida, es decir, nuestro disco duro (todos los discos, particiones y, evidentemente, la swap) y todos los dispositivos de E/S que tengamos conectados.

Para instalarlo:

ahornero@6581-D:~$ sudo apt-get install iotop
[sudo] password for ahornero:

  • En distribuciones basadas en Red Hat (e.g. CentOS):

root@6581-D:~$ yum install iotop

  • Otras distribuciones (Gentoo Linux o Arch Linux):

root@6581-D:~$ emerge iotop

root@6581-D:~$ pacman -Sy iotop

Para ejecutarlo, desde el mismo terminal:

ahornero@6581-D:~$ iotop

Obteniendo un resultado como el de la figura:

Por ejemplo, en mi caso deseo monitorizar en background un proceso, conocer el tiempo en que ocurren los acontecimientos y que sólo me muestre los procesos que están haciendo uso del disco, limitando además el número de iteraciones de iotop a 100. Y por supuesto, redireccionando la salida por pantalla a un fichero. Así:

ahornero@6581-D:~$ iotop –batch –only –time –iter=100 –delay=0.1 > iotop.out &

Y por orden de los parámetros:

  • –batch (-b): Modo no interactivo.
  • –only (-o): Sólo se muestran los procesos que hacen uso de entrada/salida (E/S).
  • –time (-t): Incluye una marca de tiempo.
  • –iter= (-n): Define el número de veces que se itera antes de salir. Por defecto nunca finaliza.
  • –delay= (-d): Define el tamaño de paso entre iteración e iteración. En mi caso lo he fijado a 10ms.
  • Para volcar la salida a fichero la redirecciono usando el carácter > e indico a continuación el fichero de salida.
  • Y finalmente para lanzarlo en background uso el carácter et (ampersand, &).

Si deseas más información comenta aquí o:

ahornero@6581-D:~$ man iotop

Entradas relacionadas:

  1. ¿Cómo formatear un USB o disco duro extraíble en Ubuntu?
  2. Configurar el arranque de GRUB
  3. Lanzar un Script en Linux de cuatro maneras diferentes
  4. Instalar y Configurar Samba en Linux
  5. Aprender a usar el gestor de paquetes RPM

Acerca de Alberto Hornero Luque

Contínuamente relacionado con el procesamiento de imágenes y el análisis numérico, se encuentra actualmente trabajando como Ingeniero Técnico en el laboratorio de Métodos Cuantitativos de Teledetección del CSIC.  Administrador del portal Linux Hispano y cofundador de Red de Autores y Geometrio, centra sus intereses en tecnologías abiertas, desarrollos en la nube y GNU/Linux. Es un apasionado de la fotografía y puedes seguir sus updates en @ahornero y LinkedIn.
  • Pingback: Bitacoras.com

  • Maxi

    Yo uso htop en lugar de top, y lo unico que le falta es el monitor de discos porque podes ver la swap y otras cosas mas. Me gusta mas que top, es mas manejable jaja.
    Saludos!

  • Pingback: Tweets that mention Monitorizar disco duro en Linux | Linux Hispano -- Topsy.com

  • http://hayardillasenlared.blogspot.com/ Ardillas en la red

    Para ejecutarlo, desde el mismo terminal:

    ahornero@6581-D:~$ sudo apt-get install iotop

    Ahi deberia decir solo “iotop” o “sudo iotop” =)

    Saludos!

  • http://ahornero.com ahornero

    @Ardillas en la red: gracias por la corrección, una errata.

    Saludos!

  • http://ahornero.com ahornero

    @Maxi: Pues sí, htop es una herramienta bastante completa, aunque para el caso que me ocupaba prefería iotop porque requería menor configuración, todo por parámetros y listo.

    Como nota, también existe otra aplicación del estilo: atop, podréis leer más información aquí: http://www.atoptool.nl/ Y recalco que totalmente de acuerdo con @Maxi, htop es la más completa.

    ¡Saludos!

  • http://ahornero.com ahornero

    @Maxi, he olvidado comentarte antes que si que puedes ver el estado de los discos con htop, sólo tienes que elegirlo desde las opciones, se llaman IO_RD y IO_WR, para .lectura y escritura en dispositivos de E/S respectivamente.

  • http://www.muspells.net nordri

    En
    Distributor ID: CentOS
    Description: CentOS release 5.5 (Final)
    Release: 5.5
    Codename: Final
    Kernel: 2.6.18-194.32.1.el5

    No se puede instalar porque fallan las versiones del kernel y de python
    Could not run iotop as some of the requirements are not met:
    - Linux >= 2.6.20
    - Python >= 2.5 or Python 2.4 with the ctypes module

    Saludos

  • http://ahornero.com ahornero

    @nordri: prueba antes con $yum install python26

    Si no está en tu repo:

    $ rpm -Uvh http://yum.chrislea.com/centos/5/i386/chl-release-5-3.noarch.rpm
    $ rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-CHL

    Y si no con la versión 2.5 te la instalas desde el fuente:

    $ wget http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tgz
    $ tar fxz Python-2.5.2.tgz
    $ cd Python-2.5.2
    $ ./configure
    $ make
    $ make install

  • Pingback: Monitorizar discos duros en Linux

  • Pingback: Meneame: Monitorizar discos duros en Linux | Superlinux

  • Pingback: Calcular la velocidad del disco en Linux | Linux Hispano

  • Pingback: Calcular la velocidad del disco en Linux | Superlinux

  • Pingback: Comprobar estado del disco duro con S.M.A.R.T. Monitoring Tools | Linux Hispano