CN107239273B - 一种服务器的磁盘盘符绑定方法 - Google Patents

一种服务器的磁盘盘符绑定方法 Download PDF

Info

Publication number
CN107239273B
CN107239273B CN201710300518.0A CN201710300518A CN107239273B CN 107239273 B CN107239273 B CN 107239273B CN 201710300518 A CN201710300518 A CN 201710300518A CN 107239273 B CN107239273 B CN 107239273B
Authority
CN
China
Prior art keywords
disk
kernel
binding
drive
slot position
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710300518.0A
Other languages
English (en)
Other versions
CN107239273A (zh
Inventor
赵晨
李建辉
熊中哲
魏兴华
臧冰凌
李春
陈栋
张文件
罗春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Woqu Technology Co ltd
Original Assignee
Hangzhou Woqu Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Woqu Technology Co ltd filed Critical Hangzhou Woqu Technology Co ltd
Priority to CN201710300518.0A priority Critical patent/CN107239273B/zh
Publication of CN107239273A publication Critical patent/CN107239273A/zh
Application granted granted Critical
Publication of CN107239273B publication Critical patent/CN107239273B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及计算机技术领域,公开了一种服务器的磁盘盘符绑定方法,包括以下步骤:(1)系统启动前,将主机上的各个槽位插上磁盘;(2)系统启动过程中,内核为磁盘分配对应的系统盘符,内核会按照扫描到磁盘的顺序来进行先后分配磁盘;(3)系统盘符绑定根据内核设备管理器规则文件,将系统盘符与服务器上的槽位信息绑定,内核设备管理器向内核发送更名消息,内核根据更名消息进行修改系统盘符;(4)内核设备管理器根据步骤(3)修改的系统盘符对磁盘绑定形成绑定符。本发明将磁盘槽位和盘符进行绑定,重启之后可以确保Oracle ASM使用得磁盘盘符不会发生变化,具有良好的稳定性。同时可支持在线更换磁盘,使更换磁盘更加方便。

Description

一种服务器的磁盘盘符绑定方法
技术领域
本发明涉及计算机技术领域,特别是涉及一种服务器的磁盘盘符绑定方法。
背景技术
PYTHON语言是一种面向对象、解释型计算机程序设计语言,如今,它被越来越多地应用在IT运维自动化领域。PYTHON在系统管理上的优势在于强大的开发能力和完整的工具链,PYTHON已成为运维人员手中的利器。
内核设备管理器(udev)是LINUX2.6内核里的一个功能,它代替了原来的DEVFS,成为当前LINUX系统默认的设备管理工具。内核设备管理器(udev)以守护进程的形式存在,通过侦听内核发出来的动作事件来管理/DEV目录下的设备文件。若存在多块硬盘,在系统启动过程中,当设备添加时,内核设备管理器(udev)的守护进程侦听来自内核的动作事件,以此来添加/DEV下的设备文件,内核会按照扫描到硬盘的顺序分配盘符,通常内核分配盘符的顺序是 /DEV/SDA、/DEV/SDB、/DEV/SDC……在系统启动后,若热插拔硬盘,系统会按照已分配的盘符顺序,以顺延的方式来分配盘符。例如:在系统启动时,一个设备文件被分配了/DEV/SDB盘符,当此设备被热插拔后,系统再次扫描时给其分配的盘符可能就是/DEV/SDH。LINUX默认的设备管理工具显然已经不错了,但是不能覆盖全部的应用场景,比如针对同一个硬盘槽位,每次插拔或者更换硬盘后,在系统中的盘符都可能不一致。第一次插入时,盘符可能为/DEV/SDB,将硬盘拔除后,再次插入硬盘,盘符可能变为/DEV/SDE,此情况若服务器发生重启,内核重新扫描后的盘符可能又会发生变化,出现盘符漂移。当使用系统内核分配的盘符创建ORACLE的ASMDG,若发生盘符漂移,ORACLE的ASMDG就会无法挂载,导致ORACLE数据库无法使用。
发明内容
本发明针对现有技术中硬盘在插拔过程中导致服务器重启问题、磁盘盘符漂移的缺点,提供了一种服务器的磁盘盘符绑定方法。
为了解决上述技术问题,本发明通过下述技术方案得以解决。
一种服务器的磁盘盘符绑定方法,包括如下步骤:
(1)系统启动前,将主机上的各个槽位插上磁盘;
(2)系统启动过程中,内核为磁盘分配对应的系统盘符,内核会按照扫描到磁盘的顺序来进行先后分配磁盘,内核扫描顺序为按照磁盘名称的字母顺序进行扫描;
(3)系统盘符绑定根据内核设备管理器规则文件,将系统盘符与服务器上的槽位绑定,内核设备管理器向内核发送更名消息,内核根据更名消息进行修改系统盘符,修改过程包括:
①内核将linux系统目录下的该内核设备的名称由系统盘符修改为槽位盘符;
②内核将linux系统目录下的指向该内核设备的链接的名称由该系统盘符修改为槽位盘符;
(4)内核设备管理器根据步骤(3)修改的系统盘符对磁盘绑定形成绑定符,包括:
①对设备进行判断是否为磁盘设备,如否则跳出;如是,则通过内核设备管理器进行接收内核中设备的动作事件,进入下一步骤;
②通过linux命令获取磁盘设备的ID路径号,调用外部的python脚本命令同时将获取的ID路径号带入生成绑定符;
③然后将绑定符链接到磁盘文件夹下,在磁盘文件夹下产生与绑定符对应的磁盘设备。
作为优选,步骤(3)中,槽位的信息为磁盘所在物理槽位ID号码。
作为优选,绑定符包括服务器槽位信息和磁盘设备编码。
本发明由于采用了以上技术方案,具有显著的技术效果:使用本发明后,将磁盘槽位和盘符进行绑定,重启之后可以确保Oracle ASM使用得磁盘盘符不会发生变化,具有良好的稳定性。同时可支持在线更换磁盘,使更换磁盘更加方便。
附图说明
图1是本发明一种服务器的磁盘盘符绑定方法的运行过程示意图。
具体实施方式
下面通过实施例对本发明作进一步详细描述。
如图1所示,一种服务器的磁盘盘符绑定方法,包括如下步骤:
(1)系统启动前,将主机上的各个槽位插上磁盘;
(2)系统启动过程中,内核为磁盘分配对应的系统盘符,内核会按照扫描到磁盘的顺序来进行先后分配磁盘,内核扫描顺序为按照磁盘名称的字母顺序进行扫描;
(3)系统盘符绑定根据内核设备管理器规则文件,将系统盘符与服务器上的槽位信息绑定,槽位的信息为磁盘所在物理槽位ID号码,内核设备管理器向内核发送更名消息,内核根据更名消息进行修改系统盘符,修改过程包括:
①内核将linux系统目录下的该内核设备的名称由系统盘符修改为槽位盘符;
②内核将linux系统目录下的指向该内核设备的链接的名称由该系统盘符修改为槽位盘符;
(4)内核设备管理器根据步骤(3)修改的系统盘符对磁盘绑定形成绑定符,包括:
①对设备进行判断是否为磁盘设备,如否则跳出;如是,则通过内核设备管理器进行接收内核中设备的动作事件,进入下一步骤;
②通过linux命令获取磁盘设备的ID路径号,调用外部的python脚本命令同时将获取的ID路径号带入生成绑定符,绑定符包括服务器槽位信息和磁盘设备编码。
③然后将绑定符链接到磁盘文件夹下,在磁盘文件夹下产生与绑定符对应的磁盘设备。
udev为linux系统的内核设备管理器,用于管理/dev目录下的设备节点,当磁盘设备添加、删除或更新时,由udev守护进程侦听来自内核的热插拔事件,以此udev来添加、删除或更新/dev下的设备文件。
具体udev规则设置如下:
如果有一个设备的内核设备名称以sd开头并且发生添加或者改变行为的设备,则该条件生效:
KERNEL=="sd*",ACTION=="add|change",SUBSYSTEMS=="block",
调用外部python脚本命令生成聚合盘符所需要的ID_PATH号:
IMPORT{program}="/usr/bin/python disk2slot.pyc$env{ID_PATH}",
生成聚合盘符P0B00S00,聚合盘符生成后,为设备文件产生符号链接,链接到/dev/qdisk/目录下,该目录为手动生成:
ENV{DEVTYPE}!="partition",ENV{QDISK_SLOT}!="", SYMLINK+="qdisk/$env{QDISK_SLOT}"
KERNEL=="sd*",SUBSYSTEM=="block",ENV{DEVTYPE}=="partition", ENV{QDISK_SLOT}!="",SYMLINK+="qdisk/$env{QDISK_SLOT}p%n"。
以P0B00S00为例子,P0B00S00中的P0部分代表管理该磁盘的Raid卡是插在服务器的几号槽位,例如P0就代表1号槽位,P1就代表2号槽位,依次类推; P0B00S00中的B00代表该磁盘设备的BOX编码;P0B00S00中的S00代表该磁盘设备在服务器上的具体槽位位置,S00表示该磁盘插在服务器磁盘槽位的第1个槽位,S01表示该磁盘插在服务器磁盘槽位的第2个槽位,原来linux系统默认的磁盘盘符是sda,sdb或者sdc这样的形式,依次按字母顺序后延,linux系统默认情况下的磁盘盘符在系统重启后会发生变化。改进后的磁盘盘符即为绑定符(P0B00SXX),在系统重启后磁盘盘符不会发生变化。
使用本发明后,将磁盘槽位和盘符进行绑定,重启之后可以确保Oracle ASM 使用得磁盘盘符不会发生变化,具有良好的稳定性。同时可支持在线更换磁盘,使更换磁盘更加方便。
实施例1
在系统默认的磁盘盘符中,磁盘盘符的路径为/dev/sda,触发udev规则后,对磁盘设备路径名称(/dev/sda)进行更名,通过udevadm test/sys/block/sda获得磁盘的ID-path,然后通过python脚本生成磁盘盘符,脚本为disk2slot.pyc,脚本命令为/usr/bin/python/disk2slot.pyc$env{ID_PATH},磁盘盘符生成绑定符得到为P0B00S00,进而执行SYMLINK+="qdisk/$env{QDISK_SLOT}" 把磁盘设备链接到/dev/qdisk/目录下,最终磁盘设备的链接为/dev/qdisk/P0B00S00。
总之,以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所作的均等变化与修饰,皆应属本发明专利的涵盖范围。

Claims (3)

1.一种服务器的磁盘盘符绑定方法,其特征在于,包括如下步骤:
(1)系统启动前,将主机上的各个槽位插上磁盘;
(2)系统启动过程中,内核为磁盘分配对应的系统盘符,内核会按照扫描到磁盘的顺序来进行先后分配磁盘,内核扫描顺序为按照磁盘名称的字母顺序进行扫描;
(3)系统盘符绑定根据内核设备管理器规则文件,将系统盘符与服务器上的槽位信息绑定,内核设备管理器向内核发送更名消息,内核根据更名消息进行修改系统盘符,修改过程包括:
①内核将linux系统目录下的该内核设备的名称由系统盘符修改为槽位盘符;
②内核将linux系统目录下的指向该内核设备的链接的名称由该系统盘符修改为槽位盘符;
(4)内核设备管理器根据步骤(3)修改的系统盘符对磁盘绑定形成绑定符,包括:
①对设备进行判断是否为磁盘设备,如否则跳出;如是,则通过内核设备管理器进行接收内核中设备的动作事件,进入下一步骤;
②通过linux命令获取磁盘设备的ID路径号,调用外部的python脚本命令同时将获取的ID路径号带入生成绑定符;
③然后将绑定符链接到磁盘文件夹下,在磁盘文件夹下产生与绑定符对应的磁盘设备。
2.根据权利要求1所述的一种服务器的磁盘盘符绑定方法,其特征在于:步骤(3)中,槽位的信息为磁盘所在物理槽位ID号码。
3.根据权利要求1所述的一种服务器的磁盘盘符绑定方法,其特征在于:绑定符包括服务器槽位信息和磁盘设备编码。
CN201710300518.0A 2017-05-02 2017-05-02 一种服务器的磁盘盘符绑定方法 Active CN107239273B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710300518.0A CN107239273B (zh) 2017-05-02 2017-05-02 一种服务器的磁盘盘符绑定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710300518.0A CN107239273B (zh) 2017-05-02 2017-05-02 一种服务器的磁盘盘符绑定方法

Publications (2)

Publication Number Publication Date
CN107239273A CN107239273A (zh) 2017-10-10
CN107239273B true CN107239273B (zh) 2020-08-28

Family

ID=59984100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710300518.0A Active CN107239273B (zh) 2017-05-02 2017-05-02 一种服务器的磁盘盘符绑定方法

Country Status (1)

Country Link
CN (1) CN107239273B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107807791A (zh) * 2017-10-20 2018-03-16 郑州云海信息技术有限公司 一种计算机硬盘序列绑定方法及系统
CN108845762A (zh) * 2018-05-29 2018-11-20 郑州云海信息技术有限公司 一种解决热插拔时磁盘盘符漂移方法及装置
CN109491604B (zh) * 2018-11-01 2021-07-02 郑州云海信息技术有限公司 一种硬盘盘符重复问题的处理方法、装置及系统
CN109445866A (zh) * 2018-11-09 2019-03-08 郑州云海信息技术有限公司 一种硬盘盘符的确定方法、装置及服务器
CN110187843B (zh) * 2019-06-04 2020-06-26 苏州浪潮智能科技有限公司 一种储存介质名称顺序不变的方法,系统,终端及存储介质
CN110989926B (zh) * 2019-11-11 2024-02-13 北京字节跳动网络技术有限公司 故障磁盘槽位定位方法、装置及电子设备
CN111198796B (zh) * 2019-12-26 2023-08-29 天津中科曙光存储科技有限公司 磁盘热插拔管理方法以及装置
CN113721860A (zh) * 2021-09-13 2021-11-30 上海顺诠科技有限公司 盘符绑定系统及其方法
CN114063920A (zh) * 2021-11-12 2022-02-18 四川华鲲振宇智能科技有限责任公司 一种Linux下盘符固定方法及系统
CN116302720A (zh) * 2021-12-14 2023-06-23 富联精密电子(天津)有限公司 槽位绑定方法、系统、终端设备及存储介质
CN114691052B (zh) * 2022-05-31 2022-10-14 杭州沃趣科技股份有限公司 一种磁盘的更换方法、装置、计算机设备及存储介质
CN114721603B (zh) * 2022-06-10 2022-08-26 浙江豪联信息科技有限公司 避免磁盘漂移的电数据处理识别方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677650A (zh) * 2012-09-12 2014-03-26 北京百度网讯科技有限公司 盘符漂移预防及处理方法及装置
CN104699423A (zh) * 2015-03-13 2015-06-10 华为技术有限公司 Linux系统中绑定盘符的方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677650A (zh) * 2012-09-12 2014-03-26 北京百度网讯科技有限公司 盘符漂移预防及处理方法及装置
CN104699423A (zh) * 2015-03-13 2015-06-10 华为技术有限公司 Linux系统中绑定盘符的方法和装置

Also Published As

Publication number Publication date
CN107239273A (zh) 2017-10-10

Similar Documents

Publication Publication Date Title
CN107239273B (zh) 一种服务器的磁盘盘符绑定方法
US8407693B2 (en) Managing package dependencies
CN1329840C (zh) 文件归档
US9864736B2 (en) Information processing apparatus, control method, and recording medium
US20080126444A1 (en) Hybrid computer restore using network service
US10055475B2 (en) Authentication system, synchronization method, and authentication apparatus
CN108255638B (zh) 一种快照回滚方法及装置
CN110569085A (zh) 配置文件加载方法及系统
CN102193841B (zh) 一种Subversion配置库的备份方法及装置
US8539048B2 (en) Electronic device and method for loading configuration files using the same
CN109445800B (zh) 一种基于分布式系统的版本自动部署方法及系统
US9703848B2 (en) Caching linked queries for optimized compliance management
CN106897063B (zh) 一种基于efi将os启动项永久添加至bios中的方法及系统
EP4060484A1 (en) Control method and control device for enabling operations of application program in multiple systems
EP3260981B1 (en) Information processing apparatus, information processing system, and information processing method for updating firmware
CN110609710A (zh) 一种安卓系统开机速度控制方法、智能设备及存储介质
US20080201607A1 (en) Disaster recovery in a data processing system
JP5943753B2 (ja) 仮想マシン管理システム、仮想マシン管理方法およびプログラム
CN114443294B (zh) 大数据服务组件部署方法、系统、终端及存储介质
CN114490570A (zh) 生产数据同步方法、装置、数据同步系统及服务器
CN104809033B (zh) 一种备份方法及系统
CN109144967B (zh) 一种用于改进分布式计算系统的维护系统及方法
KR100678926B1 (ko) 로그 정보 관리 시스템 및 방법
CN114661339B (zh) 一种实现本地数据自动提交到远程服务器的方法及装置
US9659025B1 (en) Automation of RSG management for backup and recovery

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method of binding disk letter of server

Effective date of registration: 20210512

Granted publication date: 20200828

Pledgee: Hangzhou United Rural Commercial Bank Limited by Share Ltd. Baoshan Branch

Pledgor: HANGZHOU WOQU TECHNOLOGY Co.,Ltd.

Registration number: Y2021980003544

PC01 Cancellation of the registration of the contract for pledge of patent right

Granted publication date: 20200828

Pledgee: Hangzhou United Rural Commercial Bank Limited by Share Ltd. Baoshan Branch

Pledgor: HANGZHOU WOQU TECHNOLOGY CO.,LTD.

Registration number: Y2021980003544