Error Codes Wiki

Linux ENXIO (errno 6) — No Such Device or Address

Errorerrno

Overview

Linux ENXIO error occurs when a device node exists but there is no driver loaded or the device has been removed from the system.

Key Details

  • ENXIO (errno 6) means the device special file exists but no device driver claims it
  • The device node in /dev exists but the actual hardware or driver is not present
  • Common with hot-removed USB devices, ejected disk drives, or unloaded kernel modules
  • Also occurs when opening the slave side of a pseudo-terminal that has no master
  • lsblk and fdisk show the device but I/O operations fail with ENXIO

Common Causes

  • Device physically removed but device node not cleaned up
  • Kernel module for the device not loaded
  • SCSI/SATA device offline or in error state
  • Multipath device with all paths down
  • Device being accessed after forceful removal

Steps

  1. 1Check if device is present: lsblk and lspci / lsusb to verify hardware presence
  2. 2Check kernel module: lsmod | grep driver_name and modprobe driver_name to load it
  3. 3For disappeared disk: echo '- - -' > /sys/class/scsi_host/hostX/scan to rescan SCSI bus
  4. 4Check dmesg for device removal or error messages
  5. 5For multipath: multipath -ll to check path status

Tags

linuxenxioerrno-6no-devicedriver

More in Errno

Frequently Asked Questions

Device files in /dev are just interface points. ENXIO means no driver or hardware is behind that interface.