GNU/Linux >> Tutoriales Linux >  >> Linux

Error al volver a leer la tabla de particiones con el error 16:Dispositivo o recurso ocupado

Parece que este dispositivo está montado. Ejecutar umount /dev/sdb1 y vuelve a intentarlo.


Suponiendo que obtenga esto como resultado de la automatización (por ejemplo, usando expect ) el fdisk operación (y que la partición no está realmente montada), intente agregar unos segundos de retraso después de modificar la partición y antes de escribir la partición.

Recibí el mismo error cuando intentaba automatizar una llamada a fdisk en Centos 7.6 a la:

# (echo "d"; echo "";
        echo "n"; echo ""; echo 3; echo 2001954; echo "";
        echo "w") | fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): Partition number (1-3, default 3): Partition 3 is deleted

Command (m for help): Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): Using default response p
Partition number (3,4, default 3): First sector (2001954-31116287, default 2002944): Last sector, +sectors or +size{K,M,G} (2001954-31116287, default 31116287): Using default value 31116287
Partition 3 of type Linux and of size 13.9 GiB is set

Command (m for help): The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.


Mi sospecha era que mi flujo de comandos canalizado estaba mostrando un problema de tiempo en fdisk (eso no se activaría con una entrada más lenta/manual), así que comencé a rociar sleep comandos para retrasar varias entradas hasta que el error desaparezca. El problema en mi caso fue que el w estaba sucediendo demasiado pronto después de que se definió la nueva partición.

Un sleep 5 antes del w da como resultado un éxito constante:

# (echo "d"; echo "";
        echo "n"; echo ""; echo 3; echo 2001954; echo "";
        sleep 5; echo "w") | fdisk /dev/sdb

Linux
  1. Error de instalación de ConfigParser:python setup.py egg_info falló con el código de error 1 [Resuelto]

  2. ¿Error al firmar Csr con la clave raíz Ca?

  3. ‘lxc_cgfs:dispositivo o recurso ocupado:no se pudo establecer memory.use_hierarchy en 1; continuando’ – error al iniciar el contenedor LXC

  4. Cómo corregir el error "Error en la verificación de la clave del host"

  5. ¿Simula un dispositivo de bloque defectuoso con errores de lectura?

error:el comando 'gcc' falló con el estado de salida 1 en CentOS

rmdir falló debido a dispositivo o recurso ocupado

Error al volver a leer la tabla de particiones con el error 22:argumento no válido

Determinar el tamaño de un dispositivo de bloque

¿Cómo encontrar el controlador (módulo) asociado con un dispositivo en Linux?

¿Cómo ejecutar un comando en segundo plano con un retraso?