ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux下检测网线拔出

2021-12-09 16:00:25  阅读:203  来源: 互联网

标签:status 拔出 printf 网线 skfd carrier linux eth0


看了很多方法 当然也可以实现 ,但是实现起来比较繁琐,有时候还不一定成功

其实很简单 在命令行查看 /sys/class/net/eth0/carrier 即可知道网线是否拔了

carrier:1 ----网线正常

carrier:0 ----网线断开

拔掉网线的时候,同时debug也会输出提示 eth0 link down

只需要在应用层程序里面,读取carrier中的值 即可

skfd = open("/sys/class/net/eth0/carrier", O_RDONLY) ;
 if(skfd < 0)
 printf("cat eth0 error!\n") ;
 else
 printf("cat eth0 success!\n") ;

......

lseek(skfd, 0, SEEK_SET) ;
 eth0_ret = read(skfd, eth0_status, 2) ;
 //printf("---status eth0 %c---\n", eth0_status[0]) ;
 if(eth0_status[0] == '0')
 {
   eth0_connect_status = eth0_down ;

标签:status,拔出,printf,网线,skfd,carrier,linux,eth0
来源: https://blog.csdn.net/YuZhuQue/article/details/121826434

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有