Linux Error Number Table (errno)

These are the error numbers (errno) and their corresponding symbolic names.

While some architectures/ABIs have different number<->symbol mappings, they're equivalent on x86 (32-bit & 64-bit) and arm (32-bit & 64-bit).

For more details on errno's in general, see the errno(3) man page.

If you're writing some shell scripts, check out the errno utility.


10x01EPERMOperation not permitted
20x02ENOENTNo such file or directory
30x03ESRCHNo such process
40x04EINTRInterrupted system call
50x05EIOInput/output error
60x06ENXIONo such device or address
70x07E2BIGArgument list too long
80x08ENOEXECExec format error
90x09EBADFBad file descriptor
100x0aECHILDNo child processes
110x0bEAGAINResource temporarily unavailable
110x0bEWOULDBLOCK(Same value as EAGAIN) Resource temporarily unavailable
120x0cENOMEMCannot allocate memory
130x0dEACCESPermission denied
140x0eEFAULTBad address
150x0fENOTBLKBlock device required
160x10EBUSYDevice or resource busy
170x11EEXISTFile exists
180x12EXDEVInvalid cross-device link
190x13ENODEVNo such device
200x14ENOTDIRNot a directory
210x15EISDIRIs a directory
220x16EINVALInvalid argument
230x17ENFILEToo many open files in system
240x18EMFILEToo many open files
250x19ENOTTYInappropriate ioctl for device
260x1aETXTBSYText file busy
270x1bEFBIGFile too large
280x1cENOSPCNo space left on device
290x1dESPIPEIllegal seek
300x1eEROFSRead-only file system
310x1fEMLINKToo many links
320x20EPIPEBroken pipe
330x21EDOMNumerical argument out of domain
340x22ERANGENumerical result out of range
350x23EDEADLKResource deadlock avoided
350x23EDEADLOCK(Same value as EDEADLK) Resource deadlock avoided
360x24ENAMETOOLONGFile name too long
370x25ENOLCKNo locks available
380x26ENOSYSFunction not implemented
390x27ENOTEMPTYDirectory not empty
400x28ELOOPToo many levels of symbolic links
410x29not implemented
420x2aENOMSGNo message of desired type
430x2bEIDRMIdentifier removed
440x2cECHRNGChannel number out of range
450x2dEL2NSYNCLevel 2 not synchronized
460x2eEL3HLTLevel 3 halted
470x2fEL3RSTLevel 3 reset
480x30ELNRNGLink number out of range
490x31EUNATCHProtocol driver not attached
500x32ENOCSINo CSI structure available
510x33EL2HLTLevel 2 halted
520x34EBADEInvalid exchange
530x35EBADRInvalid request descriptor
540x36EXFULLExchange full
550x37ENOANONo anode
560x38EBADRQCInvalid request code
570x39EBADSLTInvalid slot
580x3anot implemented
590x3bEBFONTBad font file format
600x3cENOSTRDevice not a stream
610x3dENODATANo data available
620x3eETIMETimer expired
630x3fENOSROut of streams resources
640x40ENONETMachine is not on the network
650x41ENOPKGPackage not installed
660x42EREMOTEObject is remote
670x43ENOLINKLink has been severed
680x44EADVAdvertise error
690x45ESRMNTSrmount error
700x46ECOMMCommunication error on send
710x47EPROTOProtocol error
720x48EMULTIHOPMultihop attempted
730x49EDOTDOTRFS specific error
740x4aEBADMSGBad message
750x4bEOVERFLOWValue too large for defined data type
760x4cENOTUNIQName not unique on network
770x4dEBADFDFile descriptor in bad state
780x4eEREMCHGRemote address changed
790x4fELIBACCCan not access a needed shared library
800x50ELIBBADAccessing a corrupted shared library
810x51ELIBSCN.lib section in a.out corrupted
820x52ELIBMAXAttempting to link in too many shared libraries
830x53ELIBEXECCannot exec a shared library directly
840x54EILSEQInvalid or incomplete multibyte or wide character
850x55ERESTARTInterrupted system call should be restarted
860x56ESTRPIPEStreams pipe error
870x57EUSERSToo many users
880x58ENOTSOCKSocket operation on non-socket
890x59EDESTADDRREQDestination address required
900x5aEMSGSIZEMessage too long
910x5bEPROTOTYPEProtocol wrong type for socket
920x5cENOPROTOOPTProtocol not available
930x5dEPROTONOSUPPORTProtocol not supported
940x5eESOCKTNOSUPPORTSocket type not supported
950x5fEOPNOTSUPPOperation not supported
950x5fENOTSUP(Same value as EOPNOTSUPP) Operation not supported
960x60EPFNOSUPPORTProtocol family not supported
970x61EAFNOSUPPORTAddress family not supported by protocol
980x62EADDRINUSEAddress already in use
990x63EADDRNOTAVAILCannot assign requested address
1000x64ENETDOWNNetwork is down
1010x65ENETUNREACHNetwork is unreachable
1020x66ENETRESETNetwork dropped connection on reset
1030x67ECONNABORTEDSoftware caused connection abort
1040x68ECONNRESETConnection reset by peer
1050x69ENOBUFSNo buffer space available
1060x6aEISCONNTransport endpoint is already connected
1070x6bENOTCONNTransport endpoint is not connected
1080x6cESHUTDOWNCannot send after transport endpoint shutdown
1090x6dETOOMANYREFSToo many references: cannot splice
1100x6eETIMEDOUTConnection timed out
1110x6fECONNREFUSEDConnection refused
1120x70EHOSTDOWNHost is down
1130x71EHOSTUNREACHNo route to host
1140x72EALREADYOperation already in progress
1150x73EINPROGRESSOperation now in progress
1160x74ESTALEStale file handle
1170x75EUCLEANStructure needs cleaning
1180x76ENOTNAMNot a XENIX named type file
1190x77ENAVAILNo XENIX semaphores available
1200x78EISNAMIs a named type file
1210x79EREMOTEIORemote I/O error
1220x7aEDQUOTDisk quota exceeded
1230x7bENOMEDIUMNo medium found
1240x7cEMEDIUMTYPEWrong medium type
1250x7dECANCELEDOperation canceled
1260x7eENOKEYRequired key not available
1270x7fEKEYEXPIREDKey has expired
1280x80EKEYREVOKEDKey has been revoked
1290x81EKEYREJECTEDKey was rejected by service
1300x82EOWNERDEADOwner died
1310x83ENOTRECOVERABLEState not recoverable
1320x84ERFKILLOperation not possible due to RF-kill
1330x85EHWPOISONMemory page has hardware error