[发明专利]一种基于LINUX系统区分本地磁盘与USB移动磁盘的方法在审
申请号: | 201510529432.6 | 申请日: | 2015-08-26 |
公开(公告)号: | CN105138331A | 公开(公告)日: | 2015-12-09 |
发明(设计)人: | 焦芬芳 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 linux 系统 区分 本地 磁盘 usb 移动 方法 | ||
技术领域
本发明涉及计算机领域,具体地说是一种基于LINUX系统区分本地磁盘与USB移动磁盘的方法。
背景技术
一般在集群监控软件中都会监控本地磁盘的实时读写速率,在实际监控中发现,集群中的计算节点本地磁盘的名字可能不一样,有的计算节点本地磁盘名字是sda,有的计算节点本地磁盘名字是sdb,造成计算节点名字不同的原因与linux系统扫描磁盘的顺序有关系,例如,在USB接口上插有一个u盘,linux重启后,系统先扫描到USB上的移动磁盘命名为sda,依次扫描到本地磁盘命名为sdb。所以,监控本地磁盘实时读写速率前,需要先确定哪些sd*是本地磁盘。如果,监控软件不能区分本地磁盘还是usb移动磁盘,就需要人为的去改代码,哪些计算节点的本地磁盘是sda、哪些是sdb等,这样的软件不够通用。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种基于LINUX系统区分本地磁盘与USB移动磁盘的方法。
本发明的技术方案是按以下方式实现的,其操作方法如下:
先通过linux的sys虚拟文件系统找到block设备;再找出以sd开头命名的磁盘;然后根据磁盘在pci总线的挂接层次来区分是本地磁盘还是usb移动磁盘。
上述方法的具体方式如下:
(1)、打开/sys/block/目录;
(2)、读取目录,如果为空,程序结束,否则判断是否以sd开头;
(3)、如果不是sd开头,跳到第2步;
(4)、打开该文件,获取该文件描述符;
(5)、通过/proc/self/fd/该文件描述符,获取该文件的实际路径;
(6)、解析实际路径中sd*的祖父目录是否为usb,例如:
usb的移动硬盘的实际路径:
/sys/devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1/1-1:1.0/host6/target6:0:0/6:0:0:0/block/sdb;
本地磁盘的实际路径:
/sys/devices/pci0000:00/0000:00:10.0/host2/target2:0:0/2:0:0:0/block/sda
(7)、是usb,舍弃该sd*;不是usb,则该sd*为本地磁盘
(8)、跳到第(2)步。
本发明提出的通过linux的sys虚拟文件系统,区分本地磁盘与usb移动磁盘,关键是先通过/sys/block获取以sd开头的磁盘文件,然后获取该文件的软链接,即该sd*的实际路径,该sd*实际路径包含了sd*设备驱动层次,如果是usb移动硬盘,它的祖父目录包含usb驱动,否则不包含。
本发明的优点是:
本发明的一种基于LINUX系统区分本地磁盘与USB移动磁盘的方法和现有技术相比,能够区分本地磁盘与usb移动磁盘,具有通用和高效率的特点,因而,具有很好的使用价值。
附图说明
图1为一种基于LINUX系统区分本地磁盘与USB移动磁盘的方法的结构示意图。
实施方式
下面结合附图对本发明的一种基于LINUX系统区分本地磁盘与USB移动磁盘的方法作以下详细说明。
如图1所示,本发明的一种基于LINUX系统区分本地磁盘与USB移动磁盘的方法,操作方法如下:
先通过linux的sys虚拟文件系统找到block设备;再找出以sd开头命名的磁盘;然后根据磁盘在pci总线的挂接层次来区分是本地磁盘还是usb移动磁盘。
具体方式如下:
(1)、打开/sys/block/目录;
(2)、读取目录,如果为空,程序结束,否则判断是否以sd开头;
(3)、如果不是sd开头,跳到第2步;
(4)、打开该文件,获取该文件描述符;
(5)、通过/proc/self/fd/该文件描述符,获取该文件的实际路径;
(6)、解析实际路径中sd*的祖父目录是否为usb,例如:
usb的移动硬盘的实际路径:
/sys/devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1/1-1:1.0/host6/target6:0:0/6:0:0:0/block/sdb;
本地磁盘的实际路径:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510529432.6/2.html,转载请声明来源钻瓜专利网。