一种硬盘分区格式化与挂载的方法及装置制造方法

文档序号:6542458阅读:110来源:国知局
一种硬盘分区格式化与挂载的方法及装置制造方法
【专利摘要】本发明适用于安防监控领域,提供了一种硬盘分区格式化与挂载的方法及装置,所述方法包括:开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化;在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。本发明通过增加分区格式化挂载脚本,并在开机启动脚本和硬盘设备热插时调用的脚本中设置调用分区格式化挂载脚本的功能,使得系统在开机启动和/或检测到有硬盘设备热插时,自动对硬盘设备进行分区格式化及挂载。
【专利说明】一种硬盘分区格式化与挂载的方法及装置
【技术领域】
[0001]本发明属于安防监控【技术领域】,尤其涉及一种硬盘分区格式化与挂载的方法及装置。
【背景技术】
[0002]传统的硬盘格式化挂载的方法为手动方案,即:先手动通过网页进行格式化,然后在机器开机启动的时候进行自动挂载。虽然通过网页格式化硬盘的方法安全,不易发生问题,但是当硬盘的数量大时,通过网页逐个地对硬盘进行格式化,操作繁琐且不方便。

【发明内容】

[0003]本发明的目的在于提供一种硬盘分区格式化与挂载的方法及装置,以实现对硬盘设备的自动分区格式化以及挂载。
[0004]本发明是这样实现的,一种硬盘分区格式化与挂载的方法,所述方法包括:
[0005]开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化;
[0006]在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
[0007]进一步地,所述调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化之前,还包括:
[0008]在系统开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能。
[0009]进一步地,所述开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化的步骤具体为:
[0010]开机启动和/或检测到有硬盘设备热插时,判断所述硬盘设备是否已经过云存储数据存储节点分区格式化;
[0011]若是,则不对所述硬盘设备进行分区格式化;否则,调用预先设置的分区格式化挂载脚本对所述硬盘设备进行分区格式化。
[0012]进一步地,所述开机启动时,判断硬盘设备是否已经过云存储数据存储节点分区格式化之前,还包括:
[0013]开机启动时,遍历所有的硬盘设备,并在遍历的过程中判断当前硬盘设备是否为系统盘;
[0014]在判断结果为是时,则不对该硬盘设备进行分区格式化;
[0015]否则,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
[0016]本发明的第二方面,提供了一种硬盘分区格式化与挂载的装置,所述装置包括:
[0017]分区格式化模块,用于开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化;[0018]挂载模块,用于在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
[0019]进一步地,所述装置还包括:
[0020]设置模块,用于预先在系统开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能。
[0021]进一步地,所述分区格式化模块具体包括:
[0022]判断单元,用于开机启动和/或检测到有硬盘热插时,判断所述硬盘设备是否已经过云存储数据存储节点分区格式化;
[0023]执行单元,用于判断单元的判断结果为是时,则不对所述硬盘设备进行分区格式化;否则,调用预先设定的分区格式化挂载脚本对所述硬盘设备进行分区格式化。
[0024]进一步地,所述判断单元还用于:
[0025]开机启动时,遍历所有的硬盘设备,并在遍历的过程中判断当前硬盘设备是否为系统盘;在判断结果为是时,则不对该硬盘设备进行分区格式化;否则,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
[0026]与现有技术相比,本发明通过增加分区格式化挂载脚本,并在系统开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能,使得在开机启动和/或检测到有硬盘热插时,自动调用分区格式化挂载脚本对硬盘设备进行分区格式化;并对分区格式化后的硬盘设备进行挂载。解决了现有的手动通过网页格式化硬盘的方法操作繁琐的问题,实现了自动分区格式化硬盘,并挂载硬盘,用户只需插上硬盘即可实现自动分区格式化及挂载。
【专利附图】

【附图说明】
[0027]图1是本发明实施例一提供的硬盘分区格式化与挂载方法的实现流程图;
[0028]图2是本发明实施例二提供的硬盘热插时的硬盘分区格式化与挂载方法的实现流程图;
[0029]图3是本发明实施例二提供的系统开机启动时的硬盘分区格式化与挂载方法的实现流程图;
[0030]图4是本发明实施例三提供的硬盘分区格式化与挂载装置的组成结构图。
【具体实施方式】
[0031]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0032]与现有技术相比,本发明实施例通过增加分区格式化挂载脚本,在Iinux开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能,使得Iinux系统在开机启动和/或检测到有硬盘热插时,自动调用分区格式化挂载脚本对硬盘设备进行分区格式化;并对分区格式化后的硬盘设备进行挂载。解决了现有的手动通过网页格式化硬盘的方法操作繁琐的问题,实现了自动分区格式化硬盘后再挂载硬盘,用户只需插上硬盘即可实现自动分区格式化及挂载。[0033]本发明提供的硬盘分区格式化与挂载方法基于Iinux系统,要求Iinux系统必须带有udev (内核设备管理器)和smartctl (硬盘状态监控)工具,同时支持shell脚本解析。进一步地,所述方法要求使用的Iinux系统必须带有parted (硬盘管理工具)和用于格式化硬盘的mkfs.xfs工具。
[0034]其中,udev是Linux kernel2.6系列的设备管理器,其主要功能是管理/dev目录底下的设备节点。
[0035]本发明提供的硬盘分区格式化与挂载方法还要求所使用的硬盘必须具有S.M.A.R.T (Self Monitoring Analysis and Reporting Technology,自动检测分析及报告技术)特性。
[0036]实施例一
[0037]图1示出了本发明实施例一提供的硬盘分区格式化与挂载方法的实现流程。
[0038]如图1所示,硬盘分区格式化与挂载的方法具体为:
[0039]在步骤SlOl中,开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化。
[0040]在本发明中,在系统开机启动和/或检测到有硬盘设备热插时,能够通过Iinux开机启动脚本和硬盘设备热插时调用的脚本自动调用分区格式化挂载脚本对硬盘设备进行分区,然后再进行格式化。其中,对硬盘设备进行分区时只分一个分区。所述系统为Iinux系统。 [0041]所述分区格式化挂载脚本预先设置,并在Iinux开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能。所述分区格式化挂载脚本的设置方法具体为:
[0042]使用udev,在 /etc/udev/rules.d 下面建立一个规则文件 20-disk-mapper.rules ;所述文件中包括以下内容:
[0043]KERNEL==〃sd?〃,ACT10N==〃add〃,PR0GRAM=〃/bin/sh
[0044]smart_mount_disk.sh/dev/%k mount format"。
[0045]通过上述规则文件20-disk-mapper.rules的配置,使得linux内核检测到硬盘设备插上去时,会自动调用一个shell脚本smart_mount_disk.sh执行自动分区格式化与挂
载硬盘设备。
[0046]进一步地,在开机启动脚本中添加如下代码:
[0047]for dev_name in/dev/sd?;do
[0048]smart_mount_di sk.sh$dev_name mount format
[0049]done
[0050]从而使得系统在开机时,遍历所有的硬盘设备/dev/sd?,并在遍历的过程中对每块硬盘设备调用smart_mount_disk.sh脚本来实现自动分区格式化与挂载硬盘的功能。
[0051]在步骤S102中,在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
[0052]在本实施例中,通过增加分区格式化挂载脚本,在Iinux开机启动脚本和硬盘设备热插时调用的脚本中设置调用分区格式化挂载脚本的功能,使得系统在开机启动和/或检测到有硬盘设备热插时,自动调用分区格式化挂载脚本对硬盘设备进行分区格式化;并将分区格式化后的硬盘设备挂载到相应的路径下。解决了现有的手动通过网页分区格式化硬盘的方法操作繁琐的问题,实现了自动分区格式化硬盘,并挂载硬盘,用户只需插上硬盘即可实现自动分区格式化及挂载。
[0053]实施例二
[0054]图2示出了本发明实施例二提供的硬盘热插时的分区格式化与挂载方法的实现流程。
[0055]如图2所示,所示硬盘热插时的分区格式化与挂载方法具体为:
[0056]在步骤S201中,检测到有硬盘设备热插时,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
[0057]在本实施例中,检测到有硬盘热插时,会触发调用分区格式化与挂载脚本smart_mount_disk.sh来自动判断硬盘设备是否已经过云存储数据存储节点分区格式化。在判断结果为是时,执行步骤S202 ;否则,执行步骤S203。
[0058]所述云存储数据存储节点是指云存储集群中的存储节点。作为本发明的一个实施示例,所述云存储数据存储节点为基于hadoop开源项目的云存储方案中的数据存储节点DataNode。
[0059]示例性的,判断硬盘是否已经过云存储数据存储节点分区格式化的方法可以为:
[0060]A、判断硬盘设备的分区名和分区数是否与预先设定的分区名和分区数相同。
[0061]在本实施例中,预先设置硬盘设备的分区名为inf_cloud_storage_disk,分区数为I。则判断硬盘设备的分区名和分区数是否与预设的分区名和分区数相同的步骤具体为:判断硬盘设备的分区名是否与预设值inf_cloud_storage_disk相同,同时判断分区数是否与预设值I相同。
[0062]B、在所述硬盘设备的分区名和分区数均与预先设定的分区名和分区数相同时,则判定所述硬盘设备已经过云存储数据存储节点分区格式化;否则,判定所述硬盘设备未经过云存储数据存储节点分区格式化。
[0063]在硬盘设备的分区名与预设值inf_cloud_storage_disk相同,且分区数与预设值I相同时,则所述硬盘设备已经过云存储数据存储节点分区格式化;否则,所述硬盘设备未经过云存储数据存储节点分区格式化。
[0064]通过判断硬盘设备是否已经过云存储数据存储节点分区格式化,从而保证了不会格掉正确的硬盘设备,防止误格式化云存储数据盘。对于新的硬盘或者从其他存储设备(例如电脑)中拿过来的硬盘就会自动进行分区格式化,但从集群里的存储节点拿过来的硬盘,则不会自动进行分区格式化。
[0065]在步骤S202中,不对该硬盘设备进行分区格式化。
[0066]在步骤S203中,对所述硬盘设备进行分区格式化。
[0067]在本实施例中,当硬盘设备未经过云存储数据存储节点分区格式化时,对所述硬盘设备进行分区格式化。格式化挂载脚本smart_mount_disk.sh里使用GPT格式化分区,然后使用xfs文件系统格式化。对硬盘设备进行分区时只分一个分区。
[0068]在步骤S204中,在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
[0069]在本实施例中,将分区格式化后的硬盘设备挂载到相应的路径下。[0070]图3示出了本发明实施例二提供的开机启动时硬盘分区格式化与挂载方法的实现流程。
[0071]如图3所示,所示开机启动时硬盘分区格式化与挂载的方法具体为:
[0072]在步骤S301中,开机启动时,遍历所有的硬盘设备,并在遍历的过程中判断当前硬盘设备是否为系统盘。
[0073]在本实施例中,在Iinux系统上识别到的硬盘设备/dev/sd?,里面包括系统硬盘。因此在开机启动时,Iinux系统会触发调用分区格式化挂载脚本smart_mount_disk.sh,首先判断所述硬盘设备是否为系统盘。在判断结果为是时,则执行步骤S302,不对该硬盘设备进行分区格式化;否则,执行步骤S303。
[0074]通过判断/dev/sd?硬盘设备是否为系统盘,防止了误格式化系统盘。
[0075]在步骤S303中,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
[0076]在本实施例中,在所述硬盘设备不为系统盘时,Iinux系统继续调用分区格式化挂载脚本smart_mount_disk.sh来自动判断硬盘设备是否已经过云存储数据存储节点分区格式化。在判断结果为是时,执行步骤S304 ;否则,执行步骤S305。
[0077]所述云存储数据存储节点是指云存储集群中的存储节点。作为本发明的一个实施示例,所述云存储数据存储节点为基于hadoop开源项目的云存储方案中的数据存储节点DataNode。
[0078]示例性的,判断硬盘是否已经过云存储数据存储节点分区格式化的方法可以为:
[0079]A、判断硬盘设备的分区名和分区数是否与预先设定的分区名和分区数相同。
[0080]在本实施例中,预先设置硬盘设备的分区名为inf_cloud_storage_disk,分区数为I。则判断硬盘设备的分区名和分区数是否与预设的分区名和分区数相同的步骤具体为:判断硬盘设备的分区名是否与预设值inf_cloud_storage_disk相同,同时判断分区数是否与预设值I相同。
[0081]B、在所述硬盘设备的分区名和分区数均与预先设定的分区名和分区数相同时,则判定所述硬盘设备已经过云存储数据存储节点分区格式化;否则,判定所述硬盘设备未经过云存储数据存储节点分区格式化。
[0082]在硬盘设备的分区名与预设值inf_cloud_storage_disk相同,且分区数与预设值I相同时,则所述硬盘设备已经过云存储数据存储节点分区格式化;否则,所述硬盘设备未经过云存储数据存储节点分区格式化。
[0083]通过判断硬盘是否已经过云存储数据存储节点分区格式化,从而保证了不会格掉正确的硬盘设备,防止误格式化云存储数据盘。对于新的硬盘或者从其他存储设备(例如电脑)中拿过来的硬盘就会自动进行分区格式化,但从集群里的存储节点拿过来的硬盘,则不会自动进行分区格式化。
[0084]在步骤S304中,不对该硬盘设备进行分区格式化。
[0085]在步骤S305中,对所述硬盘设备进行分区格式化。
[0086]在本实施例中,当硬盘设备未经过云存储数据存储节点分区格式化时,对所述硬盘设备进行分区格式化。分区格式化并挂载脚本smart_mount_disk.sh里使用GPT格式化分区,然后使用xfs文件系统格式化。对硬盘设备进行分区时只分一个分区。
[0087] 在步骤S306中,在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
[0088]在本实施例中,将分区格式化后的硬盘设备挂载到相应的路径下。
[0089]在本实施例中,通过增加分区格式化挂载脚本,在Iinux开机启动脚本和硬盘设备热插时调用的脚本中设置调用分区格式化挂载脚本的功能,使得系统在开机启动和/或检测到有硬盘设备热插时,自动调用分区格式化挂载脚本对硬盘设备进行分区格式化;并将分区格式化后的硬盘设备挂载到相应的路径下。解决了现有的手动通过网页格式化硬盘的方法操作繁琐的问题,实现了自动分区格式化并挂载硬盘,用户只需插上硬盘即可实现自动分区格式化及挂载。
[0090]实施例三
[0091]图4示出了本发明实施例三提供的硬盘分区格式化与挂载装置的组成结构。
[0092]如图4所示,所述硬盘分区格式化与挂载装置包括:
[0093]分区格式化模块41,用于开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化;
[0094]挂载模块42,用于在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
[0095]进一步地,所述装置还包括:
[0096]设置模块43,用于预先在系统开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能。
[0097]进一步地,所述分区格式化模块41具体包括:
[0098]判断单元411,用于开机启动和/或检测到有硬盘设备热插时,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
[0099]在本实施例中,所述判断单元411具体用于:
[0100]判断硬盘设备的分区名和分区数是否与预先设定的分区名和分区数相同;
[0101]若是,则判定所述硬盘设备已经过云存储数据存储节点分区格式化;否则,判定所述硬盘设备未经过云存储数据存储节点分区格式化。
[0102]执行单元412,用于判断单元的判断结果为是时,则不对所述硬盘设备进行分区格式化;否则,调用预先设定的分区格式化挂载脚本对所述硬盘设备进行分区格式化。
[0103]在本实施例中,所述对硬盘设备进行分区格式化为先对硬盘设备进行分区,在对分区后的硬盘设备进行格式化。所述对硬盘设备进行分区时只分一个分区。
[0104]进一步地,所述判断单元411还用于:
[0105]开机启动时,遍历所有的硬盘设备,并在遍历的过程中判断当前硬盘设备是否为系统盘;在判断结果为是时,则不对该硬盘设备进行分区格式化;否则,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
[0106]在本实施例中,本发明通过增加分区格式化挂载脚本,在Iinux开机启动脚本和硬盘设备热插时调用的脚本中设置调用分区格式化挂载脚本的功能,使得系统在开机启动和/或检测到有硬盘设备热插时,自动调用分区格式化挂载脚本对硬盘设备进行分区格式化;并将分区格式化后的硬盘设备挂载到相应的路径下。解决了现有的手动通过网页格式化硬盘的方法操作繁琐的问题,实现了自动分区格式化与挂载硬盘,用户只需插上硬盘即可实现自动分区格式化及挂载。[0107]本领域普通技术人员还可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,包括R0M/RAM、磁盘、光盘等。
[0108]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种硬盘分区格式化与挂载的方法,其特征在于,所述方法包括: 开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化; 在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
2.如权利要求1所述的硬盘分区格式化与挂载的方法,其特征在于,所述调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化之前,还包括: 在系统开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能。
3.如权利要求1所述的硬盘分区格式化与挂载的方法,其特征在于,所述开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化的步骤具体为: 开机启动和/或检测到有硬盘设备热插时,判断所述硬盘设备是否已经过云存储数据存储节点分区格式化; 若是,则不对所述硬盘设备进行分区格式化;否则,调用预先设置的分区格式化挂载脚本对所述硬盘设备进行分区格式化。
4.如权利要求3所述的硬盘分区格式化与挂载的方法,其特征在于,所述开机启动时,判断硬盘设备是否已经过云存储数据存储节点分区格式化的步骤之前还包括: 开机启动时,遍历所有的硬盘设备,并在遍历的过程中判断当前硬盘设备是否为系统盘; 在判断结果为是时,则不对该硬盘设备进行分区格式化; 否则,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
5.如权利要求3或4所述的硬盘分区格式化与挂载的方法,其特征在于,所述判断硬盘设备是否已经过云存储数据存储节点分区格式化的步骤具体为: 判断硬盘设备的分区名和分区数是否与预先设定的分区名和分区数相同; 若是,则判定所述硬盘设备已经过云存储数据存储节点分区格式化;否则,判定所述硬盘设备未经过云存储数据存储节点分区格式化。
6.一种硬盘分区格式化与挂载的装置,其特征在于,所述装置包括: 分区格式化模块,用于开机启动和/或检测到有硬盘设备热插时,调用预先设置的分区格式化挂载脚本对硬盘设备进行分区格式化; 挂载模块,用于在分区格式化完成后,再通过所述分区格式化挂载脚本对分区格式化后的硬盘设备进行挂载。
7.如权利要求6所述的硬盘分区格式化与挂载的装置,其特征在于,所述装置还包括: 设置模块,用于预先在系统开机启动脚本和硬盘设备热插时调用的脚本中设置调用所述分区格式化挂载脚本的功能。
8.如权利要求6所述的硬盘分区格式化与挂载的装置,其特征在于,所述分区格式化模块具体包括: 判断单元,用于开机启动和/或检测到有硬盘热插时,判断所述硬盘设备是否已经过云存储数据存储节点分区格式化;执行单元,用于判断单元的判断结果为是时,则不对所述硬盘设备进行分区格式化;否贝U,调用预先设定的分区格式化挂载脚本对所述硬盘设备进行分区格式化。
9.如权利要求8所述的硬盘格式化与挂载的装置,其特征在于,所述判断单元还用于: 开机启动时,遍历所有的硬盘设备,并在遍历的过程中判断当前硬盘设备是否为系统盘; 在判断结果为是时,则不对该硬盘设备进行分区格式化; 否则,判断硬盘设备是否已经过云存储数据存储节点分区格式化。
10.如权利要求8或9所述的硬盘分区格式化与挂载的装置,其特征在于,所述判断单元具体用于: 判断硬盘设备的分区名和分区数是否与预先设定的分区名和分区数相同; 若是,则判定所述硬盘设备已经过云存储数据存储节点分区格式化;否则,判定所述硬盘设备未经过云存储数据存储节点分区格式化。
【文档编号】G06F3/06GK104020960SQ201410126960
【公开日】2014年9月3日 申请日期:2014年3月31日 优先权日:2014年3月31日
【发明者】叶笋 申请人:深圳英飞拓科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1