| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6259 人关注过本帖
标题:linux下怎么用c获取硬盘物理序列号?
只看楼主 加入收藏
freish
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1223
专家分:437
注 册:2007-6-1
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
linux下怎么用c获取硬盘物理序列号?
真是一个头疼的问题
linux下怎么用c获取硬盘物理序列号?哪位c高手知道?
什么redhat,ubuntu,salories,aix等等等等都能用的
硬盘类型可能是sata,也可能是scsi。
如果是raid,要获取主盘的物理序列号
不知道c高手们有没有一个通用的解决方案?谢谢了
物理序列号哦!

[ 本帖最后由 freish 于 2009-8-28 11:24 编辑 ]
搜索更多相关主题的帖子: linux 
2009-08-28 11:22
jd205
Rank: 2
等 级:论坛游民
帖 子:139
专家分:69
注 册:2006-10-26
收藏
得分:0 
试试在C里system()调用linux命令,LINUX应该有查看硬盘物理序列号的命令吧~
我也不太清楚,记得以前写过在UNIX下运行查看硬盘使用状况的,就是调用UNIX命令。
2009-08-28 13:24
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:20 
程序代码:
#include <stdio.h>
#include <sys/ioctl.h>
#include <linux/hdreg.h>
#include <sys/fcntl.h>
int main()
{
   struct hd_driveid id;
   int fd = open("/dev/sda", O_RDONLY|O_NONBLOCK);
   if (fd < 0) {
     perror("/dev/sda");
     return 1; }
    if(!ioctl(fd, HDIO_GET_IDENTITY, &id))
     {
       printf("Serial Number=%s\n",id.serial_no);
     }
    return 0;
}

/dev/sda自己看着改。

专心编程………
飞燕算法初级群:3996098
我的Blog
2009-08-28 21:39
快速回复:linux下怎么用c获取硬盘物理序列号?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014728 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved