logo

Códigos de error de Linux

Los códigos de error de Linux son aquellos códigos que se muestran si ocurre un error en el sistema mientras se trabaja o usa un programa. Los errores se pueden reconocer con la ayuda de códigos de error. Los códigos de error nos ayudan a reconocer la fuente del error.

Si estamos trabajando en un sistema Linux, es obvio que podemos encontrarnos con errores. Algunos errores pueden ser menores y no provocar la interrupción del programa. Pero puede haber algunos errores que pueden hacer que un sistema o programa deje de responder. Estos errores pueden provocar la pérdida de datos o impedir que el programa se complete. La mayoría de los errores se muestran en forma de códigos o mensajes.

En esta sección veremos errores en la programación en C y una lista de posibles errores en el linux sistema.

Errores de Linux en la programación en C

Un programador experto debe saber cómo solucionar los errores. El lenguaje de programación C no proporciona soporte directo para el manejo de errores. Tenemos que detectar el origen del error y solucionarlo. En lenguaje C, los valores de retorno muestran el fracaso o el éxito. Si falla una función en el programa C, debemos manejar el error en consecuencia; de lo contrario, registra los errores al final en un archivo de registro.

Al ejecutar los programas en C, es posible que observemos algunos números de error como 'El error no es: 17'. Aquí, el error nº 17 significa que el archivo ya existe. Cada número de error tiene algún significado.

El lenguaje C soporta una variable. 'errorno .' Al usar esta variable de número de error, podemos usar algunas funciones de manejo de errores para manejarlo correctamente.

Para utilizar el número de error de la variable externa, debemos incluir un archivo de encabezado 'errno.h.' El archivo de encabezado se utiliza para definir la variable 'errno'. La variable errno la establecen las llamadas al sistema y las funciones de la biblioteca en caso de error. Hay dos funciones importantes en el lenguaje de programación c hacer frente a los errores; perror y error . La función perror se utiliza para imprimir la descripción del error y la función sterror devuelve una cadena con un código de error.

Mostremos la lista de códigos de error usando errno.

Error de Linux

La utilidad errno se utiliza para buscar códigos de error, nombres de macros y las descripciones correspondientes. Por ejemplo, si proporcionamos ENOENT en un sistema Linux, mostrará el código 2 y la descripción. ' El fichero o directorio no existe .' Si proporcionamos el código 2, se mostrará el ENOENT y su descripción. .

Si la utilidad errno no está instalada en nuestra máquina, mostrará el siguiente error:

Códigos de error de Linux

Para instalarlo, ejecute el siguiente comando:

 sudo apt install moreutils 

Al ejecutar el comando anterior, el paquete moreutils se instala en nuestra máquina que contiene la utilidad errno.

Códigos de error de Linux

Mostrar la lista de códigos de error

Para mostrar la lista de códigos de error, ejecute el comando de la siguiente manera:

 errno -l 

El comando anterior mostrará la lista de códigos de error de RedHat. Considere el siguiente resultado:

Códigos de error de Linux

Mostrar la información de un número de error.

Para mostrar la información de un número de error particular, ejecute el comando de la siguiente manera:

 errno 2 

El comando anterior mostrará la descripción del error número 2. Considere el siguiente resultado:

Códigos de error de Linux

Mostrar la información de un nombre de error.

Para mostrar la información de un nombre de error en particular, ejecute el comando errno, seguido del nombre del error. Por ejemplo, para mostrar la información de un nombre de error. 'ESRCH ,' ejecute el comando de la siguiente manera:

 errno ESRCH 

El comando anterior mostrará la información sobre el nombre de error especificado. Considere el siguiente resultado:

Códigos de error de Linux

Mostrar el error usando cadenas

Para mostrar una descripción de error utilizando una cadena de la descripción, ejecute el comando de la siguiente manera:

 errno -s permission 

El comando anterior mostrará los errores cuya descripción contiene permiso de cadena. Considere el siguiente resultado:

Códigos de error de Linux

Lista de errores del sistema Linux

A continuación se muestra una lista parcial de posibles errores del sistema Linux:

Código de error Error no Descripción
Superior 1 Se muestra si la operación no está permitida.
ENOENTE 2 Se muestra si no existe dicho archivo o directorio.
ESCRCH 3 Se muestra si no existe tal proceso.
EINTR 4 Se muestra para una llamada al sistema interrumpida.
EEI 5 Se muestra en caso de error de entrada/salida.
ENXIO 6 Se muestra si no existe tal dispositivo o dirección.
E2BIG 7 Se muestra si la lista de argumentos es demasiado larga.
ENOEXEC 8 Se muestra si hay un error de formato ejecutivo.
EBADF 9 Se muestra en caso de que el descriptor de archivo sea incorrecto.
ENIÑO 10 Se muestra si no existe ningún proceso secundario.
OTRA VEZ 11 Se muestra si el recurso no está disponible temporalmente.
ENOMEMA 12 Se muestra si el sistema no puede asignar memoria.
ACCESO 13 Se muestra si se deniega el permiso.
FALLA 14 Se muestra si hay una dirección incorrecta.
ENOTBLK 15 Se muestra si se requiere bloquear dispositivo.
OCUPADO 16 Se muestra si el dispositivo o recurso está ocupado.
EXISTE 17 Se muestra si el archivo ya existe.
EXDEV 18 Se muestra si hay un enlace entre dispositivos no válido.
ENODEV 19 Se muestra si no existe tal dispositivo.
ENOTDIR 20 Se muestra si no hay un directorio.
EISDIR 21 Se muestra si hay un directorio.
ELECCIÓN ÚNICA 22 Se muestra si hay un argumento no válido.
PONERSE 23 Se muestra si hay demasiados archivos abiertos en el sistema.
MUERTO 24 Se muestra si hay demasiados archivos abiertos.
ENOTTY 25 Se muestra si hay un ioctl inadecuado para el dispositivo.
ETXTBSY 26 Se muestra si el archivo de texto está ocupado.
EFBIG 27 Se muestra si el archivo es demasiado grande.
ENOSPC 28 Se muestra si no queda espacio en el dispositivo.
ESPIPE 29 Se muestra en caso de búsqueda ilegal.
EROFS 30 Se muestra en caso de un sistema de archivos de solo lectura.
EMLINK 31 Se muestra si hay demasiados enlaces.
EPIPE 32 Se muestra en caso de rotura de tubería.
EDOM 33 Se muestra si el argumento numérico está fuera de dominio.
RANGO 34 Se muestra si el resultado numérico está fuera de rango.
EDEADLK 35 Se muestra si se evita el punto muerto de recursos.
ENAMETOOLONG 36 Se muestra si el nombre del archivo es demasiado largo.
ENOLCK 37 Se muestra si no hay cerraduras disponibles.
ENÓSYS 38 Se muestra si la función no está implementada.
ENOTEMPTY 39 Se muestra si el directorio no está vacío.
ELOOP 40 Se muestra si hay demasiados niveles de enlaces simbólicos.
ENOMSG 42 Se muestra si no hay ningún mensaje del tipo deseado.
EIDRM 43 Se muestra si se elimina el identificador.
ECHRNG 44 Se muestra si el número de canal está fuera de rango.
EL2NSYNC 45 Se muestra si el nivel 2 no está sincronizado.
EL3HLT 46 Se muestra si se detiene el nivel 3.
EL3RST 47 Se muestra si se restablece el nivel 3.
ELNRNG 48 Se muestra si el número de enlace está fuera de rango.
EUNATCH 49 Se muestra si el controlador de protocolo no está conectado.
ENOCSI 50 Se muestra si no hay ninguna estructura CSI disponible.
EL2HLT 51 Se muestra si se detiene el nivel 2.
HA SIDO 52 Se muestra en caso de cambio no válido.
EBADR 53 Se muestra en caso de que el descriptor de solicitud no sea válido.
EXCOMPLETO 54 Se muestra si el intercambio está completo.
ENOANO 55 Se muestra en caso de que no haya ánodo.
EBADRQC 56 Se muestra para un código de solicitud no válido.
EBADSLT 57 Se muestra para una ranura no válida.
EBFONT 59 Se muestra si hay un formato de archivo de fuente incorrecto.
UNILATERAL 60 Se muestra si el dispositivo no es una transmisión.
ENODATA 61 Se muestra si no hay datos disponibles.
ETIEMPO 62 Se muestra en caso de que el temporizador expire.
ENOSR 63 Se muestra en caso de que los recursos no estén disponibles.
ENONET 64 Se muestra si la máquina no está en la red.
ENOPKG 65 Se muestra si el paquete no está instalado.
EREMOTE 66 Se muestra si el objeto es remoto.
ENOLACE 67 Se muestra si el enlace se ha cortado.
EADV 68 Se muestra por error de publicidad.
ESRMNT 69 Se muestra en caso de error Srmount.
ECOMM 70 Se muestra si hay un error de comunicación en el envío.
EPROTO 71 Se muestra por error de protocolo.
EMULTIHOP 72 Se muestra cuando se intenta realizar Multihop.
EDOTDOT 73 Se muestra para un error específico de RFS.
EBADMSG 74 Se muestra para mensaje incorrecto.
DESBORDAMIENTO 75 Se muestra si el valor es demasiado grande para el tipo de datos definido.
ENOTUNIQ 76 Se muestra si el nombre no es único en la red.
EBADFD 77 Se muestra si el descriptor del archivo está en mal estado.
EREMCHG 78 Se muestra si se cambia la dirección remota.
ELIBACC 79 Se muestra si no podemos acceder a una biblioteca compartida necesaria.
elibbad 80 Se muestra en caso de acceder a una biblioteca compartida dañada.
ELIBSCN 81 Se muestra si hay una sección .lib en a.out que está dañada.
ELIBMAX 82 Se muestra si intentamos vincular demasiadas bibliotecas compartidas.
ELIBEXEC 83 Se muestra si no podemos ejecutar una biblioteca compartida directamente.
EILSEQ 84 Se muestra para un carácter ancho o multibyte no válido o incompleto.
EREINICIAR 85 Se muestra para informar que se debe reiniciar la llamada al sistema interrumpida.
ESTRPIPE 86 Se muestra si hay un error en la tubería de flujo.
USUARIOS 87 Se muestra para demasiados usuarios.
ENOTSOCK 88 Se muestra para el funcionamiento con enchufe sin enchufe.
EDESTADDRREQ 89 Se muestra si se requiere la dirección de destino.
TAMAÑOEMSG 90 Se muestra si el mensaje es demasiado largo.
EPROTOTIPO 91 Se muestra si el protocolo es de tipo incorrecto para el socket.
ENOPROTOOPT 92 Se muestra si el protocolo no está disponible.
SOPORTE EPROTONOS 93 Se muestra si el protocolo no es compatible.
ESOCKTNOSAPOYO 94 Se muestra si el tipo de socket no es compatible.
EOPNOTSUPP 95 Se muestra si la operación no es compatible.
EPFNOSAPOYO 96 Se muestra si la familia de protocolos no es compatible.
EAFNOSAPOYO 97 Se muestra si la familia de direcciones no es compatible con el protocolo.
EADDRINO 98 Se muestra si la dirección ya está en uso.
EADDRNOTAVAIL 99 Se muestra si el sistema no puede asignar la dirección solicitada.
ENETDOWN 100 Se muestra si la red está inactiva.
ENETUNREACH 101 Se muestra si la red es inalcanzable.
ENTRESET 102 Se muestra si la red ha perdido la conexión al restablecerse.
ECONNABORTADO 103 Se muestra si el software provocó la interrupción de la conexión.
RESET ECONOMICO 104 Se muestra si el par restablece la conexión.
ENOBUFES 105 Se muestra si no hay espacio en el buffer disponible.
ESKÓN 106 Se muestra si el punto final de transporte ya está conectado.
ENOTCONN 107 Se muestra si el punto final de transporte no está conectado.
APAGADO 108 Se muestra si el sistema no puede enviar después del cierre del punto final de transporte.
ETOOMANYREFS 109 Se muestra si hay demasiadas referencias: no se puede empalmar.
ETIMEDOUT 110 Se muestra si se agota el tiempo de conexión.
ECONNRECHAZADO 111 Se muestra si se rechaza la conexión.
EHOSTDOWN 112 Se muestra si el Host está inactivo.
EHOSTUNREACH 113 Se muestra si no hay ninguna ruta al host.
YA YA 114 Se muestra si la operación ya está en curso.
CADA PROGRESO 115 Se muestra si la operación está ahora en curso.
HACER CLIC 116 Se muestra para el identificador de archivo obsoleto.
EUCLEAN 117 Se muestra si la estructura necesita limpieza.
UNIFORME 118 Se muestra para archivos que no son de tipo XENIX.
DISPONIBLE 119 Se muestra si no hay semáforos XENIX disponibles.
EISNAM 120 Se muestra si hay un archivo de tipo con nombre.
Eremotio 121 Se muestra en caso de error de E/S remotas.
EDQUOT 122 Se muestra si se excede la cuota de disco.
ENOMEDIO 123 Se muestra si no se encuentra ningún medio.
TIPO MEDIO 124 Se muestra si hay un tipo de medio incorrecto.
ECANCELADO 125 Se muestra si se cancela la operación.
enokey 126 Se muestra si la clave requerida no está disponible.
EKEYEXPIRED 127 Se muestra si la clave ha caducado.
EKEYREVOCADO 128 Se muestra si la clave ha sido revocada.
EKEYRECHAZADO 129 Se muestra si la clave fue rechazada por el servicio.
PROPIETARIO MUERTO 130 Se muestra si el propietario falleció.
ENOTRECUBIERTO 131 Se muestra para un estado no recuperable.
ERFKILL 132 Se muestra si la operación no es posible debido a una eliminación por RF.
EHWVENENO 133 Se muestra si la página de memoria tiene un error de hardware.