Linux EBUSYСредняя

Исправляем ошибку EBUSY: занятое устройство в Linux – руководство

Статья объясняет значение ошибки EBUSY в Linux, её распространённые причины и предлагает несколько проверенных способов решения. Вы узнаете, как быстро устранить проблему с занятым устройством и предотвратить её повторение.

Обновлено 8 июля 2026 г.
5-10 мин
Низкая
FixPedia Team
Применимо к:Ubuntu 22.04Debian 12Linux Kernel 5.15+

Что означает ошибка EBUSY

Ошибка EBUSY (код 16) сообщает, что устройство или системный ресурс в данный момент занято и не может быть использовано. В Linux вы можете столкнуться с этим сообщением, когда пытаетесь смонтировать, демонтировать или удалить файл, к которому уже привязан другой процесс, или когда USB-накопитель не был безопасно извлечён.

Причины возникновения

  • Процесс удерживает устройство открытым (например, смонтировано, используется).
  • Попытка удалить файл, который открыт другим процессом.
  • USB-устройство не было безопасно извлечено, и udisks/udisksctl не завершил работу.
  • Раздел смонтирован с параметром readonly или активным fsck.
  • Конфликт при одновременном монтировании/демонтировании устройства.

Способы решения

Способ 1: Использование fuser для выявления и завершения процесса

  1. Определите устройство, например /dev/sdb.
  2. Найдите PID, который блокирует его:
sudo fuser /dev/sdb
  1. Завершите процесс с помощью fuser (одна команда):
sudo fuser -k /dev/sdb

⚠️ Важно: fuser -k отправляет сигнал SIGKILL, поэтому используйте эту команду только для устройств, которые вы можете восстановить.

Способ 2: Ручное завершение процесса через lsof и kill

  1. Найдите PID процесса, держащего устройство открытым:
sudo lsof | grep /dev/sdb
  1. Завершите его:
sudo kill -9 PID

Способ 3: Перезагрузка системы (крайняя мера)

Если устройство заблокировано системным процессом, перезагрузка освободит его:

sudo reboot

Способ 4: Безопасное извлечение USB-носителя

  1. Отсоедините устройство физически.
  2. Используйте udisksctl для безопасного извлечения:
sudo udisksctl unmount -b /dev/sdb
sudo udisksctl eject -b /dev/sdb

💡 Совет: После извлечения подождите несколько секунд перед повторным подключением.

Профилактика

  • Используйте sudo umount /mnt вместо принудительного завершения монтирования.
  • Извлекайте USB-носители только через меню системы или udisksctl.
  • Регулярно проверяйте процессы, держащие устройства открытыми (ps aux | grep mount).
  • Не выполняйте fsck на активном разделе; отложите проверку до перезагрузки.
  • Обновляйте драйверы и ядро, чтобы избежать конфликтов с устройствами.

Часто задаваемые вопросы

Что означает ошибка EBUSY в Linux?
Какие программы часто вызывают ошибку EBUSY?
Как быстро устранить EBUSY с помощью команд?
Можно ли предотвратить повторение ошибки EBUSY?

Полезное

Выявить процесс, блокирующий устройство
Завершить процесс, вызвавший ошибку
Повторить операцию, вызвавшую EBUSY
Проверить, свободно ли устройство
Выполнить профилактику