Linux त्रुटि कोड
जानें कि ECONNREFUSED या «[Errno 13]» जैसे errno, SIGKILL जैसे सिग्नल या 137 जैसे निकास कोड का क्या अर्थ है, Linux और macOS दोनों के मानों के साथ। प्रोग्राम, Docker या Kubernetes का पूरा संदेश पेस्ट करें और टूल उसमें से कोड निकाल लेगा।
उदाहरण:

208 में से 208 कोड

errnoसिस्टम कॉल की त्रुटियाँ151
EPERM
Linux 1macOS 1

Operation not permitted

ऑपरेशन के लिए ऐसे विशेषाधिकार चाहिए जो प्रोसेस के पास नहीं हैं, जैसे किसी फ़ाइल का स्वामी बदलना, किसी दूसरे उपयोगकर्ता के प्रोसेस को सिग्नल भेजना या किसी अपरिवर्तनीय फ़ाइल (chattr +i) को बदलना। EACCES के विपरीत, यह फ़ाइल की अनुमतियाँ बदलने से हल नहीं होता: root या संबंधित capability चाहिए।

ENOENT
Linux 2macOS 2

No such file or directory

फ़ाइल या डायरेक्टरी मौजूद नहीं है। यह तब भी आता है जब पथ की कोई बीच की डायरेक्टरी गायब हो, जब कोई सिंबॉलिक लिंक ऐसे लक्ष्य की ओर इशारा करे जो मौजूद नहीं है, या जब स्क्रिप्ट की #! पंक्ति वाला इंटरप्रेटर इंस्टॉल न हो।

ESRCH
Linux 3macOS 3

No such process

उस पहचानकर्ता वाला कोई प्रोसेस, प्रोसेस समूह या थ्रेड मौजूद नहीं है; उदाहरण के लिए, ऐसे PID पर kill चलाने पर जो पहले ही समाप्त हो चुका है।

EINTR
Linux 4macOS 4

Interrupted system call

सिस्टम कॉल पूरी होने से पहले एक सिग्नल ने उसे बाधित कर दिया। यह असली त्रुटि नहीं है: प्रोग्राम को कॉल दोबारा करनी चाहिए, या सिग्नल हैंडलर को SA_RESTART के साथ इंस्टॉल करना चाहिए।

EIO
Linux 5macOS 5

Input/output error

निम्न-स्तरीय इनपुट/आउटपुट त्रुटि, आम तौर पर डिवाइस से पढ़ते या उसमें लिखते समय। डिस्क में यह अक्सर ख़राब सेक्टर या दोषपूर्ण केबल का संकेत होती है: dmesg और SMART स्थिति जाँचें। यह पहले से बंद हो चुके टर्मिनल में लिखते समय भी आती है।

ENXIO
Linux 6macOS 6

No such device or address

macOS: Device not configured

डिवाइस या पता मौजूद नहीं है: डिवाइस फ़ाइल तो है, पर उसके पीछे कोई हार्डवेयर नहीं है, या किसी FIFO को बिना किसी रीडर के O_NONBLOCK के साथ लिखने के लिए खोला गया।

E2BIG
Linux 7macOS 7

Argument list too long

exec को दी गई आर्ग्युमेंट और एनवायरनमेंट वेरिएबल की सूची बहुत बड़ी है। यह वाइल्डकार्ड के हज़ारों फ़ाइलों में फैल जाने पर आने वाली प्रसिद्ध «Argument list too long» त्रुटि है; find -exec या xargs का उपयोग करें।

ENOEXEC
Linux 8macOS 8

Exec format error

फ़ाइल का कोई पहचाना हुआ एक्ज़ीक्यूटेबल फ़ॉर्मैट नहीं है: यह किसी दूसरे आर्किटेक्चर का बाइनरी है, क्षतिग्रस्त है, या #! पंक्ति के बिना स्क्रिप्ट है।

EBADF
Linux 9macOS 9

Bad file descriptor

फ़ाइल डिस्क्रिप्टर अमान्य है, पहले ही बंद हो चुका है, या ऐसे मोड में खोला गया है जो ऑपरेशन की अनुमति नहीं देता, जैसे केवल पढ़ने के लिए खोले गए डिस्क्रिप्टर में लिखना।

ECHILD
Linux 10macOS 10

No child processes

प्रोसेस का कोई चाइल्ड नहीं है जिसके लिए wait या waitpid से प्रतीक्षा की जा सके, अक्सर इसलिए कि SIGCHLD अनदेखा किया जाता है और चाइल्ड अपने आप साफ़ हो जाते हैं।

EAGAIN
Linux 11macOS 35

Resource temporarily unavailable

संसाधन फ़िलहाल उपलब्ध नहीं है और दोबारा कोशिश करनी चाहिए। नॉन-ब्लॉकिंग ऑपरेशनों में इसका अर्थ है कि अभी डेटा या जगह नहीं है; fork में, कि प्रोसेस या थ्रेड की सीमा पूरी हो गई है (ulimit -u या cgroup का pids.max)।

समान मान:EWOULDBLOCK

ENOMEM
Linux 12macOS 12

Cannot allocate memory

ऑपरेशन के लिए पर्याप्त मेमोरी नहीं है या प्रोसेस की कोई मेमोरी सीमा पार हो गई है। fork या mmap में इसका कारण overcommit नीति, cgroup की सीमा या एड्रेस स्पेस की कमी हो सकता है।

EACCES
Linux 13macOS 13

Permission denied

फ़ाइल की या पथ की किसी डायरेक्टरी की अनुमतियों (हर एक पर execute अनुमति चाहिए), किसी ACL, SELinux या AppArmor, या noexec वाले माउंट के कारण अनुमति अस्वीकृत। bind भी इसे लौटाता है जब बिना विशेषाधिकार के 1024 से छोटे पोर्ट का उपयोग किया जाए।

EFAULT
Linux 14macOS 14

Bad address

किसी सिस्टम कॉल को अमान्य मेमोरी पते का पॉइंटर दिया गया। यह प्रोग्राम में bug दर्शाता है।

ENOTBLK
Linux 15macOS 15

Block device required

ऑपरेशन को डिस्क जैसे ब्लॉक डिवाइस की ज़रूरत है और उसे दूसरी तरह की फ़ाइल मिली; उदाहरण के लिए, किसी साधारण फ़ाइल को -o loop के बिना माउंट करते समय।

EBUSY
Linux 16macOS 16

Device or resource busy

macOS: Device / Resource busy

डिवाइस या संसाधन उपयोग में है। यह आम तौर पर तब होता है जब ऐसे फ़ाइल सिस्टम को अनमाउंट किया जाए जिसमें फ़ाइलें खुली हों या कोई टर्मिनल उसके अंदर हो; lsof या fuser दिखाते हैं कि कौन से प्रोसेस उसका उपयोग कर रहे हैं।

EEXIST
Linux 17macOS 17

File exists

उस नाम की कोई फ़ाइल, डायरेक्टरी या अन्य ऑब्जेक्ट पहले से मौजूद है, उदाहरण के लिए O_EXCL के साथ बनाते समय, -p के बिना mkdir चलाते समय या ऐसा लिंक बनाते समय जिसका गंतव्य पहले से मौजूद हो।

EXDEV
Linux 18macOS 18

Invalid cross-device link

macOS: Cross-device link

अलग-अलग फ़ाइल सिस्टम के बीच न हार्ड लिंक बनाया जा सकता है और न ही फ़ाइल का नाम बदला जा सकता है। mv इसे कॉपी करके और फिर हटाकर हल करता है; rename() का उपयोग करने वाले प्रोग्रामों को भी यही करना चाहिए।

ENODEV
Linux 19macOS 19

No such device

macOS: Operation not supported by device

डिवाइस मौजूद नहीं है या ऑपरेशन का समर्थन नहीं करता; उदाहरण के लिए, ऐसे प्रकार का फ़ाइल सिस्टम माउंट करते समय जिसका कर्नेल मॉड्यूल लोड नहीं है।

ENOTDIR
Linux 20macOS 20

Not a directory

पथ का कोई घटक जिसे डायरेक्टरी होना चाहिए था, एक फ़ाइल है, या डायरेक्टरी (O_DIRECTORY) माँगी गई और वह डायरेक्टरी नहीं है।

EISDIR
Linux 21macOS 21

Is a directory

किसी डायरेक्टरी पर फ़ाइल वाला ऑपरेशन करने की कोशिश की गई, जैसे उसे लिखने के लिए खोलना।

EINVAL
Linux 22macOS 22

Invalid argument

कोई आर्ग्युमेंट उस कॉल के लिए मान्य नहीं है: सीमा से बाहर का मान, विकल्पों का असंगत संयोजन या ऐसा ऑपरेशन जिसका ऑब्जेक्ट समर्थन नहीं करता। यह सामान्य त्रुटि है: कॉल का man पेज ठोस मामलों की सूची देता है।

ENFILE
Linux 23macOS 23

Too many open files in system

पूरे सिस्टम की खुली फ़ाइलों की तालिका भर गई है। सीमा sysctl में fs.file-max से समायोजित होती है।

EMFILE
Linux 24macOS 24

Too many open files

प्रोसेस अपने खुले डिस्क्रिप्टर की सीमा तक पहुँच गया है («Too many open files»)। ulimit -n से या systemd में LimitNOFILE से सीमा बढ़ाएँ, और जाँचें कि प्रोग्राम फ़ाइलें या सॉकेट खुले तो नहीं छोड़ रहा।

ENOTTY
Linux 25macOS 25

Inappropriate ioctl for device

ऐसी चीज़ पर टर्मिनल ऑपरेशन (ioctl) माँगा गया जो टर्मिनल नहीं है, उदाहरण के लिए जब किसी इंटरैक्टिव प्रोग्राम का आउटपुट किसी फ़ाइल या पाइप में रीडायरेक्ट किया जाए।

ETXTBSY
Linux 26macOS 26

Text file busy

एक्ज़ीक्यूटेबल उपयोग में है: चल रहे बाइनरी में लिखा नहीं जा सकता, और न ही ऐसा बाइनरी चलाया जा सकता है जो अभी भी लिखने के लिए खुला हो। इसे अपडेट करने के लिए, नई फ़ाइल लिखकर उसका नाम बदलना बेहतर है।

EFBIG
Linux 27macOS 27

File too large

फ़ाइल उस अधिकतम आकार से बड़ी है जिसका फ़ाइल सिस्टम समर्थन करता है (FAT32 में 4 GB), या प्रोसेस की RLIMIT_FSIZE सीमा से।

ENOSPC
Linux 28macOS 28

No space left on device

डिवाइस पर जगह नहीं बची। अगर df ख़ाली जगह दिखाता है, तो df -i से inode जाँचें। inotify भी fs.inotify.max_user_watches ख़त्म होने पर इसे लौटाता है।

ESPIPE
Linux 29macOS 29

Illegal seek

पाइप, FIFO या सॉकेट पर lseek नहीं किया जा सकता, क्योंकि उनकी कोई स्थिति (position) नहीं होती।

EROFS
Linux 30macOS 30

Read-only file system

फ़ाइल सिस्टम केवल-पढ़ने के लिए माउंट है। अगर यह बिना किसी के कहे केवल-पढ़ने में बदल गया, तो कर्नेल ने त्रुटियाँ मिलने पर ऐसा किया है: dmesg देखें और fsck चलाएँ।

EMLINK
Linux 31macOS 31

Too many links

किसी फ़ाइल के हार्ड लिंक की अधिकतम संख्या पार हो गई, या कुछ फ़ाइल सिस्टम में किसी डायरेक्टरी की सबडायरेक्टरी की।

EPIPE
Linux 32macOS 32

Broken pipe

ऐसे पाइप या सॉकेट में लिखा गया जिसका दूसरा सिरा पहले ही बंद हो चुका है («Broken pipe»)। त्रुटि के अलावा, प्रोसेस को SIGPIPE मिलता है; यह सामान्य है जब पढ़ने वाला पहले समाप्त हो जाए, जैसे cmd | head में।

EDOM
Linux 33macOS 33

Numerical argument out of domain

किसी गणितीय फ़ंक्शन का आर्ग्युमेंट उसके डोमेन से बाहर है, जैसे किसी ऋणात्मक संख्या का वर्गमूल।

ERANGE
Linux 34macOS 34

Numerical result out of range

macOS: Result too large

फ़ंक्शन का परिणाम दर्शाए जाने के लिए बहुत बड़ा या बहुत छोटा है, या बफ़र परिणाम के लिए पर्याप्त नहीं है, जैसे छोटे बफ़र के साथ getcwd में।

EDEADLK
Linux 35macOS 11

Resource deadlock avoided

एक डेडलॉक टाला गया: माँगा गया लॉक, जैसे fcntl से फ़ाइल लॉक या त्रुटि-पहचान वाला mutex, हमेशा के लिए प्रतीक्षा में रह जाता।

समान मान:EDEADLOCK

ENAMETOOLONG
Linux 36macOS 63

File name too long

पथ या उसका कोई घटक अधिकतम लंबाई से बड़ा है: Linux में आम तौर पर हर नाम के लिए 255 बाइट और पथ के लिए 4096।

ENOLCK
Linux 37macOS 77

No locks available

कोई लॉक उपलब्ध नहीं है। NFS में यह अक्सर दर्शाता है कि लॉकिंग सेवा (lockd या rpc.statd) नहीं चल रही।

ENOSYS
Linux 38macOS 78

Function not implemented

सिस्टम कॉल इस कर्नेल में मौजूद नहीं है या लागू नहीं की गई है। यह आम तौर पर नए कर्नेल के लिए कंपाइल किए गए बाइनरी में, या कंटेनरों के उन seccomp प्रोफ़ाइल में होता है जो हाल की कॉल नहीं पहचानते।

ENOTEMPTY
Linux 39macOS 66

Directory not empty

डायरेक्टरी ख़ाली नहीं है, उदाहरण के लिए rmdir का उपयोग करते समय या किसी मौजूदा डायरेक्टरी के ऊपर नाम बदलते समय। उसे सामग्री सहित हटाने के लिए rm -r का उपयोग करें।

ELOOP
Linux 40macOS 62

Too many levels of symbolic links

पथ को हल करते समय बहुत अधिक सिंबॉलिक लिंक एक के बाद एक जुड़े हैं, आम तौर पर किसी चक्र के कारण, या किसी सिंबॉलिक लिंक पर O_NOFOLLOW का उपयोग किया गया।

ENOMSG
Linux 42macOS 91

No message of desired type

System V संदेश कतार में माँगे गए प्रकार का कोई संदेश नहीं है।

EIDRM
Linux 43macOS 90

Identifier removed

System V का IPC पहचानकर्ता (कतार, सेमाफ़ोर या साझा मेमोरी) प्रोसेस द्वारा उपयोग के दौरान हटा दिया गया।

ECHRNG
Linux 44macOS —

Channel number out of range

चैनल संख्या सीमा से बाहर। यह पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EL2NSYNC
Linux 45macOS —

Level 2 not synchronized

स्तर 2 सिंक्रनाइज़ नहीं। यह System V से आया पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EL3HLT
Linux 46macOS —

Level 3 halted

स्तर 3 रुका हुआ। यह System V से आया पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EL3RST
Linux 47macOS —

Level 3 reset

स्तर 3 रीसेट हुआ। यह System V से आया पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

ELNRNG
Linux 48macOS —

Link number out of range

लिंक संख्या सीमा से बाहर। यह पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EUNATCH
Linux 49macOS —

Protocol driver not attached

प्रोटोकॉल ड्राइवर जुड़ा हुआ नहीं है। इसका उपयोग कुछ ही सबसिस्टम करते हैं, जैसे कुछ Bluetooth ड्राइवर।

ENOCSI
Linux 50macOS —

No CSI structure available

कोई CSI संरचना उपलब्ध नहीं है। यह पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EL2HLT
Linux 51macOS —

Level 2 halted

स्तर 2 रुका हुआ। यह System V से आया पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EBADE
Linux 52macOS —

Invalid exchange

अमान्य एक्सचेंज। यह पुराना कोड है जिसे कुछ ड्राइवर और फ़ाइल सिस्टम अपने अर्थ में दोबारा उपयोग करते हैं।

EBADR
Linux 53macOS —

Invalid request descriptor

अमान्य अनुरोध डिस्क्रिप्टर। यह पुराना कोड है जिसे कुछ ड्राइवर अपने अर्थ में दोबारा उपयोग करते हैं।

EXFULL
Linux 54macOS —

Exchange full

एक्सचेंज भरा हुआ। यह पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

ENOANO
Linux 55macOS —

No anode

कोई «anode» नहीं है। यह पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EBADRQC
Linux 56macOS —

Invalid request code

अमान्य अनुरोध कोड। यह पुराना है; कुछ ड्राइवर इसे उन कमांड के लिए उपयोग करते हैं जिनका वे समर्थन नहीं करते।

EBADSLT
Linux 57macOS —

Invalid slot

अमान्य स्लॉट। यह पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

EBFONT
Linux 59macOS —

Bad font file format

फ़ॉन्ट फ़ाइल का फ़ॉर्मैट गलत है। यह पुराना कोड है जिसका Linux में कोई व्यावहारिक उपयोग नहीं।

ENOSTR
Linux 60macOS 99

Device not a stream

macOS: Not a STREAM

डिवाइस STREAM नहीं है। यह System V के STREAMS इंटरफ़ेस से संबंधित है, जिसे Linux लागू नहीं करता।

ENODATA
Linux 61macOS 96

No data available

macOS: No message available on STREAM

कोई डेटा उपलब्ध नहीं है। Linux में getxattr इसे तब लौटाता है जब विस्तारित एट्रिब्यूट मौजूद न हो; macOS में यह मामला ENOATTR है।

ETIME
Linux 62macOS 101

Timer expired

macOS: STREAM ioctl timeout

एक टाइमर समाप्त हो गया। यह STREAMS से आया है; Linux में कुछ ड्राइवर और io_uring इसे समय-सीमा वाले ऑपरेशनों के लिए उपयोग करते हैं।

ENOSR
Linux 63macOS 98

Out of streams resources

macOS: No STREAM resources

STREAMS के संसाधन ख़त्म हो गए; यह एक इंटरफ़ेस है जिसे Linux लागू नहीं करता।

ENONET
Linux 64macOS —

Machine is not on the network

मशीन नेटवर्क पर नहीं है। यह कम उपयोग वाला पुराना कोड है।

ENOPKG
Linux 65macOS —

Package not installed

पैकेज इंस्टॉल नहीं है। यह पुराना है; कुछ सबसिस्टम इसे तब उपयोग करते हैं जब कोई मॉड्यूल, जैसे कोई क्रिप्टोग्राफ़िक मॉड्यूल, मौजूद न हो।

EREMOTE
Linux 66macOS 71

Object is remote

macOS: Too many levels of remote in path

ऑब्जेक्ट रिमोट है। NFS में यह ऐसे पथ को दर्शाता है जो किसी दूसरे सर्वर से एक्सपोर्ट होता है।

ENOLINK
Linux 67macOS 97

Link has been severed

लिंक टूट गया। यह पुराना है; कुछ ड्राइवर इसे डिवाइस से कनेक्शन टूटने पर उपयोग करते हैं।

EADV
Linux 68macOS —

Advertise error

«advertise» त्रुटि। यह RFS से आया पुराना कोड है जिसका Linux में कोई उपयोग नहीं।

ESRMNT
Linux 69macOS —

Srmount error

«srmount» त्रुटि। यह RFS से आया पुराना कोड है जिसका Linux में कोई उपयोग नहीं।

ECOMM
Linux 70macOS —

Communication error on send

भेजते समय संचार त्रुटि। यह पुराना है; कुछ नेटवर्क और USB ड्राइवर इसका उपयोग करते हैं।

EPROTO
Linux 71macOS 100

Protocol error

प्रोटोकॉल त्रुटि: दूसरे सिरे या डिवाइस ने कुछ अप्रत्याशित उत्तर दिया। यह USB डिवाइसों के साथ और उन कनेक्शनों में आता है जो किसी आदान-प्रदान के बीच में टूट जाते हैं।

EMULTIHOP
Linux 72macOS 95

Multihop attempted

मल्टीहॉप (multihop) का प्रयास किया गया। यह RFS से आया पुराना कोड है।

EDOTDOT
Linux 73macOS —

RFS specific error

RFS-विशिष्ट त्रुटि। Linux में कोई उपयोग नहीं।

EBADMSG
Linux 74macOS 94

Bad message

संदेश ग़लत रूप में है या दूषित है। ext4, XFS और Btrfs इसे, EFSBADCRC उपनाम के साथ, तब लौटाते हैं जब मेटाडेटा का चेकसम विफल हो जाए।

समान मान:EFSBADCRC

EOVERFLOW
Linux 75macOS 84

Value too large for defined data type

macOS: Value too large to be stored in data type

मान लक्ष्य डेटा प्रकार में नहीं समाता; उदाहरण के लिए, बड़ी फ़ाइलों के समर्थन के बिना कंपाइल किया गया 32-बिट प्रोग्राम जो 2 GB से बड़ी फ़ाइल खोलता है।

ENOTUNIQ
Linux 76macOS —

Name not unique on network

नाम नेटवर्क पर अद्वितीय नहीं है। यह पुराना कोड है।

EBADFD
Linux 77macOS —

File descriptor in bad state

फ़ाइल डिस्क्रिप्टर गलत स्थिति में है। ALSA और कुछ ड्राइवर इसे तब उपयोग करते हैं जब डिवाइस तैयार न हो।

EREMCHG
Linux 78macOS —

Remote address changed

रिमोट पता बदल गया। यह पुराना कोड है।

ELIBACC
Linux 79macOS —

Can not access a needed shared library

किसी आवश्यक साझा लाइब्रेरी तक पहुँचा नहीं जा सकता। यह a.out बाइनरी से आया पुराना कोड है।

ELIBBAD
Linux 80macOS —

Accessing a corrupted shared library

साझा लाइब्रेरी क्षतिग्रस्त है। यह a.out बाइनरी से आया पुराना कोड है।

ELIBSCN
Linux 81macOS —

.lib section in a.out corrupted

a.out बाइनरी का .lib सेक्शन क्षतिग्रस्त है। यह पुराना कोड है।

ELIBMAX
Linux 82macOS —

Attempting to link in too many shared libraries

बहुत अधिक साझा लाइब्रेरी लिंक करने का प्रयास किया गया। यह a.out से आया पुराना कोड है।

ELIBEXEC
Linux 83macOS —

Cannot exec a shared library directly

साझा लाइब्रेरी को सीधे नहीं चलाया जा सकता। यह a.out से आया पुराना कोड है।

EILSEQ
Linux 84macOS 92

Invalid or incomplete multibyte or wide character

macOS: Illegal byte sequence

बाइट अनुक्रम वर्ण एन्कोडिंग के लिए मान्य नहीं है, जैसे ऐसा टेक्स्ट जो iconv या मल्टीबाइट फ़ंक्शनों से बदलते समय मान्य UTF-8 नहीं है।

ERESTART
Linux 85macOS —

Interrupted system call should be restarted

बाधित कॉल को फिर से शुरू करना चाहिए। यह कर्नेल के आंतरिक उपयोग के लिए है और इसे प्रोग्रामों तक नहीं पहुँचना चाहिए।

ESTRPIPE
Linux 86macOS —

Streams pipe error

STREAMS पाइप त्रुटि। ALSA इसे तब लौटाता है जब ऑडियो डिवाइस निलंबित (suspended) हो।

EUSERS
Linux 87macOS 68

Too many users

बहुत अधिक उपयोगकर्ता हैं। डिस्क कोटा सिस्टम इसे अपनी तालिका भर जाने पर लौटाता है, और यह दुर्लभ है।

ENOTSOCK
Linux 88macOS 38

Socket operation on non-socket

ऐसे डिस्क्रिप्टर पर सॉकेट ऑपरेशन किया गया जो सॉकेट नहीं है।

EDESTADDRREQ
Linux 89macOS 39

Destination address required

गंतव्य पता नहीं दिया गया: बिना कनेक्शन वाले सॉकेट से यह बताए बिना भेजा गया कि कहाँ भेजना है।

EMSGSIZE
Linux 90macOS 40

Message too long

संदेश सॉकेट के लिए बहुत बड़ा है, जैसे अधिकतम सीमा से बड़ा UDP डेटाग्राम, या फ़्रैगमेंटेशन की अनुमति न होने पर MTU से बड़ा।

EPROTOTYPE
Linux 91macOS 41

Protocol wrong type for socket

प्रोटोकॉल सॉकेट के प्रकार से मेल नहीं खाता।

ENOPROTOOPT
Linux 92macOS 42

Protocol not available

माँगा गया सॉकेट विकल्प या प्रोटोकॉल उपलब्ध नहीं है, उदाहरण के लिए setsockopt का कोई विकल्प जिसे कर्नेल नहीं पहचानता।

EPROTONOSUPPORT
Linux 93macOS 43

Protocol not supported

प्रोटोकॉल समर्थित नहीं है, उदाहरण के लिए क्योंकि उसका कर्नेल मॉड्यूल लोड नहीं है।

ESOCKTNOSUPPORT
Linux 94macOS 44

Socket type not supported

उस एड्रेस फ़ैमिली में यह सॉकेट प्रकार समर्थित नहीं है।

EOPNOTSUPP
Linux 95macOS 102

Operation not supported

macOS: Operation not supported on socket

ऑपरेशन सॉकेट या ऑब्जेक्ट द्वारा समर्थित नहीं है। Linux में इसका मान ENOTSUP के समान है, और कई फ़ाइल सिस्टम इसे उन सुविधाओं के लिए लौटाते हैं जिन्हें वे लागू नहीं करते, जैसे fallocate या विस्तारित एट्रिब्यूट।

ENOTSUP
Linux 95macOS 45

Operation not supported

ऑपरेशन समर्थित नहीं है। Linux में इसका मान EOPNOTSUPP (95) के समान है; macOS में ये अलग-अलग कोड हैं।

EPFNOSUPPORT
Linux 96macOS 46

Protocol family not supported

प्रोटोकॉल फ़ैमिली समर्थित नहीं है।

EAFNOSUPPORT
Linux 97macOS 47

Address family not supported by protocol

macOS: Address family not supported by protocol family

एड्रेस फ़ैमिली समर्थित नहीं है; यह आम तौर पर तब होता है जब किसी ऐसे सिस्टम या कंटेनर में IPv6 का उपयोग किया जाए जिसमें वह अक्षम हो।

EADDRINUSE
Linux 98macOS 48

Address already in use

पता और पोर्ट पहले से उपयोग में हैं: कोई दूसरा प्रोसेस उस पोर्ट पर सुन रहा है, या पिछला कनेक्शन अभी भी TIME_WAIT में है। ss -ltnp या lsof -i :पोर्ट से प्रोसेस खोजें, या SO_REUSEADDR का उपयोग करें।

EADDRNOTAVAIL
Linux 99macOS 49

Cannot assign requested address

macOS: Can't assign requested address

माँगा गया पता असाइन नहीं किया जा सकता: IP मशीन के किसी इंटरफ़ेस का नहीं है, या बाहर जाने वाले कनेक्शनों के लिए अल्पकालिक (ephemeral) पोर्ट ख़त्म हो गए हैं।

ENETDOWN
Linux 100macOS 50

Network is down

नेटवर्क इंटरफ़ेस डाउन है।

ENETUNREACH
Linux 101macOS 51

Network is unreachable

गंतव्य नेटवर्क तक नहीं पहुँचा जा सकता क्योंकि उस तक कोई रूट नहीं है। रूटिंग तालिका और गेटवे जाँचें; यह IPv6 कनेक्टिविटी के बिना IPv6 से कनेक्ट करने पर भी होता है।

ENETRESET
Linux 102macOS 52

Network dropped connection on reset

नेटवर्क ने कनेक्शन रीसेट कर दिया, उदाहरण के लिए जब keepalive विफल हो जाए।

ECONNABORTED
Linux 103macOS 53

Software caused connection abort

कनेक्शन स्थानीय पक्ष से रद्द (abort) हुआ, उदाहरण के लिए क्योंकि क्लाइंट ने उसे सर्वर द्वारा accept से स्वीकार किए जाने से पहले बंद कर दिया।

ECONNRESET
Linux 104macOS 54

Connection reset by peer

दूसरे सिरे ने RST के साथ कनेक्शन अचानक काट दिया («Connection reset by peer»): रिमोट प्रोसेस बंद हो गया, किसी फ़ायरवॉल या लोड बैलेंसर ने निष्क्रिय कनेक्शन काट दिया, या ऐसा डेटा भेजा गया जिसकी दूसरे पक्ष को अपेक्षा नहीं थी।

ENOBUFS
Linux 105macOS 55

No buffer space available

नेटवर्क ऑपरेशन के लिए कर्नेल में बफ़र स्थान उपलब्ध नहीं है; यह आम तौर पर भारी ट्रैफ़िक या सॉकेट की कतारें भरी होने पर आता है।

EISCONN
Linux 106macOS 56

Transport endpoint is already connected

macOS: Socket is already connected

सॉकेट पहले से कनेक्टेड है।

ENOTCONN
Linux 107macOS 57

Transport endpoint is not connected

macOS: Socket is not connected

सॉकेट कनेक्टेड नहीं है: कनेक्ट करने से पहले भेजने या प्राप्त करने की कोशिश की गई, या कनेक्शन पहले ही बंद हो चुका है। FUSE माउंट में यह «Transport endpoint is not connected» के रूप में दिखता है जब उसका प्रोसेस मर जाता है; इसे fusermount -u से अनमाउंट करके ठीक किया जाता है।

ESHUTDOWN
Linux 108macOS 58

Cannot send after transport endpoint shutdown

macOS: Can't send after socket shutdown

shutdown से सॉकेट की उस दिशा को बंद करने के बाद भेजा नहीं जा सकता।

ETOOMANYREFS
Linux 109macOS 59

Too many references: cannot splice

macOS: Too many references: can't splice

बहुत अधिक रेफ़रेंस हैं; Linux में, Unix सॉकेट के ज़रिए बहुत अधिक नेस्टेड डिस्क्रिप्टर भेजने पर।

ETIMEDOUT
Linux 110macOS 60

Connection timed out

macOS: Operation timed out

कनेक्शन का टाइमआउट हो गया क्योंकि गंतव्य ने जवाब नहीं दिया। इसका कारण आम तौर पर ऐसा फ़ायरवॉल होता है जो पैकेट चुपचाप गिरा देता है, बंद होस्ट, या ऐसा रूट जो गंतव्य तक नहीं पहुँचता।

ECONNREFUSED
Linux 111macOS 61

Connection refused

गंतव्य ने कनेक्शन अस्वीकार कर दिया: मशीन जवाब देती है, लेकिन उस पोर्ट पर कोई नहीं सुन रहा या कोई फ़ायरवॉल अस्वीकृति भेजता है। जाँचें कि सेवा चल रही है और सही इंटरफ़ेस पर सुन रही है, न कि केवल 127.0.0.1 पर।

EHOSTDOWN
Linux 112macOS 64

Host is down

गंतव्य होस्ट डाउन है।

EHOSTUNREACH
Linux 113macOS 65

No route to host

होस्ट तक कोई रूट नहीं है: वह स्थानीय नेटवर्क पर ARP का जवाब नहीं देता, या कोई राउटर या फ़ायरवॉल बताता है कि वह पहुँच से बाहर है।

EALREADY
Linux 114macOS 37

Operation already in progress

सॉकेट पर पहले से एक ऑपरेशन चल रहा है, जैसे कोई नॉन-ब्लॉकिंग connect जो अभी पूरा नहीं हुआ।

EINPROGRESS
Linux 115macOS 36

Operation now in progress

ऑपरेशन जारी है: एक नॉन-ब्लॉकिंग connect शुरू हुआ है और बाद में पूरा होगा। यह त्रुटि नहीं है; poll या select से प्रतीक्षा करनी होगी।

ESTALE
Linux 116macOS 70

Stale file handle

macOS: Stale NFS file handle

फ़ाइल हैंडल पुराना (stale) हो गया है: NFS में, फ़ाइल या डायरेक्टरी सर्वर पर हटा दी गई या बदल दी गई। पथ को फिर से खोलकर या दोबारा माउंट करके इसे ठीक किया जाता है।

EUCLEAN
Linux 117macOS —

Structure needs cleaning

संरचना को सफ़ाई की ज़रूरत है: फ़ाइल सिस्टम में करप्शन पाया गया है (ext4 और XFS में, EFSCORRUPTED उपनाम के साथ)। इसे अनमाउंट करें और fsck या xfs_repair चलाएँ।

समान मान:EFSCORRUPTED

ENOTNAM
Linux 118macOS —

Not a XENIX named type file

XENIX की नामित फ़ाइल नहीं है। यह बिना उपयोग का पुराना कोड है।

ENAVAIL
Linux 119macOS —

No XENIX semaphores available

XENIX सेमाफ़ोर उपलब्ध नहीं हैं। यह बिना उपयोग का पुराना कोड है।

EISNAM
Linux 120macOS —

Is a named type file

यह XENIX की नामित फ़ाइल है। यह बिना उपयोग का पुराना कोड है।

EREMOTEIO
Linux 121macOS —

Remote I/O error

रिमोट I/O त्रुटि, उदाहरण के लिए किसी I2C डिवाइस से या ऐसी रिमोट डिस्क से जिसने जवाब नहीं दिया।

EDQUOT
Linux 122macOS 69

Disk quota exceeded

macOS: Disc quota exceeded

उपयोगकर्ता या समूह का डिस्क कोटा पार हो गया।

ENOMEDIUM
Linux 123macOS —

No medium found

डिवाइस में कोई मीडिया नहीं है, जैसे बिना डिस्क की ड्राइव या ख़ाली कार्ड रीडर।

EMEDIUMTYPE
Linux 124macOS —

Wrong medium type

मीडिया का प्रकार सही नहीं है।

ECANCELED
Linux 125macOS 89

Operation canceled

ऑपरेशन रद्द कर दिया गया, उदाहरण के लिए कोई एसिंक्रोनस I/O या io_uring की कोई प्रतीक्षा।

ENOKEY
Linux 126macOS —

Required key not available

आवश्यक कुंजी कर्नेल के keyring में नहीं है। यह fscrypt या eCryptfs जैसे एन्क्रिप्टेड फ़ाइल सिस्टम के साथ तब आता है जब कुंजी लोड नहीं की गई।

EKEYEXPIRED
Linux 127macOS —

Key has expired

कुंजी की अवधि समाप्त हो गई। PAM और Kerberos भी इसे तब उपयोग करते हैं जब पासवर्ड या टिकट की अवधि ख़त्म हो जाए।

EKEYREVOKED
Linux 128macOS —

Key has been revoked

कुंजी रद्द कर दी गई।

EKEYREJECTED
Linux 129macOS —

Key was rejected by service

सेवा ने कुंजी अस्वीकार कर दी।

EOWNERDEAD
Linux 130macOS 105

Owner died

macOS: Previous owner died

किसी robust mutex का स्वामी उसे छोड़े बिना मर गया। नए स्वामी को संरक्षित स्थिति को सुसंगत बनाना चाहिए और pthread_mutex_consistent कॉल करना चाहिए।

ENOTRECOVERABLE
Linux 131macOS 104

State not recoverable

robust mutex द्वारा संरक्षित स्थिति पुनर्प्राप्त नहीं की जा सकती, क्योंकि पिछला स्वामी मर गया और किसी ने उसे सुसंगत के रूप में चिह्नित नहीं किया।

ERFKILL
Linux 132macOS —

Operation not possible due to RF-kill

ऑपरेशन संभव नहीं है क्योंकि Wi-Fi या Bluetooth रेडियो RF-kill से ब्लॉक है। rfkill list, भौतिक स्विच या एयरप्लेन मोड कुंजी जाँचें।

EHWPOISON
Linux 133macOS —

Memory page has hardware error

मेमोरी पेज में हार्डवेयर त्रुटि है और कर्नेल ने उसे विषाक्त (poisoned) के रूप में चिह्नित किया है।

EFTYPE
Linux 134macOS 79

Inappropriate file type or format

फ़ाइल का प्रकार ऑपरेशन के लिए उपयुक्त नहीं है। macOS और BSD में यह लंबे समय से मौजूद है; Linux में इसे हाल ही में जोड़ा गया।

EPROCLIM
Linux —macOS 67

Too many processes

बहुत अधिक प्रोसेस हैं। BSD इसे प्रोसेस सीमा के लिए परिभाषित करता है, हालाँकि व्यवहार में fork EAGAIN लौटाता है।

EBADRPC
Linux —macOS 72

RPC struct is bad

RPC संरचना गलत है (Sun RPC, जिसका उपयोग NFS करता है)।

ERPCMISMATCH
Linux —macOS 73

RPC version wrong

RPC संस्करण मेल नहीं खाता (Sun RPC, जिसका उपयोग NFS करता है)।

EPROGUNAVAIL
Linux —macOS 74

RPC program not available

macOS: RPC prog. not avail

RPC प्रोग्राम सर्वर पर उपलब्ध नहीं है।

EPROGMISMATCH
Linux —macOS 75

RPC program version wrong

macOS: Program version wrong

RPC प्रोग्राम का संस्करण मेल नहीं खाता।

EPROCUNAVAIL
Linux —macOS 76

RPC bad procedure for program

macOS: Bad procedure for program

RPC प्रोग्राम में यह प्रोसीजर मौजूद नहीं है।

EAUTH
Linux —macOS 80

Authentication error

प्रमाणीकरण त्रुटि, उदाहरण के लिए किसी NFS संसाधन को माउंट करते समय।

ENEEDAUTH
Linux —macOS 81

Need authenticator

ऑपरेशन के लिए एक ऑथेंटिकेटर आवश्यक है।

EPWROFF
Linux —macOS 82

Device power is off

डिवाइस बंद है।

EDEVERR
Linux —macOS 83

Device error, e.g. paper out

डिवाइस त्रुटि, उदाहरण के लिए ऐसा प्रिंटर जिसमें काग़ज़ ख़त्म हो गया हो।

EBADEXEC
Linux —macOS 85

Bad executable

एक्ज़ीक्यूटेबल अमान्य है।

EBADARCH
Linux —macOS 86

Bad CPU type in executable

एक्ज़ीक्यूटेबल किसी दूसरे प्रकार के CPU के लिए है, जैसे Rosetta 2 के बिना Apple Silicon वाले Mac पर केवल-x86_64 बाइनरी, या Intel वाले Mac पर ARM बाइनरी।

ESHLIBVERS
Linux —macOS 87

Shared library version mismatch

साझा लाइब्रेरी का संस्करण मेल नहीं खाता।

EBADMACHO
Linux —macOS 88

Malformed Macho file

Mach-O फ़ाइल ग़लत रूप में है या क्षतिग्रस्त है।

ENOATTR
Linux —macOS 93

Attribute not found

विस्तारित एट्रिब्यूट मौजूद नहीं है; यह Linux के ENODATA के बराबर है। यह xattr के साथ आता है, उदाहरण के लिए किसी ऐसी फ़ाइल से com.apple.quarantine हटाते समय जिसमें वह नहीं है।

ENOPOLICY
Linux —macOS 103

No such policy registered

MAC Framework में उस नाम से कोई नीति पंजीकृत नहीं है।

EQFULL
Linux —macOS 106

Interface output queue is full

नेटवर्क इंटरफ़ेस की आउटपुट कतार भरी हुई है।

ENOTCAPABLE
Linux —macOS 107

Capabilities insufficient

क्षमताएँ (capabilities) पर्याप्त नहीं हैं: sandbox द्वारा प्रतिबंधित कॉल इसे लौटाती हैं।

SIGसिग्नल33
SIGHUP
Linux 1macOS 1

Hangup

प्रोसेस को नियंत्रित करने वाला टर्मिनल बंद हो गया या SSH सेशन कट गया। nginx, sshd या rsyslog जैसे कई डेमन इसे कॉन्फ़िगरेशन दोबारा पढ़ने के अनुरोध के रूप में उपयोग करते हैं; nohup, tmux और screen बाहर निकलते समय इसे प्रोसेस बंद करने से रोकते हैं।

प्रोसेस समाप्त करता है
SIGINT
Linux 2macOS 2

Interrupt

कीबोर्ड से Ctrl+C द्वारा व्यवधान (interrupt)। प्रोग्राम व्यवस्थित ढंग से समाप्त होने के लिए इसे कैप्चर कर सकता है। निकास कोड 130।

प्रोसेस समाप्त करता है
SIGQUIT
Linux 3macOS 3

Quit

कीबोर्ड से Ctrl+\ द्वारा निकास। यह कोर डंप के साथ प्रोसेस समाप्त करता है; जबकि JVM इसका उपयोग थ्रेड की स्थिति प्रिंट करने के लिए करता है।

कोर डंप के साथ समाप्त करता है
SIGILL
Linux 4macOS 4

Illegal instruction

प्रोसेसर को एक अवैध निर्देश मिला: नए CPU के लिए कंपाइल किया गया बाइनरी (उदाहरण के लिए, AVX2 या AVX-512 के साथ, ऐसे प्रोसेसर पर जिसमें वे नहीं हैं), क्षतिग्रस्त कोड या डेटा पर जंप।

कोर डंप के साथ समाप्त करता है
SIGTRAP
Linux 5macOS 5

Trace/breakpoint trap

डीबग ट्रैप: डीबगर इसे ब्रेकपॉइंट के लिए उपयोग करते हैं। अगर यह बिना डीबगर के आए, तो आम तौर पर यह प्रोग्राम द्वारा ख़ुद पकड़ी गई कोई विफलता होती है, जैसे macOS में Swift की जाँचें।

कोर डंप के साथ समाप्त करता है
SIGABRT
Linux 6macOS 6

Aborted

प्रोसेस ने abort() कॉल किया: कोई विफल assertion, बिना पकड़ा गया C++ एक्सेप्शन, या C लाइब्रेरी द्वारा पकड़ी गई heap की गड़बड़ी («double free or corruption»)। निकास कोड 134।

कोर डंप के साथ समाप्त करता है

समान मान:SIGIOT

SIGBUS
Linux 7macOS 10

Bus error

बस त्रुटि: कुछ आर्किटेक्चर में असंरेखित (misaligned) मेमोरी तक पहुँच, या mmap से मैप की गई फ़ाइल के ऐसे हिस्से तक पहुँच जो फ़ाइल के छोटे (truncate) किए जाने से अब मौजूद नहीं है। यह /dev/shm भर जाने पर भी होता है।

कोर डंप के साथ समाप्त करता है
SIGFPE
Linux 8macOS 8

Floating point exception

अंकगणितीय अपवाद। नाम के बावजूद, सबसे आम कारण पूर्णांक को शून्य से भाग देना है।

कोर डंप के साथ समाप्त करता है
SIGKILL
Linux 9macOS 9

Killed

प्रोसेस को तुरंत समाप्त करता है: इसे कैप्चर, ब्लॉक या अनदेखा नहीं किया जा सकता। इसे kill -9 भेजता है, मेमोरी ख़त्म होने पर कर्नेल का OOM killer, और Docker या Kubernetes, जब कोई कंटेनर अपनी मेमोरी सीमा पार कर ले (OOMKilled) या SIGTERM के बाद समय पर समाप्त न हो। निकास कोड 137।

प्रोसेस समाप्त करता हैकैप्चर नहीं किया जा सकता
SIGUSR1
Linux 10macOS 30

User defined signal 1

मुक्त सिग्नल जिसे हर ऐप्लिकेशन अपने ढंग से उपयोग कर सकता है; उदाहरण के लिए, dd अपनी प्रगति बताता है और nginx लॉग फिर से खोलता है।

प्रोसेस समाप्त करता है
SIGSEGV
Linux 11macOS 11

Segmentation fault

सेगमेंटेशन उल्लंघन («Segmentation fault»): अमान्य मेमोरी तक पहुँच, जैसे null पॉइंटर को dereference करना, किसी array की सीमा से बाहर जाना या अनंत रिकर्शन से स्टैक ओवरफ़्लो करना। निकास कोड 139।

कोर डंप के साथ समाप्त करता है
SIGUSR2
Linux 12macOS 31

User defined signal 2

दूसरा मुक्त सिग्नल जिसे हर ऐप्लिकेशन अपने ढंग से उपयोग कर सकता है।

प्रोसेस समाप्त करता है
SIGPIPE
Linux 13macOS 13

Broken pipe

बिना रीडर वाले पाइप या सॉकेट में लिखना। cmd | head में यह सामान्य है, जहाँ पढ़ने वाला पहले समाप्त हो जाता है; सर्वर आम तौर पर इसे अनदेखा करके EPIPE त्रुटि संभालते हैं। निकास कोड 141।

प्रोसेस समाप्त करता है
SIGALRM
Linux 14macOS 14

Alarm clock

alarm या setitimer से सेट किया गया टाइमर समाप्त हो गया।

प्रोसेस समाप्त करता है
SIGTERM
Linux 15macOS 15

Terminated

व्यवस्थित समाप्ति का अनुरोध। यह kill, systemctl stop, docker stop और pod हटाते समय Kubernetes का डिफ़ॉल्ट सिग्नल है; प्रोसेस को अपने कनेक्शन बंद करके बाहर निकल जाना चाहिए। निकास कोड 143।

प्रोसेस समाप्त करता है
SIGSTKFLT
Linux 16macOS —

Stack fault

कोप्रोसेसर स्टैक दोष। वर्तमान Linux में उपयोग नहीं होता।

प्रोसेस समाप्त करता है
SIGCHLD
Linux 17macOS 20

Child exited

कोई चाइल्ड प्रोसेस समाप्त हुआ, रुका या फिर से चला। पैरेंट को wait से उसे संभालना चाहिए; अगर ऐसा नहीं करता, तो चाइल्ड ज़ॉम्बी बन जाता है।

अनदेखा किया जाता है

समान मान:SIGCLD

SIGCONT
Linux 18macOS 19

Continued

रुके हुए प्रोसेस को फिर से चालू करता है, जैसा shell में fg और bg करते हैं।

प्रोसेस फिर से चालू करता है
SIGSTOP
Linux 19macOS 17

Stopped (signal)

प्रोसेस को रोकता है; इसे कैप्चर या अनदेखा नहीं किया जा सकता। SIGCONT से फिर चालू होता है।

प्रोसेस रोकता हैकैप्चर नहीं किया जा सकता
SIGTSTP
Linux 20macOS 18

Stopped

टर्मिनल से Ctrl+Z द्वारा रोकना। SIGSTOP के विपरीत, प्रोग्राम इसे कैप्चर कर सकता है।

प्रोसेस रोकता है
SIGTTIN
Linux 21macOS 21

Stopped (tty input)

बैकग्राउंड के किसी प्रोसेस ने टर्मिनल से पढ़ने की कोशिश की।

प्रोसेस रोकता है
SIGTTOU
Linux 22macOS 22

Stopped (tty output)

बैकग्राउंड के किसी प्रोसेस ने stty tostop सक्रिय होने पर टर्मिनल में लिखने, या उसकी सेटिंग बदलने की कोशिश की।

प्रोसेस रोकता है
SIGURG
Linux 23macOS 16

Urgent I/O condition

किसी सॉकेट पर अत्यावश्यक (out-of-band) डेटा आया। Go इसे goroutines को बाधित करने के लिए आंतरिक रूप से उपयोग करता है।

अनदेखा किया जाता है
SIGXCPU
Linux 24macOS 24

CPU time limit exceeded

प्रोसेस की CPU समय सीमा पार हो गई (ulimit -t)।

कोर डंप के साथ समाप्त करता है
SIGXFSZ
Linux 25macOS 25

File size limit exceeded

प्रोसेस के लिए अनुमत अधिकतम फ़ाइल आकार पार हो गया (ulimit -f)।

कोर डंप के साथ समाप्त करता है
SIGVTALRM
Linux 26macOS 26

Virtual timer expired

वर्चुअल टाइमर समाप्त हो गया, जो केवल प्रोसेस का CPU समय गिनता है।

प्रोसेस समाप्त करता है
SIGPROF
Linux 27macOS 27

Profiling timer expired

प्रोफ़ाइलिंग टाइमर समाप्त हो गया, जिसका उपयोग प्रोफ़ाइलर करते हैं।

प्रोसेस समाप्त करता है
SIGWINCH
Linux 28macOS 28

Window changed

टर्मिनल विंडो का आकार बदल गया; फ़ुल-स्क्रीन प्रोग्राम इसका उपयोग ख़ुद को दोबारा ड्रॉ करने के लिए करते हैं।

अनदेखा किया जाता है
SIGIO
Linux 29macOS 23

input/output possible signal

O_ASYNC से कॉन्फ़िगर किए गए डिस्क्रिप्टर पर I/O उपलब्ध है। Linux में SIGPOLL यही सिग्नल है।

प्रोसेस समाप्त करता है

समान मान:SIGPOLL

SIGPWR
Linux 30macOS —

Power failure

बिजली की विफलता, जिसकी सूचना UPS सॉफ़्टवेयर init सिस्टम को देता है।

प्रोसेस समाप्त करता है
SIGSYS
Linux 31macOS 12

Bad system call

गलत सिस्टम कॉल। आज इसका सामान्य कारण कोई seccomp फ़िल्टर है जो उसे ब्लॉक करता है, जैसे कंटेनरों में।

कोर डंप के साथ समाप्त करता है
SIGEMT
Linux —macOS 7

EMT trap

एम्युलेशन ट्रैप (EMT)। यह macOS और BSD में मौजूद है, लेकिन x86 या ARM पर Linux में नहीं।

कोर डंप के साथ समाप्त करता है
SIGINFO
Linux —macOS 29

Information request

macOS और BSD के टर्मिनल में Ctrl+T द्वारा जानकारी का अनुरोध; कई कमांड अपनी प्रगति दिखाकर जवाब देती हैं।

अनदेखा किया जाता है
$?निकास कोड24
0EXIT_SUCCESS

कमांड सफलतापूर्वक समाप्त हुई। यही एकमात्र कोड है जिसका अर्थ सफलता है: कोई भी अन्य मान त्रुटि दर्शाता है।

C
1EXIT_FAILURE

सामान्य त्रुटि; हर प्रोग्राम तय करता है कि इसका क्या अर्थ है। विवरण आम तौर पर उसमें होता है जो कमांड ने stderr में लिखा। grep और diff इसे दूसरे अर्थ में उपयोग करते हैं: «कोई मेल नहीं मिला» या «फ़ाइलें अलग हैं»।

C
2Misuse of shell builtins

shell की किसी बिल्ट-इन कमांड का गलत उपयोग या स्क्रिप्ट में सिंटैक्स त्रुटि। कई प्रोग्राम इसे अमान्य विकल्पों के लिए भी उपयोग करते हैं, और grep वास्तविक त्रुटियों के लिए।

Bash
64EX_USAGE

कमांड का गलत उपयोग हुआ: आर्ग्युमेंट कम हैं, ज़्यादा हैं, या कोई विकल्प गलत है।

sysexits.h
65EX_DATAERR

इनपुट डेटा का फ़ॉर्मैट गलत है।

sysexits.h
66EX_NOINPUT

कोई इनपुट फ़ाइल मौजूद नहीं है या पढ़ी नहीं जा सकती।

sysexits.h
67EX_NOUSER

बताया गया उपयोगकर्ता मौजूद नहीं है; इसका उपयोग मुख्य रूप से मेल प्रोग्राम करते हैं।

sysexits.h
68EX_NOHOST

होस्ट का नाम मौजूद नहीं है।

sysexits.h
69EX_UNAVAILABLE

कोई आवश्यक सेवा उपलब्ध नहीं है, या कुछ ऐसा विफल हुआ जो किसी और श्रेणी में नहीं आता।

sysexits.h
70EX_SOFTWARE

प्रोग्राम की आंतरिक त्रुटि।

sysexits.h
71EX_OSERR

ऑपरेटिंग सिस्टम की त्रुटि, जैसे fork न कर पाना या पाइप न बना पाना।

sysexits.h
72EX_OSFILE

कोई सिस्टम फ़ाइल, जैसे /etc/passwd, गायब है या उसमें त्रुटि है।

sysexits.h
73EX_CANTCREAT

आउटपुट फ़ाइल नहीं बनाई जा सकती।

sysexits.h
74EX_IOERR

किसी फ़ाइल को पढ़ते या लिखते समय इनपुट/आउटपुट त्रुटि।

sysexits.h
75EX_TEMPFAIL

अस्थायी विफलता: बाद में दोबारा कोशिश करना बेहतर है। मेल सर्वर इसका उपयोग संदेश को कतार में रखने के लिए करते हैं।

sysexits.h
76EX_PROTOCOL

रिमोट सिस्टम ने ऐसा जवाब दिया जो प्रोटोकॉल का पालन नहीं करता।

sysexits.h
77EX_NOPERM

ऑपरेशन के लिए अपर्याप्त अनुमतियाँ।

sysexits.h
78EX_CONFIG

कॉन्फ़िगरेशन में त्रुटि है।

sysexits.h
124Timed out

timeout कमांड ने इसे समाप्त कर दिया क्योंकि यह निर्धारित समय से अधिक चला।

GNU timeout
125Container failed to run

कंटेनर चलाने से पहले ही docker run ख़ुद विफल हो गया, उदाहरण के लिए किसी गलत विकल्प या daemon की त्रुटि के कारण। GNU timeout भी इसे तब लौटाता है जब विफल होने वाला वह ख़ुद हो।

Docker
126Command invoked cannot execute

फ़ाइल मौजूद है, लेकिन चलाई नहीं जा सकती: उसमें execute अनुमति नहीं है, वह एक डायरेक्टरी है, या किसी दूसरे आर्किटेक्चर का बाइनरी है। Docker में, कंटेनर की कमांड एक्ज़ीक्यूटेबल नहीं है।

POSIX
127Command not found

कमांड नहीं मिली: वह इंस्टॉल नहीं है, PATH में नहीं है, या उसका नाम गलत लिखा है। स्क्रिप्ट में यह तब भी आता है जब #! पंक्ति का इंटरप्रेटर मौजूद न हो; Docker में, जब कंटेनर की कमांड इमेज में मौजूद न हो।

POSIX
128Fatal error

128 से बड़े कोड बताते हैं कि किसी सिग्नल ने प्रोसेस समाप्त किया, लेकिन 128 किसी सिग्नल से मेल नहीं खाता। Git इसे अपनी सभी घातक त्रुटियों («fatal: …») के लिए उपयोग करता है, जैसे ऐसा रिपॉज़िटरी जो मौजूद नहीं है या क्लोन करते समय प्रमाणीकरण विफलता।

Git
255Exit status out of range

निकास कोड सीमा से बाहर चला गया: exit -1 का परिणाम 255 आता है, क्योंकि केवल 8 बिट रखे जाते हैं। ssh भी इसे तब लौटाता है जब कनेक्शन या प्रमाणीकरण विफल हो, ताकि इसे रिमोट कमांड के कोड से अलग पहचाना जा सके।

POSIX

Linux के मान x86, x86-64 और ARM के हैं; Alpha, MIPS, SPARC और PA-RISC कुछ errno और सिग्नल को अलग संख्याएँ देते हैं। अंग्रेज़ी संदेश वे हैं जो glibc में strerror और strsignal दिखाते हैं, और जहाँ अलग हों वहाँ macOS वाले। 128 से बड़े निकास कोड को 128 जमा सिग्नल की संख्या माना जाता है, जो bash, Docker और Kubernetes की परिपाटी है।

यह कैसे काम करता है

जब Linux में कोई सिस्टम कॉल विफल होती है, तो वह -1 लौटाती है और errno वेरिएबल में एक संख्या रखती है जो कारण बताती है: 2 है ENOENT, फ़ाइल मौजूद नहीं; 13 है EACCES, अनुमति अस्वीकृत। strerror उस संख्या को स्क्रीन पर दिखने वाले टेक्स्ट में बदलता है, जैसे «No such file or directory»। Python इसे [Errno 13] के रूप में दिखाता है, Node.js code: 'ECONNREFUSED' के रूप में, और Go, Rust या Java उसी टेक्स्ट के साथ। 1 से 34 तक की संख्याएँ मूल Unix से आई हैं और सभी सिस्टम में समान हैं; उसके बाद की संख्याएँ हर सिस्टम ने अपने ढंग से तय कीं, इसलिए ECONNREFUSED Linux में 111 है और macOS में 61। नाम पोर्टेबल है; संख्या नहीं।

सिग्नल वे सूचनाएँ हैं जो कर्नेल या कोई दूसरा प्रोसेस किसी प्रोसेस को भेजता है: Ctrl+C दबाने पर SIGINT, समाप्त होने का अनुरोध करने के लिए SIGTERM, बिना पूछे समाप्त करने के लिए SIGKILL, और अमान्य मेमोरी तक पहुँचने पर SIGSEGV। हर सिग्नल की एक डिफ़ॉल्ट क्रिया होती है, और लगभग सभी को कुछ और करने के लिए कैप्चर किया जा सकता है। जब कोई सिग्नल किसी प्रोसेस को मार देता है, तो shell निकास कोड के रूप में 128 जमा सिग्नल की संख्या बताता है: 137 है SIGKILL (9), 139 है SIGSEGV (11) और 143 है SIGTERM (15)। Docker और Kubernetes भी यही परिपाटी अपनाते हैं।

निकास कोड वह संख्या है जो कोई प्रोग्राम समाप्त होने पर छोड़ता है: 0 का अर्थ सफलता है और कोई भी अन्य मान त्रुटि। केवल 8 बिट रखे जाते हैं, इसलिए यह 0 से 255 तक होता है। परिपाटियाँ कम हैं: 126 और 127 का उपयोग shell तब करता है जब वह कमांड चला नहीं पाता या ढूँढ नहीं पाता, 64 से 78 तक BSD का sysexits.h परिभाषित करता है, और बाक़ी हर प्रोग्राम तय करता है, जैसे grep, जो कुछ न मिलने पर 1 लौटाता है।

उदाहरण

Last State: Terminated · Reason: OOMKilled · Exit Code: 137137 = 128 + 9 · SIGKILLकंटेनर ने अपनी मेमोरी सीमा पार कर ली और कर्नेल ने उसे SIGKILL से मार दिया। resources.limits.memory में सीमा बढ़ानी होगी या पता लगाना होगा कि प्रोसेस इतनी मेमोरी क्यों ले रहा है; उसे रीस्टार्ट करने से समस्या हल नहीं होती।
Error: connect ECONNREFUSED 127.0.0.1:5432ECONNREFUSED · Linux 111 · macOS 61 · Connection refusedNode.js PostgreSQL से कनेक्ट नहीं हो सका क्योंकि पोर्ट 5432 पर कोई नहीं सुन रहा। अगर ऐप्लिकेशन किसी कंटेनर में चल रहा है, तो 127.0.0.1 ख़ुद कंटेनर है, होस्ट मशीन नहीं: डेटाबेस सेवा के नाम का उपयोग करना होगा।
OSError: [Errno 48] Address already in useEADDRINUSE · Linux 98 · macOS 4848 से पता चलता है कि प्रोग्राम macOS पर चल रहा है: Linux में यही त्रुटि 98 है। दोनों ही मामलों में कोई दूसरा प्रोसेस पहले से पोर्ट का उपयोग कर रहा है; lsof -i :पोर्ट बताता है कि कौन सा।

उपयोग के मामले

  • Python, Node.js, Go या C के किसी ऐप्लिकेशन की ऐसी त्रुटि समझना जो केवल errno की संख्या या नाम दिखाती है।
  • निकास कोड से पता लगाना कि कोई Docker कंटेनर क्यों बंद हुआ या कोई Kubernetes pod बार-बार रीस्टार्ट क्यों हो रहा है।
  • macOS की errno संख्या को सही नाम में बदलना, जो 35 से आगे Linux से मेल नहीं खाती।
  • विफल हुई किसी स्क्रिप्ट, cron या CI job के निकास कोड की व्याख्या करना।
  • तय करना कि kill से कौन सा सिग्नल भेजा जाए और जानना कि अगर प्रोसेस उसे कैप्चर न करे तो वह क्या करता है।
  • पोर्टेबल त्रुटि प्रबंधन लिखना जो संख्या के बजाय नाम से तुलना करे।

अक्सर पूछे जाने वाले प्रश्न

exit code 137 का क्या अर्थ है?

इसका अर्थ है कि प्रोसेस सिग्नल 9, SIGKILL (128 + 9) से समाप्त हुआ। सबसे आम कारण मेमोरी है: कंटेनर ने अपनी सीमा पार कर ली, जिसे Kubernetes OOMKilled के रूप में बताता है, या कर्नेल के OOM killer ने उस प्रोसेस को चुना, जो dmesg में «Out of memory: Killed process» के रूप में दर्ज होता है। यह docker kill से भी होता है, या जब प्रोसेस SIGTERM के बाद तय समय में समाप्त नहीं होता: docker stop में 10 सेकंड और Kubernetes में 30।

SIGTERM और SIGKILL में क्या अंतर है?

SIGTERM प्रोसेस से समाप्त होने का अनुरोध करता है, और प्रोसेस इसे कैप्चर करके कनेक्शन बंद कर सकता है, डेटा सहेज सकता है और बाहर निकल सकता है। SIGKILL से कर्नेल प्रोसेस को तुरंत समाप्त कर देता है, और प्रोसेस कुछ नहीं कर पाता। सही तरीका है SIGTERM भेजना, कुछ सेकंड प्रतीक्षा करना और SIGKILL का सहारा केवल तभी लेना जब प्रोसेस अब भी चल रहा हो; systemd, docker stop और Kubernetes यही करते हैं।

macOS में उसी errno की संख्या अलग क्यों होती है?

क्योंकि POSIX नाम परिभाषित करता है, संख्याएँ नहीं। 1 से 34 तक सभी सिस्टम ने मूल Unix की संख्याएँ विरासत में लीं; उसके बाद BSD ने, जिससे macOS आया है, और System V ने, जिसका अनुसरण Linux ने किया, उन्हें अलग-अलग क्रमांकित किया। इसलिए हमेशा नाम से तुलना करना बेहतर है, Python में errno.ECONNREFUSED से, Node.js में err.code से या C में कॉन्स्टेंट से, संख्या से नहीं।

EACCES और EPERM में क्या अंतर है?

EACCES («Permission denied») का अर्थ है कि फ़ाइल की या पथ की किसी डायरेक्टरी की अनुमतियाँ इसकी इजाज़त नहीं देतीं, या कोई ACL या SELinux इसे रोकता है: इसे chmod, chown या संबंधित नीति से हल किया जाता है। EPERM («Operation not permitted») का अर्थ है कि ऑपरेशन को स्वयं विशेषाधिकार चाहिए, अनुमतियाँ चाहे जो हों, जैसे किसी फ़ाइल का स्वामी बदलना या किसी दूसरे उपयोगकर्ता का प्रोसेस मारना: इसके लिए root, कोई capability, या अपरिवर्तनीय जैसे किसी एट्रिब्यूट को हटाना ज़रूरी है।

किसी कमांड या कंटेनर का निकास कोड कैसे देखें?

bash और zsh में echo $? पिछली कमांड का कोड दिखाता है; PowerShell में $LASTEXITCODE। Docker में docker ps -a इसे STATUS कॉलम में दिखाता है, जैसे «Exited (137)»। Kubernetes में kubectl describe pod इसे «Last State: Terminated» में दिखाता है, कारण के साथ, जैसे OOMKilled या Error।