Linux教程
Linux目录
Linux命令
Linux用户
Linux文件
Linux进程
Linux查询
Linux I/O
Linux正则
Linux安全
Linux shell
Linux网络
Linux VI
Linux 系统命令
Linux 其他

Linux 错误代码

Linux 错误代码

Linux 错误代码是在工作或使用程序时系统发生错误时显示的代码。可以借助错误代码识别错误。错误代码帮助我们识别错误的来源。
如果我们在 Linux 系统上工作,很明显我们可能会遇到错误。有些错误可能很小,可能不会导致程序中断。但是可能会出现一些错误,导致系统或程序停止响应。这些错误可能导致数据丢失或可能阻止程序完成。大多数错误以代码或消息的形式显示。
在本节中,我们将看到 C 编程中的错误以及 Linux 系统。

C 编程中的 Linux 错误

熟练的程序员应该知道如何处理这些错误。 C 编程语言不提供对错误处理的直接支持。我们必须检测错误的来源并进行处理。在 C 语言中,返回值显示失败或成功。如果 C 程序中的某个函数失败,我们必须相应地处理错误;否则,它会将错误最后记录在日志文件中。
在执行 C 程序时,我们可能会注意到一些错误编号,例如"错误编号: 17"。在这里,错误号 17 表示文件已经存在。每个错误编号都有一定的含义。
C 语言支持一个变量'errorno。'通过使用这个错误号变量,我们可以使用一些错误处理函数来正确处理它。
要使用外部变量错误号,我们必须包含一个头文件'errno.h.'。 头文件用于定义 'errno' 变量。 errno 变量由发生错误时的系统调用和库函数设置。 C编程语言中有两个重要的函数来处理错误; perror 和 strerror。 perror 函数用于打印错误描述,sterror 函数返回一个包含错误代码的字符串。
让我们使用 errno 来显示错误代码列表。

Linux errno

errno 实用程序用于查找 errno 代码、宏名称和相应的描述。例如,如果我们在 Linux 系统上提供 ENOENT,它将显示代码 2 和描述 "没有这样的文件或目录"。如果我们提供代码 2,那么它将显示 ENOENT 及其描述。
如果我们的机器上没有安装 errno 实用程序,它将显示如下错误:
Linux Error Codes
要安装它,请执行以下命令:
sudo apt install moreutils
通过执行上面的命令,moreutils 包安装在我们的机器上,其中包含 errno 实用程序。
Linux Error Codes

显示错误代码列表

要显示错误代码列表,执行如下命令:
errno-l
以上命令将显示 RedHat 的错误代码列表。考虑以下输出:
Linux Error Codes

显示一个错误编号

要显示特定错误编号的信息,请执行以下命令:
errno 2
以上命令将显示错误编号 2 的描述。考虑以下输出:
Linux Error Codes

显示错误名称的信息

要显示特定错误名称的信息,请执行 errno 命令,后跟错误名称。例如要显示错误名称'ESRCH'的信息,执行如下命令:
errno ESRCH
以上命令将显示指定错误名称的信息。考虑以下输出:
Linux Error Codes

使用字符串显示错误

要使用描述中的字符串显示错误描述,请执行如下命令:
errno-s permission
以上命令将显示描述包含字符串权限的错误。考虑以下输出:
Linux Error Codes

Linux 系统错误列表

以下是部分Linux系统可能的错误列表:
错误代码 错误号 说明
EPERM 1 如果不允许操作则显示。
ENOENT 2 不存在该文件或目录时显示。
ESRCH 3 如果不存在该进程则显示。
EINTR 4 显示中断的系统调用
EIO 5 输入/输出错误显示。
ENXIO 6 如果不存在这样的设备或地址,则显示。
E2BIG 7 参数列表过长时显示。
ENOEXEC 8 执行格式错误时显示
EBADF 9 文件描述符错误时显示。
ECHILD 10 如果不存在子进程则显示。
EAGAIN 11 资源暂时不可用时显示。
ENOMEM 12 系统无法分配内存时显示。
EACCES 13 权限被拒绝时显示。
EFAULT 14 如果地址错误则显示。
ENOTBLK 15 需要块设备时显示。
EBUSY 16 设备或资源忙时显示。
EEXIST 17 如果文件已经存在则显示。
EXDEV 18 跨设备链接无效时显示。
ENODEV 19 无此设备时显示。
ENOTDIR 20 如果没有目录则显示。
EISDIR 21 有目录就显示。
EINVAL 22 参数无效时显示。
ENFILE 23 系统打开文件过多时显示。
EMFILE 24 打开文件过多时显示。
ENOTTY 25 如果设备的ioctl不合适会显示。
ETXTBSY 26 文本文件忙时显示。
EFBIG 27 文件过大显示。
ENOSPC 28 设备上没有剩余空间时显示。
ESPIPE 29 非法搜索时显示。
EROFS 30 只读文件系统时显示。
EMLINK 31 链接过多时显示。
EPIPE 32 断管时显示。
EDOM 33 数值参数在域外时显示。
ERANGE 34 数值结果超出范围显示。
EDEADLK 35 避免资源死锁显示。
ENAMETOOLONG 36 文件名太长显示。
ENOLCK 37 无锁可用时显示。
ENOSYS 38 函数未实现时显示泰德。
经济性 39 目录不为空时显示。
ELOOP 40 符号链接层数过多时显示。
ENOMSG 42 如果没有所需类型的消息,则显示。
EIDRM 43 去掉标识符后显示。
ECHRNG 44 通道号超出范围显示。
EL2NSYNC 45 2级不同步时显示。
EL3HLT 46 Level 3 停止时显示。
EL3RST 47 Level 3 重置时显示。
ELNRNG 48 链接号超出范围显示。
EUNATCH 49 未连接协议驱动时显示。
ENOCSI 50 如果没有可用的CSI结构,则显示。
EL2HLT 51 Level 2 停止时显示。
EBADE 52 无效交换时显示。
EBADR 53 请求描述符无效时显示。
EXFULL 54 兑换满时显示。
伊诺诺 55 无阳极时显示。
EBADRQC 56 请求代码无效时显示。
EBADSLT 57 无效槽位显示。
EBFONT 59 字体文件格式错误时显示。
ENOSTR 60 如果设备不是流则显示。
ENODATA 61 无可用数据时显示。
ETIME 62 定时器超时时显示。
ENOSR 63 流资源不足时显示。
ENONET 64 机器不在网络上时显示。
ENOPKG 65 未安装包时显示。
EREMOTE 66 远程对象显示。
ENOLINK 67 如果链接已被切断显示。
EADV 68 显示为广告错误。
ESRMNT 69 显示为Srmount错误。
ECOMM 70 发送时出现通讯错误显示。
EPROTO 71 协议错误显示。
EMULTIHOP 72 显示多跳尝试。
EDOTDOT 73 显示为 RFS 特定错误。
EBADMSG 74 显示错误信息。
EOVERFLOW 75 如果值对于定义的数据类型太大,则显示。
ENOTUNIQ 76 名称在网络上不唯一时显示。
EBADFD 77 文件描述符状态错误时显示。
EREMCHG 78 远程地址改变时显示。
ELIBACC 79 如果我们无法访问所需的共享库,则会显示它。
伊利巴德 80 在访问损坏的共享库时显示。
ELIBSCN 81 如果a.out中有.lib段被破坏会显示。
ELIBMAX 82 如果我们试图链接太多共享库,则会显示它。
ELIBEXEC 83 如果不能直接执行共享库会显示。
EILSEQ 84 显示无效或不完整的多字节或宽字符
ERESTART 85 显示通知被中断的系统调用应该重新启动。
ESTRPIPE 86 如果有流管道错误显示。
EUSERS 87 显示给太多用户。
ENOTSOCK 88 非socket上的socket操作时显示。
EDESTADDRREQ 89 需要目的地址时显示。
EMSGSIZE 90 如果消息太长则显示。
EPROTOTYPE 91 socket协议类型错误时显示。
ENOPROTOOPT 92 协议不可用时显示。
EPROTONOS支持 93 协议不支持时显示。
ESOCKTNOS 支持 94 不支持Socket类型时显示。
EOPNOTSUPP 95 不支持操作时显示。
EPFNOSUPPORT 96 不支持协议族时显示。
EAFNOSUPPORT 97 协议不支持地址族时显示。
EADDRINUSE 98 如果地址已被使用则显示。
EADDRNOTAVAIL 99 系统无法分配请求地址时显示。
ENETDOWN 100 网络中断时显示。
ENETUNREACH 101 网络不通时显示。
ENETRESET 102 如果网络在重置时断开连接会显示。
ECONNABORTED 103 如果软件导致连接中止显示。
ECONNRESET 104 如果连接被peer重置则显示。
ENOBUFS 105 无可用缓冲空间时显示。
EISCONN 106 如果传输端点已经连接,则显示。
ENOTCONN 107 未连接传输端点时显示。
ESHUTDOWN 108 传输端点关闭后系统无法发送显示。
ETOOMANYREFS 109 引用过多时显示: 无法拼接
ETIMEDOUT 110 连接超时显示。
ECONNREFUSED 111 连接被拒绝时显示。
EHOSTDOWN 112 Host 宕机时显示。
EHOSTUNREACH 113 如果没有到主机的路由显示。
EALREADY 114 如果正在运行则显示。
EINPROGRESS 115 如果操作正在进行中显示。
ESTALE 116 显示为陈旧的文件句柄。
EUCLEAN 117 结构需要清理时显示。
ENOTNAM 118 显示不是 XENIX 命名类型文件。
ENAVAIL 119 如果没有可用的 XENIX 信号量,则显示。
EISNAM 120 如果有命名类型文件则显示。
EREMOTEIO 121 远程I/O错误显示。
EDQUOT 122 超过磁盘配额时显示。
ENOMEDIUM 123 未找到介质时显示。
EMEDIUMTYPE 124 介质类型错误显示。
取消 125 取消操作时显示。
ENOKEY 126 如果所需的密钥不可用则显示。
EKEYEXPIRED 127 如果密钥已过期则显示。
EKEYREVOKED 128 如果密钥已被撤销则显示。
EKEYREJECTED 129 密钥被服务拒绝时显示。
EOWNERDEAD 130 所有者死亡时显示。
ENOTRECOVERABLE 131 显示为不可恢复状态。
ERFKILL 132 RF-kill 导致无法操作时显示。
EHWPOISON 133 内存页有硬件错误时显示。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4