当前位置: 首页 > news >正文

linux查看系统相关信息失败,Linux错误码查看

在用Linux下写C的代码的时候,利用open、create函数总是会出现错误

但是返回值为 -1 ,并不能定位错误在哪里,所以查看系统提供的错误码就显得特别有必要了

需要包含头文件 并且定义一个 extern int errno 之后打印出来变量 errno 查看错误码

在 /var/include/asm/ermo_bash.h 和 ermo.h

这两个头文件中都有错误码,这样在函数后面加上一个 printf 就可以定位错误的原因

我的错误码是13,其原因在于服务器拒绝对系统默认文件夹进行写入操作

导致无法在文件夹下进行创建新文件的动作

没找到解决办法,在外层文件夹下将就了,迫不得以破坏了文件的存放规律

附上一份错误码的表,以后就不需要每次都去翻两个文件了。

#ifndef _I386_ERRNO_H

#define _I386_ERRNO_H

#define EPERM           1 /* Operation not permitted */

#define ENOENT          2 /* No such file or directory */

#define ESRCH           3 /* No such process */

#define EINTR           4 /* Interrupted system call */

#define EIO             5 /* I/O error */

#define ENXIO           6 /* No such device or address */

#define E2BIG           7 /* Arg list too long */

#define ENOEXEC         8 /* Exec format error */

#define EBADF           9 /* Bad file number */

#define ECHILD          10 /* No child processes */

#define EAGAIN          11 /* Try again */

#define ENOMEM          12 /* Out of memory */

#define EACCES          13 /* Permission denied */ //这是我今天遇到的问题

#define EFAULT          14 /* Bad address */

#define ENOTBLK         15 /* Block device required */

#define EBUSY           16 /* Device or resource busy */

#define EEXIST          17 /* File exists */

#define EXDEV           18 /* Cross-device link */

#define ENODEV          19 /* No such device */

#define ENOTDIR         20 /* Not a directory */

#define EISDIR          21 /* Is a directory */

#define EINVAL          22 /* Invalid argument */

#define ENFILE          23 /* File table overflow */

#define EMFILE          24 /* Too many open files */

#define ENOTTY          25 /* Not a typewriter */

#define ETXTBSY         26 /* Text file busy */

#define EFBIG           27 /* File too large */

#define ENOSPC          28 /* No space left on device */

#define ESPIPE          29 /* Illegal seek */

#define EROFS           30 /* Read-only file system */

#define EMLINK          31 /* Too many links */

#define EPIPE           32 /* Broken pipe */

#define EDOM            33 /* Math argument out of domain of func */

#define ERANGE          34 /* Math result not representable */

#define EDEADLK         35      /* Resource deadlock would occur */

#define ENAMETOOLONG    36      /* File name too long */

#define ENOLCK          37      /* No record locks available */

#define ENOSYS          38      /* Function not implemented */

#define ENOTEMPTY       39      /* Directory not empty */

#define ELOOP           40      /* Too many symbolic links encountered */

#define EWOULDBLOCK     EAGAIN  /* Operation would block */

#define ENOMSG          42      /* No message of desired type */

#define EIDRM           43      /* Identifier removed */

#define ECHRNG          44      /* Channel number out of range */

#define EL2NSYNC        45      /* Level 2 not synchronized */

#define EL3HLT          46      /* Level 3 halted */

#define EL3RST          47      /* Level 3 reset */

#define ELNRNG          48      /* Link number out of range */

#define EUNATCH         49      /* Protocol driver not attached */

#define ENOCSI          50      /* No CSI structure available */

#define EL2HLT          51      /* Level 2 halted */

#define EBADE           52      /* Invalid exchange */

#define EBADR           53      /* Invalid request descriptor */

#define EXFULL          54      /* Exchange full */

#define ENOANO          55      /* No anode */

#define EBADRQC         56      /* Invalid request code */

#define EBADSLT         57      /* Invalid slot */

#define EDEADLOCK       EDEADLK

#define EBFONT          59      /* Bad font file format */

#define ENOSTR          60      /* Device not a stream */

#define ENODATA         61      /* No data available */

#define ETIME           62      /* Timer expired */

#define ENOSR           63      /* Out of streams resources */

#define ENONET          64      /* Machine is not on the network */

#define ENOPKG          65      /* Package not installed */

#define EREMOTE         66      /* Object is remote */

#define ENOLINK         67      /* Link has been severed */

#define EADV            68      /* Advertise error */

#define ESRMNT          69      /* Srmount error */

#define ECOMM           70      /* Communication error on send */

#define EPROTO          71      /* Protocol error */

#define EMULTIHOP       72      /* Multihop attempted */

#define EDOTDOT         73      /* RFS specific error */

#define EBADMSG         74      /* Not a data message */

#define EOVERFLOW       75      /* Value too large for defined data type */

#define ENOTUNIQ        76      /* Name not unique on network */

#define EBADFD          77      /* File descriptor in bad state */

#define EREMCHG         78      /* Remote address changed */

#define ELIBACC         79      /* Can not access a needed shared library */

#define ELIBBAD         80      /* Accessing a corrupted shared library */

#define ELIBSCN         81      /* .lib section in a.out corrupted */

#define ELIBMAX         82      /* Attempting to link in too many shared libraries */

#define ELIBEXEC        83      /* Cannot exec a shared library directly */

#define EILSEQ          84      /* Illegal byte sequence */

#define ERESTART        85      /* Interrupted system call should be restarted */

#define ESTRPIPE        86      /* Streams pipe error */

#define EUSERS          87      /* Too many users */

#define ENOTSOCK        88      /* Socket operation on non-socket */

#define EDESTADDRREQ    89      /* Destination address required */

#define EMSGSIZE        90      /* Message too long */

#define EPROTOTYPE      91      /* Protocol wrong type for socket */

#define ENOPROTOOPT     92      /* Protocol not available */

#define EPROTONOSUPPORT 93      /* Protocol not supported */

#define ESOCKTNOSUPPORT 94      /* Socket type not supported */

#define EOPNOTSUPP      95      /* Operation not supported on transport endpoint */

#define EPFNOSUPPORT    96      /* Protocol family not supported */

#define EAFNOSUPPORT    97      /* Address family not supported by protocol */

#define EADDRINUSE      98      /* Address already in use */

#define EADDRNOTAVAIL   99      /* Cannot assign requested address */

#define ENETDOWN        100     /* Network is down */

#define ENETUNREACH     101     /* Network is unreachable */

#define ENETRESET       102     /* Network dropped connection because of reset */

#define ECONNABORTED    103     /* Software caused connection abort */

#define ECONNRESET      104     /* Connection reset by peer */

#define ENOBUFS         105     /* No buffer space available */

#define EISCONN         106     /* Transport endpoint is already connected */

#define ENOTCONN        107     /* Transport endpoint is not connected */

#define ESHUTDOWN       108     /* Cannot send after transport endpoint shutdown */

#define ETOOMANYREFS    109     /* Too many references: cannot splice */

#define ETIMEDOUT       110     /* Connection timed out */

#define ECONNREFUSED    111     /* Connection refused */

#define EHOSTDOWN       112     /* Host is down */

#define EHOSTUNREACH    113     /* No route to host */

#define EALREADY        114     /* Operation already in progress */

#define EINPROGRESS     115     /* Operation now in progress */

#define ESTALE          116     /* Stale NFS file handle */

#define EUCLEAN         117     /* Structure needs cleaning */

#define ENOTNAM         118     /* Not a XENIX named type file */

#define ENAVAIL         119     /* No XENIX semaphores available */

#define EISNAM          120     /* Is a named type file */

#define EREMOTEIO       121     /* Remote I/O error */

#define EDQUOT          122     /* Quota exceeded */

#define ENOMEDIUM       123     /* No medium found */

#define EMEDIUMTYPE     124     /* Wrong medium type */

#define ECANCELED       125     /* Operation Canceled */

#define ENOKEY          126     /* Required key not available */

#define EKEYEXPIRED     127     /* Key has expired */

#define EKEYREVOKED     128     /* Key has been revoked */

#define EKEYREJECTED    129     /* Key was rejected by service */

/* for robust mutexes */

#define EOWNERDEAD      130     /* Owner died */

#define ENOTRECOVERABLE 131     /* State not recoverable */

#endif

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • linux 缩减 物理分区,Lvm基本应用,扩展及缩减实现
  • 国内开源workflow渐渐发展起来
  • qt linux封包,QTcpSocket 通讯 ( 服务器、客户端、封包、解包 )
  • 整理了一天
  • linux配置svn如何检出,Linux CentOS下配置SVN+SVN勾子
  • os x arm-linux,在 OS X 下构建 ARM 64 镜像
  • 晚上的校园歌手晚会
  • linux fs源代码分析,BlueFs源代码分析报告.doc
  • Get Information from Tracert Command
  • securecrt linux开发板,SecureCRT 登陆虚拟机中Ubuntu详解
  • 西直门交警
  • c语言文件分割与合并程序详解,如何实现将一个文件分割成多个小文件
  • 使用dbms_rowid包获得rowid的详细信息
  • 高斯消元法的应用
  • 小波 c语言实现,小波分析算法的公式与C语言实现
  • 【React系列】如何构建React应用程序
  • Brief introduction of how to 'Call, Apply and Bind'
  • Linux CTF 逆向入门
  • Mysql优化
  • Spring技术内幕笔记(2):Spring MVC 与 Web
  • 短视频宝贝=慢?阿里巴巴工程师这样秒开短视频
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 区块链共识机制优缺点对比都是什么
  • 如何在GitHub上创建个人博客
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • ​香农与信息论三大定律
  • #### go map 底层结构 ####
  • ()、[]、{}、(())、[[]]等各种括号的使用
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第6节 (嵌套的Finally代码块)
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (差分)胡桃爱原石
  • (二)斐波那契Fabonacci函数
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)spring boot球鞋文化交流论坛 毕业设计 141436
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (回溯) LeetCode 78. 子集
  • (每日一问)计算机网络:浏览器输入一个地址到跳出网页这个过程中发生了哪些事情?(废话少说版)
  • (详细版)Vary: Scaling up the Vision Vocabulary for Large Vision-Language Models
  • (原創) 博客園正式支援VHDL語法著色功能 (SOC) (VHDL)
  • (转) Android中ViewStub组件使用
  • (转)fock函数详解
  • (转)http协议
  • *** 2003
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .bat批处理(七):PC端从手机内复制文件到本地
  • .net core 6 redis操作类
  • .Net Core 中间件与过滤器
  • .net 设置默认首页
  • .Net6使用WebSocket与前端进行通信
  • .NET开源快速、强大、免费的电子表格组件
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)