logo

Linuxové chybové kódy

Chybové kódy Linuxu jsou kódy, které se zobrazí, pokud dojde k chybě v systému při práci nebo používání programu. Chyby lze rozpoznat pomocí chybových kódů. Chybové kódy nám pomáhají rozpoznat zdroj chyby.

Pokud pracujeme na systému Linux, je zřejmé, že se můžeme setkat s chybami. Některé chyby mohou být drobné a nemusí vést k přerušení programu. Mohou však existovat některé chyby, které mohou způsobit, že systém nebo program přestane reagovat. Tyto chyby mohou vést ke ztrátě dat nebo mohou zabránit dokončení programu. Většinou se chyby zobrazují ve formě kódů nebo zpráv.

V této části uvidíme chyby v programování C a seznam možných chyb v Linux Systém.

Linuxové chyby v programování C

Zkušený programátor by měl vědět, jak se s chybami vypořádat. Programovací jazyk C neposkytuje přímou podporu pro zpracování chyb. Musíme zjistit zdroj chyby a vypořádat se s tím. V jazyce C návratové hodnoty zobrazují selhání nebo úspěch. Pokud funkce v programu C selže, musíme chybu odpovídajícím způsobem ošetřit; jinak zaznamená chyby jako poslední do souboru protokolu.

Při spouštění programů C si můžeme všimnout některých chybových čísel, například „Chyba č je: 17“. Zde chyba č. 17 znamená, že soubor již existuje. Každé číslo chyby má nějaký význam.

Jazyk C podporuje proměnnou 'chyba ne .' Pomocí této proměnné s číslem chyby můžeme použít některé funkce pro zpracování chyb, abychom ji správně zpracovali.

Abychom mohli použít číslo chyby externí proměnné, musíme zahrnout soubor záhlaví 'errno.h.' Soubor záhlaví se používá k definování proměnné 'errno'. Proměnná errno je nastavena systémovými voláními a knihovními funkcemi při výskytu chyby. Existují dvě důležité funkce v C programovací jazyk vypořádat se s chybami; chyba a strerror . Funkce perror se používá k vytištění popisu chyby a funkce sterror vrací řetězec s kódem chyby.

Zobrazme seznam chybových kódů pomocí errno.

Linux chyba

Nástroj errno se používá k vyhledání kódů errno, názvů maker a odpovídajících popisů. Pokud například poskytneme ENOENT na systému Linux, zobrazí se kód 2 a popis Žádný takový soubor nebo adresář .' Pokud zadáme kód 2, zobrazí se ENOENT a jeho popis .

Pokud nástroj errno není na našem počítači nainstalován, zobrazí se chyba následovně:

Linuxové chybové kódy

Chcete-li jej nainstalovat, spusťte níže uvedený příkaz:

 sudo apt install moreutils 

Spuštěním výše uvedeného příkazu se na našem počítači nainstaluje balíček moreutils, který obsahuje obslužný program errno.

Linuxové chybové kódy

Zobrazte seznam chybových kódů

Chcete-li zobrazit seznam chybových kódů, proveďte příkaz následovně:

 errno -l 

Výše uvedený příkaz zobrazí seznam chybových kódů RedHat. Zvažte následující výstup:

Linuxové chybové kódy

Zobrazte informaci o čísle chyby

Chcete-li zobrazit informace o konkrétním čísle chyby, proveďte příkaz následovně:

 errno 2 

Výše uvedený příkaz zobrazí popis chyby číslo 2. Zvažte následující výstup:

Linuxové chybové kódy

Zobrazí informace o názvu chyby

Chcete-li zobrazit informace o konkrétním názvu chyby, spusťte příkaz errno následovaný názvem chyby. Například pro zobrazení informací o názvu chyby 'ESRCH ,' proveďte příkaz následovně:

 errno ESRCH 

Výše uvedený příkaz zobrazí informace o zadaném názvu chyby. Zvažte následující výstup:

Linuxové chybové kódy

Zobrazte chybu pomocí řetězců

Chcete-li zobrazit popis chyby pomocí řetězce z popisu, proveďte příkaz následovně:

 errno -s permission 

Výše uvedený příkaz zobrazí chyby, jejichž popis obsahuje oprávnění řetězce. Zvažte následující výstup:

Linuxové chybové kódy

Seznam chyb systému Linux

Následuje částečný seznam možných chyb systému Linux:

Chybový kód chyba č Popis
Horní 1 Zobrazí se, pokud operace není povolena.
ENOENT 2 Zobrazí se, pokud takový soubor nebo adresář neexistuje.
ESRCH 3 Zobrazí se, pokud žádný takový proces neexistuje.
EINTR 4 Zobrazí se při přerušeném systémovém volání
EIO 5 Zobrazuje se při chybě vstupu/výstupu.
ENXIO 6 Zobrazí se, pokud takové zařízení nebo adresa neexistuje.
E2BIG 7 Zobrazí se, pokud je seznam argumentů příliš dlouhý.
ENOEXEC 8 Zobrazí se, pokud dojde k chybě formátu exec
EBADF 9 Zobrazí se v případě špatného deskriptoru souboru.
ECHILD 10 Zobrazí se, pokud neexistuje žádný podřízený proces.
ZNOVU jedenáct Zobrazí se, pokud je zdroj dočasně nedostupný.
ENOMEM 12 Zobrazí se, pokud systém nemůže přidělit paměť.
EACCES 13 Zobrazí se, pokud je oprávnění odepřeno.
EFAULT 14 Zobrazí se, pokud je adresa špatná.
ENOTBLK patnáct Zobrazí se, pokud je vyžadováno Blokování zařízení.
ZANEPRÁZDNĚNÝ 16 Zobrazí se, pokud je zařízení nebo zdroj zaneprázdněn.
EXISTUJE 17 Zobrazí se, pokud soubor již existuje.
EXDEV 18 Zobrazí se, pokud existuje neplatný odkaz mezi zařízeními.
ENODEV 19 Zobrazí se, pokud takové zařízení neexistuje.
ENOTDIR dvacet Zobrazí se, pokud adresář neexistuje.
EISDIR dvacet jedna Zobrazí se, pokud existuje adresář.
JEDEN VÝBĚR 22 Zobrazí se, pokud existuje neplatný argument.
OBLÉCI 23 Zobrazí se, pokud je v systému příliš mnoho otevřených souborů.
MRTVÍ 24 Zobrazí se, pokud je příliš mnoho otevřených souborů.
ENOTTY 25 Zobrazí se, pokud je pro zařízení nevhodný ioctl.
ETXTBSY 26 Zobrazí se, pokud je textový soubor zaneprázdněn.
EFBIG 27 Zobrazí se, pokud je soubor příliš velký.
ENOSPC 28 Zobrazí se, pokud na zařízení není volné místo.
ESPIPE 29 Zobrazí se v případě nelegálního hledání.
EROFS 30 Zobrazuje se v případě souborového systému pouze pro čtení.
EMLINK 31 Zobrazí se, pokud je odkazů příliš mnoho.
EPIPE 32 Zobrazí se v případě prasknutí potrubí.
EDOM 33 Zobrazí se, pokud je číselný argument mimo doménu.
ERANGE 3. 4 Zobrazí se, pokud je číselný výsledek mimo rozsah.
EDEADLK 35 Zobrazí se, pokud nedojde k uváznutí zdroje.
ENAMETOOOLING 36 Zobrazí se, pokud je název souboru příliš dlouhý.
ENOLCK 37 Zobrazí se, pokud nejsou k dispozici žádné zámky.
ENOSYS 38 Zobrazí se, pokud funkce není implementována.
ENOTEMPTY 39 Zobrazí se, pokud adresář není prázdný.
ELOOP 40 Zobrazí se, pokud existuje příliš mnoho úrovní symbolických odkazů.
ENOMSG 42 Zobrazí se, pokud neexistuje žádná zpráva požadovaného typu.
EIDRM 43 Zobrazí se, pokud je identifikátor odstraněn.
ECHRNG 44 Zobrazí se, pokud je číslo kanálu mimo rozsah.
EL2NSYNC Čtyři pět Zobrazí se, pokud úroveň 2 není synchronizována.
EL3HLT 46 Zobrazí se, pokud je úroveň 3 zastavena.
EL3RST 47 Zobrazí se, pokud je úroveň 3 resetována.
ELNRNG 48 Zobrazí se, pokud je číslo odkazu mimo rozsah.
EUNATCH 49 Zobrazí se, pokud není připojen ovladač protokolu.
ENOCSI padesáti Zobrazí se, pokud není k dispozici žádná struktura CSI.
EL2HLT 51 Zobrazí se, pokud je úroveň 2 zastavena.
BYLO TO 52 Zobrazí se v případě neplatné výměny.
EBADR 53 Zobrazí se v případě neplatného deskriptoru požadavku.
VYPLNIT 54 Zobrazí se, pokud je výměna plná.
ENOANO 55 Zobrazí se v případě, že není anoda.
EBADRQC 56 Zobrazuje se pro neplatný kód požadavku.
EBADSLT 57 Zobrazuje se pro neplatný slot.
EBFONT 59 Zobrazí se, pokud je soubor s písmem ve špatném formátu.
JEDNOSTRANNÉ 60 Zobrazí se, pokud zařízení není stream.
ENODATA 61 Zobrazí se, pokud nejsou k dispozici žádná data.
ETIME 62 Zobrazí se v případě, že časovač vypršel.
ENOSR 63 Zobrazuje se v případě nedostatku zdrojů toků.
ENONET 64 Zobrazí se, pokud stroj není v síti.
ENOPKG 65 Zobrazí se, pokud balíček není nainstalován.
EREMOTE 66 Zobrazí se, pokud je objekt vzdálený.
ENOLINK 67 Zobrazí se, pokud byl odkaz přerušen.
EADV 68 Zobrazuje se při chybě inzerce.
ESRMNT 69 Zobrazuje se při chybě Srmount.
ECOMM 70 Zobrazí se, pokud při odeslání dojde k chybě komunikace.
EPROTO 71 Zobrazuje se při chybě protokolu.
EMULTIHOP 72 Zobrazí se při pokusu o Multihop.
EDOTDOT 73 Zobrazuje se pro specifickou chybu RFS.
EBADMSG 74 Zobrazuje se pro Bad message.
PŘETEKOVÁNÍ 75 Zobrazí se, pokud je hodnota příliš velká pro definovaný datový typ.
ENOTUNIQ 76 Zobrazí se, pokud název není v síti jedinečný.
EBADFD 77 Zobrazí se, pokud je deskriptor souboru ve špatném stavu.
EREMCHG 78 Zobrazí se při změně vzdálené adresy.
ELIBACC 79 Zobrazí se, pokud nemáme přístup k potřebné sdílené knihovně.
ELIBBAD 80 Zobrazí se v případě přístupu k poškozené sdílené knihovně.
ELIBSCN 81 Zobrazí se, pokud je v a.out část .lib poškozená.
ELIBMAX 82 Zobrazí se, pokud se pokoušíme o propojení v příliš mnoha sdílených knihovnách.
ELIBEXEC 83 Zobrazí se, pokud nemůžeme přímo spustit sdílenou knihovnu.
EILSEQ 84 Zobrazí se pro neplatný nebo neúplný vícebajtový nebo široký znak
ERESTART 85 Zobrazí se jako upozornění, že přerušené systémové volání by mělo být restartováno.
ESTRPIPE 86 Zobrazí se, pokud dojde k chybě potrubí proudů.
EUSERS 87 Zobrazuje se příliš velkému počtu uživatelů.
ENOTSOCK 88 Zobrazuje se pro provoz soketu na nezásuvce.
EDESTADDRREQ 89 Zobrazí se, pokud je požadována cílová adresa.
EMSGSIZE 90 Zobrazí se, pokud je zpráva příliš dlouhá.
EPROTOTYP 91 Zobrazí se, pokud je pro soket nesprávný typ protokolu.
ENOPROTOOPT 92 Zobrazí se, pokud protokol není k dispozici.
EPROTONOSUPPORT 93 Zobrazí se, pokud protokol není podporován.
ESOCKTNOSUPPORT 94 Zobrazí se, pokud typ zásuvky není podporován.
EOPNOTSUPP 95 Zobrazí se, pokud operace není podporována.
EPFNOSUPPORT 96 Zobrazí se, pokud rodina protokolů není podporována.
EAFNOSUPPORT 97 Zobrazí se, pokud rodina adres není podporována protokolem.
EADDRINUS 98 Zobrazí se, pokud je adresa již používána.
EADDRNOTAVAIL 99 Zobrazí se, pokud systém nemůže přiřadit požadovanou adresu.
ENETDOWN 100 Zobrazí se, pokud je síť mimo provoz.
ENETUNREACH 101 Zobrazí se, pokud je síť nedostupná.
ENETRESET 102 Zobrazí se, pokud síť při resetování přerušila připojení.
ECONNABORTED 103 Zobrazí se, pokud software způsobil přerušení připojení.
ECONNRESET 104 Zobrazí se, pokud je spojení resetováno peerem.
ENOBUFS 105 Zobrazí se, pokud není k dispozici vyrovnávací paměť.
ESKON 106 Zobrazí se, pokud je koncový bod transportu již připojen.
ENOTCONN 107 Zobrazí se, pokud koncový bod transportu není připojen.
ESHUTDOWN 108 Zobrazí se, pokud systém nemůže odeslat po vypnutí koncového bodu přenosu.
ETOOMANY REFS 109 Zobrazí se, pokud je příliš mnoho referencí: nelze spojovat.
ETIMEDOUT 110 Zobrazí se, pokud vypršel časový limit připojení.
ZPRÁVNĚNO 111 Zobrazí se, pokud je připojení odmítnuto.
EHOSTDOWN 112 Zobrazí se, pokud je hostitel vypnutý.
EHOSTUNREACH 113 Zobrazí se, pokud neexistuje žádná cesta k hostiteli.
JIŽ 114 Zobrazí se, pokud operace již probíhá.
KAŽDÝ POKROK 115 Zobrazí se, pokud operace právě probíhá.
KLIKNĚTE 116 Zobrazuje se pro popisovač zastaralého souboru.
EUCLEAN 117 Zobrazí se, pokud je třeba strukturu vyčistit.
JEDNOTNÝ 118 Zobrazuje se u souboru jiného typu než XENIX.
ZVOLIT 119 Zobrazí se, pokud nejsou k dispozici žádné semafory XENIX.
EISNAM 120 Zobrazí se, pokud existuje soubor pojmenovaného typu.
EREMOTIO 121 Zobrazuje se pro chybu Remote I/O.
EDQUOT 122 Zobrazí se při překročení diskové kvóty.
ENOMEDIUM 123 Zobrazí se, pokud nebylo nalezeno žádné médium.
STŘEDNÍ TYP 124 Zobrazí se při nesprávném typu média.
ZRUŠENO 125 Zobrazí se, pokud je operace zrušena.
ENOKEY 126 Zobrazí se, pokud požadovaný klíč není k dispozici.
EXPIROVANÝ EKEY 127 Zobrazí se, pokud platnost klíče vypršela.
EKEYREVOKED 128 Zobrazí se, pokud byl klíč odvolán.
EKEYREJECTED 129 Zobrazí se, pokud byl klíč odmítnut službou.
EOWNERDEAD 130 Zobrazí se, pokud vlastník zemřel.
OBNOVITELNÉ 131 Zobrazuje se bez obnovitelného stavu.
ERFKILL 132 Zobrazí se, pokud operace není možná kvůli RF-kill.
EHWPOISON 133 Zobrazí se, pokud na stránce paměti došlo k chybě hardwaru.