本发明涉及测试方法技术领域,具体涉及一种rhel7¢os7系统reboot测试的方法。
背景技术:
rhel7¢os7中一个最主要的改变,就是切换到了systemd,它用于替代前任版本中的sysv和upstart,对系统和服务进行管理。systemd是一个linux操作系统下的系统和服务管理器,它被设计成向后兼容sysv启动脚本,并提供了大量的特性,如开机时平行启动系统服务,按需启动守护进程,支持系统状态快照,或者基于依赖的服务控制逻辑。先前的使用sysv初始化或upstart的rhel版本中,使用位于/etc/rc.d/init.d/目录中的bash初始化脚本进行管理。而在rhel7/centos7中,这些启动脚本被服务单元取代了。服务单元以.service文件扩展结束,提供了与初始化脚本同样的用途。目前在用的reboot测试脚本针对不同版本linux,过于繁琐复杂。
技术实现要素:
本发明要解决的技术问题是:本发明针对以上问题,提供一种rhel7¢os7系统reboot测试的方法,rhel7¢os7系统通过将一个简单的reboot测试脚本添加到服务单元,利用systemd开机运行这个服务单元即可实现reboot测试。
本发明所采用的技术方案为:
一种rhel7¢os7系统reboot测试的方法,所述方法通过将reboot测试脚本添加到服务单元,利用systemd开机运行该服务单元,实现reboot测试。
所述方法实现步骤如下:
1)编辑reboot测试脚本reboot.sh,放到root目录下;
2)建立服务单元reboottest.service,放到/usr/lib/systemd/system/目录下;
3)给reboot测试脚本及服务单元添加权限;
4)配置reboottest.service服务开机自启动;
5)重启机器,开始reboot测试。
所述方法在测试过程中,通过进入系统运行systemctldisablereboottest.service命令,停止测试。
所述reboottest.service服务单元内容如下:
1)服务在network启动后运行;
2)服务参数:以程序绝对路径启动服务开始运行命令,以程序绝对路径重启服务开始运行命令,以程序绝对路径停止服务开始运行命令;
3)服务在后台运行,并给服务分配独立的临时空间;
4)服务安装采用多用户模式。
本发明的有益效果为:
本发明针对目前在用的reboot测试脚本过于繁琐复杂问题,只需要将一个简单的reboot测试脚本添加到服务单元,利用systemd开机运行这个服务单元即可实现reboot测试,优化了测试方法,简单易操作,并提高了测试效率。
附图说明
图1为本发明方法流程图。
具体实施方式
根据说明书附图,结合具体实施方式对本发明进一步说明:
如图1所示,一种rhel7¢os7系统reboot测试的方法实现流程和相关命令如下:
1)编辑reboot测试脚本reboot.sh,放到root目录下,具体内容如下:
#/bin/bash
sleep40#开机后等待40秒
echo"`date`reboot">>/root/times#reboot时间记录到times文件
cat/root/times|grepreboot|wc-l|awk{print}>>/root/times#统计reboot次数记录到times文件
reboot#重启
2)建立服务单元reboottest.service,放到/usr/lib/systemd/system/目录下,这样reboot测试脚本在开机没有登录用户的情况下就能启动运行,reboottest.service服务单元内容如下:
[unit]#服务说明
description=reboottest#服务描述
after=network.target#在network启动后运行该服务
[service]#服务参数
execstart=/root/reboot.shstart#以程序绝对路径启动服务开始运行命令
execreload=/root/reboot.shrestart#以程序绝对路径重启服务开始运行命令
execstop=/root/reboot.shstop#以程序绝对路径停止服务开始运行命令
type=forking#后台运行
privatetmp=ture#给服务分配独立的临时空间
[install]#服务安装
wantedby=multi-user.target#多用户模式
3)给reboot测试脚本及服务单元添加权限,命令如下:
chmod754reboot.sh
chmod754reboottest.service
4)配置reboottest.service服务开机自启动,命令如下:
systemctlenablereboottest.service
5)重启机器即可开始reboot测试,进入系统运行如下命令即可停止测试。
systemctldisablereboottest.service
实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。