logo

Linux kļūdu kodi

Linux kļūdu kodi ir tie kodi, kas tiek parādīti, ja sistēmā rodas kļūda, strādājot vai izmantojot programmu. Kļūdas var atpazīt ar kļūdu kodu palīdzību. Kļūdu kodi palīdz mums atpazīt kļūdas avotu.

Ja mēs strādājam ar Linux sistēmu, ir skaidrs, ka mēs varam saskarties ar kļūdām. Dažas kļūdas var būt nelielas un var neizraisīt programmas pārtraukšanu. Taču var būt dažas kļūdas, kuru dēļ sistēma vai programma var pārstāt reaģēt. Šīs kļūdas var izraisīt datu zudumu vai kavēt programmas pabeigšanu. Pārsvarā kļūdas tiek parādītas kodu vai ziņojumu veidā.

Šajā sadaļā mēs redzēsim C programmēšanas kļūdas un iespējamo kļūdu sarakstu Linux sistēma.

Linux kļūdas C programmēšanā

Prasmīgam programmētājam jāzina, kā rīkoties ar kļūdām. C programmēšanas valoda nenodrošina tiešu atbalstu kļūdu apstrādei. Mums ir jāatrod kļūdas avots un jātiek galā ar to. C valodā atgriešanas vērtības parāda neveiksmi vai panākumus. Ja kāda funkcija programmā C neizdodas, mums ir attiecīgi jārīkojas ar kļūdu; pretējā gadījumā tas žurnāla failā ieraksta kļūdas pēdējās.

Palaižot C programmas, mēs varam pamanīt dažus kļūdu numurus, piemēram, 'Kļūdas numurs ir: 17'. Šeit kļūda Nr. 17 nozīmē, ka fails jau pastāv. Katram kļūdas numuram ir sava nozīme.

C valoda atbalsta mainīgo 'kļūda .' Izmantojot šo kļūdas numura mainīgo, mēs varam izmantot dažas kļūdu apstrādes funkcijas, lai to pareizi apstrādātu.

Lai izmantotu ārējā mainīgā kļūdas numuru, mums ir jāiekļauj galvenes fails 'errno.h.' Galvenes fails tiek izmantots, lai definētu mainīgo 'errno'. Errno mainīgo iestata sistēmas izsaukumi un bibliotēkas funkcijas kļūdas gadījumā. Ir divas svarīgas funkcijas C programmēšanas valoda tikt galā ar kļūdām; kļūda un strerror . Perror funkcija tiek izmantota, lai izdrukātu kļūdas aprakstu, un funkcija sterror atgriež virkni ar kļūdas kodu.

Parādīsim kļūdu kodu sarakstu, izmantojot errno.

Linux kļūda

Errno utilīta tiek izmantota, lai meklētu kļūdu kodus, makro nosaukumus un atbilstošos aprakstus. Piemēram, ja mēs nodrošinām ENOENT Linux sistēmā, tas parādīs kodu 2 un aprakstu ' Nav tāda faila vai direktorijas .' Ja mēs norādīsim kodu 2, tas parādīs ENOENT un tā apraksts .

Ja mūsu mašīnā nav instalēta utilīta errno, tā parādīs kļūdu šādi:

Linux kļūdu kodi

Lai to instalētu, izpildiet tālāk norādīto komandu:

 sudo apt install moreutils 

Izpildot iepriekš minēto komandu, mūsu datorā tiek instalēta pakotne moreutils, kurā ir utilīta errno.

Linux kļūdu kodi

Parādiet kļūdu kodu sarakstu

Lai parādītu kļūdu kodu sarakstu, izpildiet komandu šādi:

 errno -l 

Iepriekš minētā komanda parādīs RedHat kļūdu kodu sarakstu. Apsveriet tālāk norādīto izvadi:

Linux kļūdu kodi

Parādiet informāciju par kļūdas numuru

Lai parādītu informāciju par konkrētu kļūdas numuru, izpildiet komandu šādi:

 errno 2 

Iepriekš minētā komanda parādīs kļūdas numura 2 aprakstu. Apsveriet tālāk norādīto izvadi:

Linux kļūdu kodi

Parādiet informāciju par kļūdas nosaukumu

Lai parādītu informāciju par konkrētu kļūdas nosaukumu, izpildiet komandu errno, kam seko kļūdas nosaukums. Piemēram, lai parādītu informāciju par kļūdas nosaukumu “ESRCH , izpildiet komandu šādi:

 errno ESRCH 

Iepriekš minētā komanda parādīs informāciju par norādīto kļūdas nosaukumu. Apsveriet tālāk norādīto izvadi:

Linux kļūdu kodi

Parādiet kļūdu, izmantojot virknes

Lai parādītu kļūdas aprakstu, izmantojot apraksta virkni, izpildiet komandu šādi:

 errno -s permission 

Iepriekš minētā komanda parādīs kļūdas, kuru aprakstā ir ietverta virknes atļauja. Apsveriet tālāk norādīto izvadi:

Linux kļūdu kodi

Linux sistēmas kļūdu saraksts

Šis ir daļējs iespējamo Linux sistēmas kļūdu saraksts:

Kļūdas kods kļūda Nr Apraksts
Augšējais 1 Tas tiek parādīts, ja darbība nav atļauta.
ENOENT 2 Tas tiek parādīts, ja šāda faila nav vai direktorija nepastāv.
ESRCH 3 Tas tiek parādīts, ja šāda procesa nav.
EINTR 4 Tas tiek parādīts, ja tiek pārtraukts sistēmas zvans
EIR 5 Tas tiek parādīts ievades/izvades kļūdas gadījumā.
ENXIO 6 Tas tiek parādīts, ja šādas ierīces nav vai adrese nepastāv.
E2BIG 7 Tas tiek parādīts, ja argumentu saraksts ir pārāk garš.
ENOEXEC 8 Tas tiek parādīts, ja ir exec formāta kļūda
EBADF 9 Tas tiek parādīts slikta faila deskriptora gadījumā.
BĒRNS 10 Tas tiek parādīts, ja nav pakārtota procesa.
VĒLREIZ vienpadsmit Tas tiek parādīts, ja resurss īslaicīgi nav pieejams.
ENOMEM 12 Tas tiek parādīts, ja sistēma nevar piešķirt atmiņu.
EACCES 13 Tas tiek parādīts, ja atļauja ir liegta.
EFAULT 14 Tas tiek parādīts, ja ir slikta adrese.
ENOTBLK piecpadsmit Tas tiek parādīts, ja ir nepieciešams Bloķēt ierīci.
AIZŅEMTS 16 Tas tiek parādīts, ja ierīce vai resurss ir aizņemts.
PASTĀV 17 Tas tiek parādīts, ja fails jau pastāv.
EXDEV 18 Tas tiek parādīts, ja ir nederīga vairāku ierīču saite.
ENODEV 19 Tas tiek parādīts, ja šādas ierīces nav.
ENOTDIR divdesmit Tas tiek parādīts, ja nav direktorija.
EISDIR divdesmitviens Tas tiek parādīts, ja ir direktorijs.
VIENA IZVĒLE 22 Tas tiek parādīts, ja ir nederīgs arguments.
UZVILKT 23 Tas tiek parādīts, ja sistēmā ir pārāk daudz atvērtu failu.
MIRUŠS 24 Tas tiek parādīts, ja ir pārāk daudz atvērtu failu.
ENOTTY 25 Tas tiek parādīts, ja ierīcei ir neatbilstošs ioctl.
ETXTBSY 26 Tas tiek parādīts, ja teksta fails ir aizņemts.
EFBIG 27 Tas tiek parādīts, ja fails ir pārāk liels.
ENOSPC 28 Tas tiek parādīts, ja ierīcē nav atlicis brīvas vietas.
ESPIPE 29 Tas tiek parādīts nelikumīgas meklēšanas gadījumā.
EROFS 30 Tas tiek rādīts tikai lasāmas failu sistēmas gadījumā.
EMLINK 31 Tas tiek parādīts, ja ir pārāk daudz saišu.
EPIPE 32 Tas tiek parādīts caurules plīsuma gadījumā.
EDOM 33 Tas tiek parādīts, ja skaitliskais arguments ir ārpus domēna.
ERANGE 3. 4 Tas tiek parādīts, ja skaitliskais rezultāts ir ārpus diapazona.
EDEADLK 35 Tas tiek parādīts, ja tiek novērsts resursu strupceļš.
ENAMETOOLONG 36 Tas tiek parādīts, ja faila nosaukums ir pārāk garš.
ENOLCK 37 Tas tiek parādīts, ja nav pieejamas slēdzenes.
ENOSYS 38 Tas tiek parādīts, ja funkcija nav ieviesta.
TUKŠĪBA 39 Tas tiek parādīts, ja direktorija nav tukša.
ELOOP 40 Tas tiek parādīts, ja ir pārāk daudz simbolisko saišu līmeņu.
ENOMSG 42 Tas tiek parādīts, ja nav vajadzīgā veida ziņojuma.
EIDRM 43 Tas tiek parādīts, ja identifikators ir noņemts.
ECHRNG 44 Tas tiek parādīts, ja kanāla numurs ir ārpus diapazona.
EL2NSYNC Četri Tas tiek parādīts, ja 2. līmenis nav sinhronizēts.
EL3HLT 46 Tas tiek parādīts, ja 3. līmenis ir apturēts.
EL3RST 47 Tas tiek parādīts, ja 3. līmenis ir atiestatīts.
ELNRNG 48 Tas tiek parādīts, ja saites numurs ir ārpus diapazona.
EUNATC 49 Tas tiek parādīts, ja nav pievienots protokola draiveris.
ENOCSI piecdesmit Tas tiek parādīts, ja nav pieejama CSI struktūra.
EL2HLT 51 Tas tiek parādīts, ja 2. līmenis ir apturēts.
TAS IR BIJIS 52 Tas tiek parādīts nederīgas apmaiņas gadījumā.
EBADR 53 Tas tiek parādīts nederīga pieprasījuma deskriptora gadījumā.
EXFULL 54 Tas tiek parādīts, ja apmaiņa ir pilna.
ENOANO 55 Tas tiek parādīts, ja nav anoda.
EBADRQC 56 Tas tiek parādīts nederīgam pieprasījuma kodam.
EBADSLT 57 Tas tiek parādīts nederīgam slotam.
EBFONT 59 Tas tiek parādīts, ja ir slikts fonta faila formāts.
VIENPUSĒJAS 60 Tas tiek parādīts, ja ierīce nav straume.
ENODATA 61 Tas tiek parādīts, ja nav pieejami dati.
LAIKS 62 Tas tiek parādīts, ja taimeris ir beidzies.
ENOSR 63 Tas tiek parādīts, ja resursi nav straumēti.
ENONET 64 Tas tiek parādīts, ja iekārta nav pieslēgta tīklam.
ENOPKG 65 Tas tiek parādīts, ja pakotne nav instalēta.
EREMOTE 66 Tas tiek parādīts, ja objekts atrodas attālināti.
ENOLINK 67 Tas tiek parādīts, ja saite ir pārtraukta.
EADV 68 Tas tiek parādīts reklāmas kļūdas dēļ.
ESRMNT 69 Tas tiek parādīts Srmount kļūdas gadījumā.
ECOMM 70 Tas tiek parādīts, ja sūtīšanas laikā ir radusies komunikācijas kļūda.
EPROTO 71 Tas tiek parādīts protokola kļūdas gadījumā.
EMULTIHOP 72 Tas tiek parādīts, ja mēģināts vairākkārt.
EDOTDOT 73 Tas tiek parādīts RFS specifiskai kļūdai.
EBADMSG 74 Tas tiek parādīts sliktā ziņojuma gadījumā.
EOVERPLOW 75 Tas tiek parādīts, ja vērtība ir pārāk liela noteiktajam datu tipam.
ENOTUNIQ 76 Tas tiek parādīts, ja nosaukums tīklā nav unikāls.
EBADFD 77 Tas tiek parādīts, ja faila deskriptors ir sliktā stāvoklī.
EREMCHG 78 Tas tiek parādīts, ja tiek mainīta attālā adrese.
ELIBACC 79 Tas tiek parādīts, ja nevaram piekļūt vajadzīgajai koplietojamai bibliotēkai.
ELIBĀDS 80 Tas tiek parādīts, ja piekļūstat bojātai koplietotai bibliotēkai.
ELIBSCN 81 Tas tiek parādīts, ja a.out ir bojāta sadaļa .lib.
ELIBMAX 82 Tas tiek parādīts, ja mēs mēģinām izveidot saiti pārāk daudzās koplietojamās bibliotēkās.
ELIBEXEC 83 Tas tiek parādīts, ja nevaram tieši izpildīt koplietotu bibliotēku.
EILSEQ 84 Tas tiek parādīts, ja ir nederīga vai nepilnīga vairāku baitu vai plata rakstzīme
ERESTART 85 Tas tiek parādīts, lai informētu, ka pārtrauktais sistēmas zvans ir jārestartē.
ESTRPIPE 86 Tas tiek parādīts, ja ir plūsmas caurules kļūda.
LIETOTĀJI 87 Tas tiek rādīts pārāk daudziem lietotājiem.
ENOTSOCK 88 Tas tiek parādīts ligzdas darbībai bez ligzdas.
EDESTADDRREQ 89 Tas tiek parādīts, ja ir nepieciešama galamērķa adrese.
EMSGSIZE 90 Tas tiek parādīts, ja ziņojums ir pārāk garš.
EPROTOTIPS 91 Tas tiek parādīts, ja ligzdai ir nepareizs protokols.
ENOPROTOOPT 92 Tas tiek parādīts, ja protokols nav pieejams.
EPROTONOATBALSTS 93 Tas tiek parādīts, ja protokols netiek atbalstīts.
ESOCKTNOSUPPORT 94 Tas tiek parādīts, ja Socket tips netiek atbalstīts.
EOPNOTSUPP 95 Tas tiek parādīts, ja darbība netiek atbalstīta.
EPFNOSUPPORT 96 Tas tiek parādīts, ja protokolu saime netiek atbalstīta.
EAFNOSUPPORT 97 Tas tiek parādīts, ja adrešu saimi neatbalsta protokols.
EADDRINUS 98 Tas tiek parādīts, ja adrese jau tiek izmantota.
EADDRNEPIEEJAMS 99 Tas tiek parādīts, ja sistēma nevar piešķirt pieprasīto adresi.
ENETDOWN 100 Tas tiek parādīts, ja tīkls nedarbojas.
ENETUNREACH 101 Tas tiek parādīts, ja tīkls nav sasniedzams.
ENETRESET 102 Tas tiek parādīts, ja tīkla savienojums ir pārtraukts atiestatīšanas laikā.
ECONNABORTED 103 Tas tiek parādīts, ja programmatūra ir izraisījusi savienojuma pārtraukšanu.
ECONNRESET 104 Tas tiek parādīts, ja savienojumu atiestata vienādranga.
ENOBUFS 105 Tas tiek parādīts, ja nav pieejama bufera vieta.
ESKON 106 Tas tiek parādīts, ja transporta galapunkts jau ir savienots.
ENOTCONN 107 Tas tiek parādīts, ja transporta galapunkts nav savienots.
IZSLĒGŠANA 108 Tas tiek parādīts, ja sistēma nevar nosūtīt pēc transportēšanas galapunkta izslēgšanas.
ETOOMANYREFS 109 Tas tiek parādīts, ja ir pārāk daudz atsauču: nevar salaist.
ETIMEDOUT 110 Tas tiek parādīts, ja ir iestājies savienojuma taimauts.
ATSAISTĪTS 111 Tas tiek parādīts, ja savienojums tiek atteikts.
EHOSTDOWN 112 Tas tiek parādīts, ja resursdators nedarbojas.
EHOSTUNREACH 113 Tas tiek parādīts, ja nav maršruta uz saimniekdatoru.
JAU 114 Tas tiek parādīts, ja darbība jau notiek.
KATRS PROGRESS 115 Tas tiek parādīts, ja darbība pašlaik notiek.
KLIKŠĶIS 116 Tas tiek parādīts novecojušā faila rokturim.
EUCLEAN 117 Tas tiek parādīts, ja struktūrai nepieciešama tīrīšana.
VIENOTA 118 Tas tiek rādīts nevis XENIX tipa failam.
PIEVIENOT 119 Tas tiek parādīts, ja nav pieejami XENIX semafori.
EISNAM 120 Tas tiek parādīts, ja ir nosaukta tipa fails.
EREMOTIO 121 Tas tiek parādīts attālās ievades/izvades kļūdas gadījumā.
EDQUOT 122 Tas tiek parādīts, ja diska kvota ir pārsniegta.
ENOMEDIUM 123 Tas tiek parādīts, ja nav atrasta datu nesēja.
EMEDIUMTYPE 124 Tas tiek parādīts, ja ir nepareizs datu nesēja veids.
ATCELTS 125 Tas tiek parādīts, ja darbība ir atcelta.
ENOKEY 126 Tas tiek parādīts, ja vajadzīgā atslēga nav pieejama.
EKEY BEIDZIES 127 Tas tiek parādīts, ja atslēgas derīguma termiņš ir beidzies.
EKEYREVOKED 128 Tas tiek parādīts, ja atslēga ir atsaukta.
EKEY ATRAIDĀTS 129 Tas tiek parādīts, ja serviss ir noraidījis atslēgu.
EOWNERDEAD 130 Tas tiek parādīts, ja īpašnieks ir miris.
NAV ATGRIEŠAMS 131 Tas tiek parādīts, ja stāvoklis nav atjaunojams.
ERFKILL 132 Tas tiek parādīts, ja darbība nav iespējama RF-kill dēļ.
EHWPOISON 133 Tas tiek parādīts, ja atmiņas lapā ir aparatūras kļūda.