EBUSY (errno 16)

errno 16

LINUX

Message officiel (tel qu'affiché à l'écran) : Device or resource busy

Aussi recherché sous la forme : Device or resource busy, errno 16, target is busy

Terminal Linux exécutant strace, avec l'appel système en échec et l'errno mis en évidence
errno Linux : tracez l'appel système exact qui échoue avant de modifier quoi que ce soit.

Ce que cela signifie

EBUSY, « Device or resource busy » (errno 16), signifie que la cible est en cours d’utilisation et que l’opération ne peut pas se poursuivre. L’erreur apparaît le plus souvent lors du démontage d’un système de fichiers dont des fichiers sont ouverts, de la suppression d’un point de montage, ou de l’utilisation d’un périphérique détenu par un autre processus.

S'applique à : Linux, macOS (errno BSD), WSL, Conteneurs Docker

Comment corriger EBUSY (errno 16)

  1. Identifiez ce qui utilise un montage avec 'sudo lsof +f -- /mnt/point' ou 'sudo fuser -vm /mnt/point'
  2. Quittez le répertoire dans tous les interpréteurs de commandes (un shell dont le répertoire courant se trouve dans le montage le garde occupé)
  3. Arrêtez le service ou le processus qui utilise le périphérique, puis relancez le démontage
  4. Recherchez des montages imbriqués avec 'findmnt -R /mnt/point' et démontez d’abord les montages internes
  5. N’utilisez 'umount -l' (démontage différé) qu’en dernier recours : il détache le montage, mais les fichiers utilisés restent ouverts
  6. Dans Docker, 'rm' sur un chemin monté par liaison renvoie EBUSY ; supprimez le montage, et non le point de montage, depuis l’intérieur du conteneur

Pourquoi cela se produit

Le noyau refuse les opérations qui perturberaient les utilisateurs actifs d’une ressource : fichiers ouverts ou répertoires de travail sur un système de fichiers, périphériques montés, ouvertures exclusives de périphériques et points de montage en cours d’utilisation.

FAQ

Comment corriger « umount: target is busy » ?

Identifiez le processus avec 'lsof' ou 'fuser', fermez-le ou quittez le répertoire avec cd, puis démontez de nouveau.

Erreurs liées

Source : Linux kernel errno.h · solutions rédigées et vérifiées par les éditeurs (voir notre politique éditoriale)

Dernière mise à jour :