当前位置: 技术问答>linux和unix
真的没有人解决过吗?linux下如何获得硬盘的序列号
来源: 互联网 发布时间:2015-12-28
本文导语: 在linux下如何获得硬盘的物理序列号呢? 搜了很长时间了,只找到两个答案,一个是一个linux下的工具:hdparam;另外一个是说直接查看 ide0/hda目录的 model文件。 如果可行的的话,第二个能实现最好, 可是怎么也...
在linux下如何获得硬盘的物理序列号呢?
搜了很长时间了,只找到两个答案,一个是一个linux下的工具:hdparam;另外一个是说直接查看 ide0/hda目录的 model文件。
如果可行的的话,第二个能实现最好, 可是怎么也找不到这个目录以及文件,伤神啊,是用SSH登录到一个linux上找的,又不能像WIN搜索-_-!!
用第一个方法的话,又要安装这个工具,可是需求是要用代码获得,这样又需要hdparam的源码,有那么多时间能分析的出里面怎么获得还是个问题。
有人实现过吗?希望不要又是放出一大段windows下的代码,或者回复例如ioctl()大概可以获得之类的,偶搜了一整天了……
搜了很长时间了,只找到两个答案,一个是一个linux下的工具:hdparam;另外一个是说直接查看 ide0/hda目录的 model文件。
如果可行的的话,第二个能实现最好, 可是怎么也找不到这个目录以及文件,伤神啊,是用SSH登录到一个linux上找的,又不能像WIN搜索-_-!!
用第一个方法的话,又要安装这个工具,可是需求是要用代码获得,这样又需要hdparam的源码,有那么多时间能分析的出里面怎么获得还是个问题。
有人实现过吗?希望不要又是放出一大段windows下的代码,或者回复例如ioctl()大概可以获得之类的,偶搜了一整天了……
|
我没root 权限,你试试可不可以。可以就给我分。
---------------CU 里面转来的-----------
#include
#include
#include
#include
#include
#include
static int open_flags = O_RDONLY|O_NONBLOCK;
static int errno=1;
int
main ()
{
static struct hd_driveid id;
int fd;
char *devname="/dev/hda";
fd = open (devname, open_flags);
if (fd
---------------CU 里面转来的-----------
#include
#include
#include
#include
#include
#include
static int open_flags = O_RDONLY|O_NONBLOCK;
static int errno=1;
int
main ()
{
static struct hd_driveid id;
int fd;
char *devname="/dev/hda";
fd = open (devname, open_flags);
if (fd