logo

Linux felkoder

Linux-felkoder är de koder som visas om ett fel uppstår i systemet när du arbetar eller använder ett program. Felen kan kännas igen med hjälp av felkoder. Felkoderna hjälper oss att identifiera felkällan.

Om vi ​​arbetar på ett Linux-system är det uppenbart att vi kan stöta på fel. Vissa fel kan vara mindre och kanske inte leda till avbrott i programmet. Men det kan finnas några fel som kan göra att ett system eller program slutar svara. Dessa fel kan leda till förlust av data eller kan hindra programmet från att slutföras. Oftast visas fel i form av koder eller meddelanden.

I det här avsnittet kommer vi att se fel i C-programmering och en lista över möjliga fel i Linux systemet.

Linux-fel i C-programmering

En skicklig programmerare bör veta hur man hanterar felen. C programmeringsspråk ger inte direkt stöd för felhantering. Vi måste upptäcka källan till felet och ta itu med det. I C-språk visar returvärdena misslyckandet eller framgången. Om en funktion i C-programmet misslyckas måste vi hantera felet därefter; annars registreras felen sist i en loggfil.

När vi kör C-programmen kan vi märka några felnummer som 'Fel nr är: 17'. Här betyder fel nr 17 att filen redan finns. Varje felnummer har någon betydelse.

C-språket stöder en variabel 'fel inte .' Genom att använda denna felnummervariabel kan vi använda vissa felhanteringsfunktioner för att hantera det korrekt.

För att använda felnumret för den externa variabeln måste vi inkludera en rubrikfil 'errno.h.' Rubrikfilen används för att definiera variabeln 'errno'. Variabeln errno ställs in av systemanrop och biblioteksfunktioner i felförekomsten. Det finns två viktiga funktioner i C programmeringsspråk att hantera fel; fel och strerror . Perror-funktionen används för att skriva ut felbeskrivningen och sterror-funktionen returnerar en sträng med felkod.

Låt oss visa listan med felkoder genom att använda errno.

Linux fel

Errno-verktyget används för att leta upp felkoder, makronamn och motsvarande beskrivningar. Till exempel, om vi tillhandahåller ENOENT på ett Linux-system, kommer det att visa koden 2 och beskrivning ' Ingen sådan fil eller katalog .' Om vi ​​tillhandahåller koden 2 kommer den att visa ENOENT och dess beskrivning .

Om errno-verktyget inte är installerat på vår maskin, kommer det att visa felet enligt följande:

Linux felkoder

För att installera det, kör följande kommando:

 sudo apt install moreutils 

Genom att utföra kommandot ovan installeras moreutils-paketet på vår maskin som innehåller verktyget errno.

Linux felkoder

Visa listan över felkoder

För att visa listan med felkoder, kör kommandot enligt följande:

 errno -l 

Ovanstående kommando visar listan med felkoder från RedHat. Tänk på följande utdata:

Linux felkoder

Visa information om ett felnummer

För att visa informationen om ett visst felnummer, utför kommandot enligt följande:

 errno 2 

Ovanstående kommando visar beskrivningen av fel nummer 2. Tänk på följande utdata:

Linux felkoder

Visa information om ett felnamn

För att visa informationen om ett visst felnamn, kör kommandot errno, följt av felnamnet. Till exempel för att visa informationen om ett felnamn 'ESRCH ,' kör kommandot enligt följande:

 errno ESRCH 

Kommandot ovan visar informationen om det angivna felnamnet. Tänk på följande utdata:

Linux felkoder

Visa felet med strängar

För att visa en felbeskrivning genom att använda en sträng från beskrivningen, kör kommandot enligt följande:

 errno -s permission 

Ovanstående kommando visar de fel vars beskrivning innehåller strängbehörighet. Tänk på följande utdata:

Linux felkoder

Lista över Linux-systemfel

Följande är en ofullständig lista över möjliga fel i Linux-systemet:

Felkod fel nr Beskrivning
Övre 1 Den visas om operationen inte är tillåten.
ENOENT 2 Den visas om det inte finns någon sådan fil eller katalog.
ESRCH 3 Den visas om det inte finns någon sådan process.
EINTR 4 Den visas för avbrutet systemsamtal
EIO 5 Den visas för in-/utmatningsfel.
ENXIO 6 Den visas om det inte finns någon sådan enhet eller adress.
E2BIG 7 Den visas om argumentlistan är för lång.
ENOEXEC 8 Det visas om det finns ett exec-formatfel
EBADF 9 Den visas i händelse av dålig filbeskrivning.
ECHILD 10 Den visas om det inte finns någon underordnad process.
IGEN elva Den visas om resursen är tillfälligt otillgänglig.
ENOMEM 12 Den visas om systemet inte kan allokera minne.
EACCES 13 Den visas om tillstånd nekas.
EFAULT 14 Den visas om det finns en dålig adress.
ENOTBLK femton Den visas om Blockera enhet krävs.
UPPTAGEN 16 Den visas om enheten eller resursen är upptagen.
EEXISTERA 17 Den visas om filen redan finns.
EXDEV 18 Den visas om det finns en ogiltig länk över flera enheter.
ENODEV 19 Den visas om det inte finns någon sådan enhet.
ENOTDIR tjugo Den visas om det inte finns en katalog.
EISDIR tjugoett Den visas om det finns en katalog.
ENDA VAL 22 Det visas om det finns ett ogiltigt argument.
TA PÅ 23 Det visas om det finns för många öppna filer i systemet.
DÖD 24 Den visas om det finns för många öppna filer.
ENOTTY 25 Den visas om det finns en olämplig ioctl för enheten.
ETXTBSY 26 Den visas om textfilen är upptagen.
EFBIG 27 Den visas om filen är för stor.
ENOSPC 28 Den visas om det inte finns något utrymme kvar på enheten.
ESPIPE 29 Den visas vid olaglig sökning.
EROFS 30 Det visas vid skrivskyddat filsystem.
EMLINK 31 Den visas om det finns för många länkar.
EPIPE 32 Den visas i händelse av trasigt rör.
EDOM 33 Det visas om det numeriska argumentet är utanför domänen.
ERANGE 3. 4 Det visas om det numeriska resultatet ligger utanför intervallet.
EDEADLK 35 Den visas om låsning av resurser undviks.
ENAMETOOLONG 36 Det visas om filnamnet är för långt.
ENOLCK 37 Den visas om inga lås är tillgängliga.
ENOSYS 38 Den visas om funktionen inte är implementerad.
ENOTEMPTY 39 Den visas om katalogen inte är tom.
LOPP 40 Den visas om det finns för många nivåer av symboliska länkar.
ENOMSG 42 Det visas om det inte finns något meddelande av önskad typ.
EIDRM 43 Den visas om identifieraren tas bort.
ECHRNG 44 Den visas om kanalnumret är utanför räckvidd.
EL2NSYNC Fyra fem Den visas om nivå 2 inte är synkroniserad.
EL3HLT 46 Den visas om nivå 3 stoppas.
EL3RST 47 Den visas om nivå 3 återställs.
ELNRNG 48 Den visas om länknumret ligger utanför räckvidden.
EUNATCH 49 Det visas om protokolldrivrutinen inte är ansluten.
ENOCSI femtio Den visas om det inte finns någon tillgänglig CSI-struktur.
EL2HLT 51 Den visas om nivå 2 stoppas.
DET HAR VARIT 52 Den visas i händelse av ogiltigt utbyte.
EBADR 53 Den visas i händelse av ogiltig begärandeskriptor.
EXFULL 54 Den visas om utbytet är fullt.
ENOANO 55 Den visas i händelse av Ingen anod.
EBADRQC 56 Den visas för ogiltig förfrågningskod.
EBADSLT 57 Den visas för ogiltig plats.
EBFONT 59 Det visas om det finns dåligt teckensnittsfilformat.
ENSIDIG 60 Den visas om enheten inte är en stream.
ENODATA 61 Den visas om det inte finns några tillgängliga data.
ETIME 62 Den visas om timern har gått ut.
ENOSR 63 Det visas i händelse av out of streams-resurser.
ENONET 64 Den visas om maskinen inte finns i nätverket.
ENOPKG 65 Det visas om paketet inte är installerat.
EREMOTE 66 Det visas om objektet är avlägset.
ENOLINK 67 Den visas om länken har brutits.
EADV 68 Det visas för annonsfel.
ESRMNT 69 Det visas för Srmount-fel.
ECOMM 70 Den visas om det finns ett kommunikationsfel vid sändningen.
EPROTO 71 Det visas för protokollfel.
EMULTIHOPPA 72 Det visas för Multihop försök.
EDOTDOT 73 Det visas för RFS-specifikt fel.
EBADMSG 74 Det visas för dåligt meddelande.
ÖVERFLÖDE 75 Det visas om värdet är för stort för definierad datatyp.
ENOTUNIQ 76 Det visas om namnet inte är unikt på nätverket.
EBADFD 77 Den visas om filbeskrivningen är i dåligt tillstånd.
EREMCHG 78 Den visas om fjärradress ändras.
ELIBACC 79 Det visas om vi inte kan komma åt ett nödvändigt delat bibliotek.
ELIBBAD 80 Den visas i händelse av åtkomst till ett skadat delat bibliotek.
ELIBSCN 81 Det visas om det finns .lib-sektion i a.out är skadad.
ELIBMAX 82 Det visas om vi försöker länka i för många delade bibliotek.
ELIBEXEC 83 Det visas om vi inte kan utföra ett delat bibliotek direkt.
EILSEQ 84 Den visas för ett ogiltigt eller ofullständigt multibyte- eller brett tecken
ERESTART 85 Den visas för att informera om att ett avbrutet systemsamtal ska startas om.
ESTRPIP 86 Det visas om det finns ett strömrörsfel.
EUSERS 87 Det visas för för många användare.
ENOTSOCK 88 Den visas för uttagsdrift på icke-uttag.
EDESTADDRREQ 89 Den visas om destinationsadressen krävs.
EMSGSIZE 90 Det visas om meddelandet är för långt.
EPROTOTYP 91 Det visas om protokollet är fel typ för socket.
ENOPROTOOPT 92 Det visas om protokollet inte är tillgängligt.
EPROTONOSUPPORT 93 Det visas om protokollet inte stöds.
ESOCKTNOSUPPORT 94 Den visas om Socket-typen inte stöds.
EOPNOTSUPP 95 Den visas om operationen inte stöds.
EPFNOSUPPORT 96 Det visas om protokollfamiljen inte stöds.
EAFNOSUPPORT 97 Den visas om adressfamiljen inte stöds av protokoll.
EADDRINUS 98 Den visas om adressen redan används.
EADDRNOTAVAIL 99 Den visas om systemet inte kan tilldela begärd adress.
ENETDOWN 100 Den visas om nätverket är nere.
ENETUNREACH 101 Den visas om nätverket inte går att nå.
ENETRESET 102 Den visas om nätverket har avbrutit anslutningen vid återställning.
ECONNABORTERAD 103 Den visas om programvaran orsakade att anslutningen avbröts.
ECONNRESET 104 Den visas om anslutningen återställs av peer.
ENOBUFS 105 Den visas om det inte finns något tillgängligt buffertutrymme.
ESKON 106 Den visas om transportändpunkten redan är ansluten.
ENOTCONN 107 Den visas om transportändpunkten inte är ansluten.
ESHUTDOWN 108 Den visas om systemet inte kan skicka efter avstängning av transportändpunkt.
ETOOMANYREFS 109 Det visas om det finns för många referenser: kan inte skarva.
ETIMEOUT 110 Den visas om anslutningen har gått ut.
ECONNREFUSED 111 Den visas om anslutningen nekas.
EHOSTDOWN 112 Den visas om värden är nere.
EHOSTUNREACH 113 Den visas om det inte finns någon rutt till värd.
REDAN 114 Den visas om operationen redan pågår.
VARJE FRAMSTEG 115 Det visas om operationen nu pågår.
KLICK 116 Det visas för inaktuell filhantering.
EUCLEAN 117 Det visas om strukturen behöver rengöras.
ENHETLIG 118 Den visas inte för en XENIX-namnfil.
UNDERSÖK 119 Den visas om det inte finns några tillgängliga XENIX-semaforer.
EISNAM 120 Den visas om det finns en namngiven typfil.
EREMOTIO 121 Det visas för Remote I/O-fel.
EDQUOT 122 Den visas om diskkvoten överskrids.
ENOMEDIUM 123 Den visas om det inte finns något medium.
EMEDIUMTYP 124 Den visas om det finns fel mediumtyp.
INSTÄLLD 125 Den visas om operationen avbryts.
ENOKEY 126 Den visas om den nödvändiga nyckeln inte är tillgänglig.
EKEYEXPIRED 127 Den visas om nyckeln har gått ut.
EKEYREVOKED 128 Den visas om nyckeln har återkallats.
EKEY AVVISAD 129 Det visas om nyckeln avvisades av service.
EOWNERDEAD 130 Det visas om ägaren är död.
ENOTTERNATNINGSBAR 131 Den visas för inget återställningsbart tillstånd.
ERFKILL 132 Den visas om operationen inte är möjlig på grund av RF-död.
EHWPOISON 133 Den visas om minnessidan har ett maskinvarufel.