一种Linux系统下多分区存储设备卸载失败后回滚方法及系统的制作方法
【技术领域】
[0001] 本发明属于操作系统管理技术领域,涉及一种回滚方法及系统,特别是涉及一种 Linux系统下多分区存储设备卸载失败后回滚方法及系统。
【背景技术】
[0002] Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX 的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用 程序和网络协议。它支持32位和64位硬件。Linux继承了 Unix以网络为核心的设计思 想,是一个性能稳定的多用户网络操作系统。Linux存在着许多不同的Linux版本,但它们 都使用了 Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由 器、视频游戏控制台、台式计算机、大型机和超级计算机。
[0003] 例如,路由器上对存储设备的管理是基于Iinux对存储设备的管理,也就是说是 按照分区管理的。假如存储设备上有3个分区,Iinux就生成三个设备节点,用户添加删除 存储设备的时候,就需要处理三个设备,需要考虑其中的分区。
[0004] 多数用户使用的windows环境,windows提供统一删除设备的接口-添加和删除设 备操作对象是存储设备,而不是存储设备上的分区。假如存储设备上有3个分区,windows 会显示3个分区,用户添加和删除设备时是按照存储设备为单位处理的,不用考虑分区的 情况。
[0005] 而Linux对存储设备的管理是按照存储设备上的分区进行管理的,在删除时也是 按照分区进行的。而用户习惯于按照存储设备设备进行管理,删除时不必考虑分区情况。
[0006] 因此,如何提供一种Linux系统下多分区存储设备卸载失败后回滚方法及系统, 以解决现有技术中的安装有Linux系统的各种计算机硬件设备在用户添加和删除存储设 备时需要考虑分区,使用户在使用各种计算机硬件设备时出现与操作windows系统差异行 为的困惑等种种缺陷,实已成为本领域从业者亟待解决的技术问题。
【发明内容】
[0007] 鉴于以上所述现有技术的缺点,本发明的目的在于提供一种Linux系统下多分区 存储设备卸载失败后回滚方法及系统,用于解决现有技术中的安装有Linux系统的各种计 算机硬件设备在用户添加和删除存储设备时需要考虑分区,使用户在使用各种计算机硬件 设备时出现与操作windows差异行为的困惑的问题。
[0008] 为实现上述目的及其他相关目的,本发明一方面提供一种Linux系统下多分区的 存储设备卸载失败后回滚方法,应用于采用Linux系统的终端装置上,所述终端装置包括 多个用于加载所述存储设备的驱动设备,所述Linux系统下多分区的存储设备卸载失败后 回滚方法包括:采用第一控制命令使所述驱动设备加载所述多分区的存储设备;自动生成 包含分区属性信息的分区信息文件;查找与所述分区信息文件相对应的文件路径,通过所 述文件路径读取所述分区信息文件,并实时读取所述多分区的存储设备的存储容量;识别 所述分区信息文件中包含的各项内容;采用第二控制命令卸载所述多分区的存储设备,判 断所述多分区的存储设备中是否存在正在使用的分区;若是,则采用回滚操作;若否,则表 示所述多分区的存储设备正确卸载,结束进程。
[0009] 可选地,所述回滚操作为将卸载的所述多分区的存储设备重新加载。
[0010] 可选地,所述第一控制命令为加载命令,所述第二控制命令为卸载命令。
[0011] 可选地,所述文件路径为:/proc/partitions ;其中,proc用于存放运行时 的Linux系统的信息文件,所述信息文件包括进程信息,内存信息,及设备驱动信息; partitions用于存放Linux系统下多分区的存储设备的分区信息文件。
[0012] 可选地,所述分区信息文件中包括多分区的存储设备的设备号、分区内容、存储设 备的容量大小、存储设备编号、及存储设备的分区号。
[0013] 可选地,所述分区内容包括M个存储设备,每一个所述存储设备包括N个分区;其 中,M为大于等于0的整数,N为大于等于2小于等于15的正整数。
[0014] 本发明另一方面还提供一种Linux系统下多分区的存储设备卸载失败后回滚系 统,应用于采用Linux系统的终端装置上,所述终端装置包括多个用于加载所述存储设备 的驱动设备,所述Linux系统下多分区的存储设备卸载失败后回滚系统包括:加载模块,用 于采用第一控制命令使所述驱动设备加载所述多分区的存储设备;文件生成模块,用于自 动生成包含分区属性信息的分区信息文件;路径查找模块,用于查找与所述分区信息文件 相对应的文件路径;读取模块,用于通过所述文件路径读取所述分区信息文件,并实时读取 所述多分区的存储设备的存储容量;识别模块,用于识别所述分区信息文件中包含的各项 内容;卸载模块,用于采用第二控制命令卸载所述多分区的存储设备;判断模块,用于判断 所述多分区的存储设备中是否存在正在使用的分区;若是,则调用用于执行回滚操作的回 滚操作模块;若否,则调用用于拒绝执行回滚操作的终止模块。
[0015] 可选地,所述回滚操作模块在所述判断模块检测到所述多分区的存储设备中存在 正在使用的分区时,调用所述加载模块将卸载的所述多分区的存储设备重新加载。
[0016] 可选地,所述判断模块检测所述多分区的存储设备中是否存在正在使用的分区的 依据为根据实时读取到的所述多分区的存储设备的存储容量;当读取到的所述多分区的存 储设备的存储容量小于所述多分区的存储设备的预定存储容量表示所述多分区的存储设 备中存储正在使用的分区;当读取到的所述多分区的存储设备的存储容量等于所述多分区 的存储设备的预定存储容量时表示所述多分区的存储设备卸载正确。
[0017] 可选地,所述第一控制命令使所述驱动设备加载所述多分区的存储设备至Linux 系统下用户层。
[0018] 如上所述,本发明所述的Linux系统下多分区存储设备卸载失败后回滚方法及系 统,具有以下有益效果:本发明通过同时加载或卸载单个存储器中的多个设备分区使存储 设备在软件上看上去是单一的整体,用户只是对一个设备进行了操作,屏蔽了 Linux系统 对多分区存储管理的特点,和用户使用windows系统习惯保持一致。
【附图说明】
[0019] 图1显示为本发明的Linux系统下多分区存储设备卸载失败后回滚方法流程示意 图。
[0020] 图2显示为本发明的Linux系统下多分区存储设备卸载失败后回滚系统原理结构 示意图。
[0021] 元件标号说明
[0022] I Linux系统下多分区存储设备卸载失败后回滚系统
[0023] 11 加载模块
[0024] 12 文件生成模块
[0025] 13 路径查找模块
[0026] 14 读取模块
[0027] 15 识别模块
[0028] 16 卸载模块
[0029] 17 判断模块
[0030] 18 回滚操作模块
[0031] 19 终止模块
[0032] Sl ~S7 步骤
【具体实施方式】
[0033] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书 所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实 施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离 本发明的精神下进行各种修饰或改变。
[0034] 请参阅附图。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明 的基本构想,遂图式中仅显示与本发明中