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
Проверить, свободно ли устройство
Выполнить профилактику

Эта статья помогла вам решить проблему?