Linux system errors

No Such Device

19
MediumLinux System

Reviewed for reference consistency: August 11, 2026

the operation targets hardware or a driver that is not present

What 19 Means

The 19 error on the Linux system errors indicates no such device — the operation targets hardware or a driver that is not present. This typically occurs due to a device unplugged or powered off mid-session, leaving its node present but unbacked.

Exit code 19 corresponds to ENODEV, 'No such device'. The distinction from a missing file matters: the path may well exist — a device node sitting in /dev — but the hardware or driver that should answer behind it is gone. The kernel accepted the lookup and found nobody home.

How to fix 19

General informational guidance, not professional advice. Commands can affect your system or data — back up first and proceed at your own risk. FixerCode is an independent reference, not affiliated with any vendor mentioned.

  1. List block devices the kernel sees

    lsblk shows currently attached storage and their mountpoints, confirming whether the target hardware is present at all.

    lsblk
  2. Check which drivers are loaded

    The loaded-modules list shows whether the driver for the device class is running; a missing module explains an unbacked device node.

    lsmod
  3. Review device connect and disconnect events

    The kernel log records hot-plug events with timestamps, showing exactly when the device left.

    dmesg -T | grep -i usb

Technical Background

ENODEV means the device row is missing. Path resolution may succeed perfectly — the node in /dev is right there — but the operation runs one step further: binding the open to actual hardware or driver state. When the hardware was unplugged, never present, or never given a driver, that step fails with errno 19.

Hot-unplug is the everyday source. USB adapters, cameras, and external drives vanish while their nodes linger, and the next write from a program that did not notice is answered by the kernel with a quiet 'nobody is home'.

Containers add a modern variant: a process inside a container sees only the devices explicitly handed through. The node may even be visible, but with no device backing granted, the operation fails as though the hardware never existed — which, from the container's perspective, it effectively did not.

Common Causes

  • A device unplugged or powered off mid-session, leaving its node present but unbacked
  • A kernel module not loaded, so the device class has no driver behind it
  • An operation on a special file whose backing device disappeared after boot or hot-unplug

Typical Scenarios

  • A write to a USB serial adapter failing after the adapter was physically unplugged
  • A program opening a device whose kernel module was never loaded on this machine
  • A containerized process reaching for a host device that was never passed into the container

What to Know

Two inventories settle it: what hardware the kernel currently sees, and what drivers are loaded. The device-event log bridges the two by recording arrivals and departures with timestamps.

Frequently Asked Questions

Common questions about Linux 19 error

ENOENT (exit 2) means the path does not exist. ENODEV (exit 19) means the path may exist but the device or driver behind it does not answer. The node can be present while its hardware is long gone.

Device nodes can persist as filesystem entries independent of hardware presence, especially with manually created or statically managed nodes. The path survives; the driver binding does not — and opening it then yields ENODEV.

A device class without its driver loaded has no implementation behind the node. The loaded-modules list and the kernel's device-event log together show whether the driver ever arrived.

Related Error Codes

Related Errors From Other Categories

Similar error codes documented across different platforms and systems