LinuxParty
Esto es algo que siempre me pasa y nunca me acuerdo de cómo solucionarlo. Hoy he recibido una alerta de uno de mis servidores, MySQL se había parado y no podía reiniciarse. Al entrar a la máquina para hacerlo manualmente, en efecto, me decía que no podía, que los archivos eran de sólo lectura . Después de hacer alguna comprobación más me doy cuenta de que la unidad entera se había quedado en algún estado extraño de sólo lectura a pesar de que el mount indicaba lo contrario.
[javier@servidor ~]# df -h .ficheros Tamaño Usados Disp Uso% Montado en
devtmpfs 1,9G 0 1,9G 0% /dev
tmpfs 1,9G 80M 1,8G 5% /dev/shm
tmpfs 1,9G 1,5M 1,9G 1% /run
tmpfs 1,9G 0 1,9G 0% /sys/fs/cgroup
/dev/sda3 70G 24G 42G 37% /
tmpfs 1,9G 24K 1,9G 1% /tmp
/dev/sda2 385G 363G 2,6G 100% /home
/dev/sda1 674M 195M 431M 32% /boot
tmpfs 384M 168K 384M 1% /run/user/1004
encfs 385G 363G 2,6G 100% /home/javier/bin/sbin
encfs 385G 363G 2,6G 100% /home/javier/dwhelper/dwhelper
/dev/sdb2 472G 334G 115G 75% /run/media/javier/LINUXPART
Decido entonces desmontar la unidad y volver a montarla, pero…
[javier@servidor ~]# umount /mnt/unidad umount
/mnt/unidad: device is busy
Y aquí viene el problema. Había parado, en teoría, todos los servicios que utilizaban esa unidad, pero aún así me daba este error. Podría haber forzado el umount con:
umount -l /dev/hdX
Pero prefiero saber qué es lo que está ocupando la unidad antes de forzarlo, cuestión de precaución sólo. Necesitamos saber, entonces, qué procesos están haciendo uso de la unidad que queremos desmontar, y esto es lo importante de este artículo.
[javier@servidor ~]# fuser -vm /dev/hdb1
USER PID ACCESS COMMAND /dev/hdb1: named 456 ..c.. named mysql 587 F.c.. mysqld apache 1113 F.... httpd root 1925 ..c.. screen root 1926 ..c.. bash apache 8009 F.... httpd apache 9267 F.... httpd
Con este sencillo comando de fuser ya sabemos quién accede a la unidad en cuestión. En mi caso era un script de bash que estaba abierto y un rsync. Los paré (los puedes detener con kill) y ya pude desmontar la unidad correctamente. Al volver a montarla todo comenzó a funcionar correctamente.
Si algún proceso está usando el sistema de archivo se le mata y ya está. (Bajo tu responsabilidad)
kill -9 1113

-
Linux
- Zorin OS 18 supera el millón de descargas: el Linux más elegante conquista el escritorio Windows
- Woof: intercambie fácilmente archivos a través de una red local en Linux
- Usando systemctl para controlar systemd
- 🧰 Cómo reparar el error “Transport endpoint is not connected” en Linux (y por qué ocurre)
- Can’t read superblock: recuperando una partición con el primer superbloque dañado con Linux
- Comprobar el estado de salud del disco duro con Smartmontools, smartctl buscando sectores ilegibles
- 7 características y herramientas útiles de seguridad de Linux para principiantes
- Ejecutar Aplicaciones Gráficas Remotas en Local: Guía Completa en Linux
- Las 8 mejores herramientas para acceder a Linux por remoto
- Clientes de acceso remoto, desde y para el escritorio Linux
- ¡Histórico! Linux Supera el 6% de Cuota de Mercado en Escritorios: ¿El Año de Linux Ha Llegado?
- Woof: Compartir archivos/ficheros fácilmente en su LAN o red local, sin Samba, entre Linux, Mac, Windows, Android e iPhone



