初次接触LTP (Linux Test Project) 被LTP的各种man文件、LTP官网文档还有网上找的七七八八的文章搞得一头雾水,怎么都测试不成功,不知道是我英文太烂没理解对还是它写的不清楚。经过反复摸索终于成功了,现详述如下,还望各位看客不要嫌我写得罗嗦,希望对初次安装使用LTP测试套的人有所帮助。

一、下载LTP测试套

可以从http://sourceforge.net/projects/ltp/files/LTP Source/下载最新的LTP压缩包,如ltp-full-20110228.bz2

下载后建议存放到/home目录下,不要放在/root目录下,因为一些测试需要非root用户来完成。

解压、编译、安装:

1、tar jvxf ltp-full-20110228.bz2

2、cd ltp-full-20110228.bz2

3、./configure (此步可能不成功,则先执行make autotools,然后再./configure)

4、make

5、make install

注意:ltp 的默认安装路径是/opt/ltp,所以接下来的执行测试步骤都需要在/opt/ltp目录下完成(这个一定要特别注意,我当时就误到这了,在/home目录下折腾半天总是测试报错

FATAL: LTP not installed correctly

INFO:  Follow directions in INSTALL!

原来不是安装错误,是进错文件夹了)

二、执行测试

当前有三个脚本可用于执行LTP测试套件,分别是runltp、networktests.sh以及diskio.sh。最常用的就是runltp脚本,它可用于执行LTP中绝大部分的测试(default set of tests,但是不包括networktests及diskio测试。

执行./runltp的一些选项参数如下(借用官网):

-a EMAIL_TO     EMAIL all your Reports to this E-mail Address

-c NUM_PROCS    Run LTP under additional background CPU load

[NUM_PROCS = no. of processes creating the CPU Load by spinning over sqrt()

(Defaults to 1 when value)]

-C FAILCMDFILE  Command file with all failed test cases.

-d TMPDIR       Directory where temporary files will be created.

-D NUM_PROCS,NUM_FILES,NUM_BYTES,CLEAN_FLAG

Run LTP under additional background Load on Secondary Storage (Seperate by comma)

[NUM_PROCS   = no. of processes creating Storage Load by spinning over write()]

[NUM_FILES   = Write() to these many files (Defaults to 1 when value 0 or undefined)]

[NUM_BYTES   = write these many bytes (defaults to 1GB, when value 0 or undefined)]

[CLEAN_FLAG  = unlink file to which random data written, when value 1]

-e              Prints the date of the current LTP release

-f CMDFILES     Execute user defined list of testcases (separate with ',')

-g HTMLFILE     Create an additional HTML output format

-h              Help. Prints all available options.

-i NUM_PROCS    Run LTP under additional background Load on IO Bus

[NUM_PROCS   = no. of processes creating IO Bus Load by spinning over sync()]

-l LOGFILE      Log results of test in a logfile.

-m NUM_PROCS,CHUNKS,BYTES,HANGUP_FLAG

Run LTP under additional background Load on Main memory (Seperate by comma)

[NUM_PROCS   = no. of processes creating main Memory Load by spinning over malloc()]

[CHUNKS      = malloc these many chunks (default is 1 when value 0 or undefined)]

[BYTES       = malloc CHUNKS of BYTES bytes (default is 256MB when value 0 or undefined) ]

[HANGUP_FLAG = hang in a sleep loop after memory allocated, when value 1]

-N              Run all the networking tests.

-n              Run LTP with network traffic in background.

-o OUTPUTFILE   Redirect test output to a file.

-p              Human readable format logfiles.

-q              Print less verbose output to screen.

-r LTPROOT      Fully qualified path where testsuite is installed.

-s PATTERN      Only run test cases which match PATTERN.

-t DURATION     Execute the testsuite for given duration. Examples:

-t 60s = 60 seconds

-t 45m = 45 minutes

-t 24h = 24 hours

-t 2d  = 2 days

-T REPETITION   Execute the testsuite for REPETITION no. of times

-v              Print more verbose output to screen.

-w CMDFILEADDR  Uses wget to get the user's list of testcases.

-x INSTANCES    Run multiple instances of this testsuite.

执行LTP测试的方式主要有两种,一种是执行全部default set of tests, 另一种是执行user defined set of tests。

1、执行default set of tests

cd /opt/ltp (你所安装的ltp的存放目录,默认是/opt/ltp)

./runltp -p -l result.log

2、执行user defined set of tests

如果你只是想执行LTP中的一部分test cases,你可以按照如下步骤操作:

cd /opt/ltp/runtest

vim your_command_file (创建命令文件,当然也可以使用runtest目录中现有的命令文件)

命令文件由两部分组成,一是test case标签“tag",另一个是你希望执行的具体的"test case"脚本名以及一些参数。比如:

#Tag          Test case

#---------------------------------------

mtest01        mtest01 -p 10

cgroup_fj      run_cgroup_test_fj.sh

controllers    test_controllers.sh

cpuctl_stress  run_cpuctl_stress_test.sh 9

编辑结束后保存你的命令文件,执行

cd .. (退出runtest目录,回到/opt/ltp目录)

./runltp -p -l result.02.log -f your_command_file

大功告成,此时测试如果还会报错,那就可能是你的命令文件中参数设置不正确,可根据error提示去检查命令文件及相应的脚本文件,一些脚本文件可能需要特定的参数才能正确执行。

linux杀死ltp进程,LTP套件使用方法详解相关推荐

  1. python process 函数_Python Process创建进程的2种方法详解

    前面介绍了使用 os.fork() 函数实现多进程编程,该方法最明显的缺陷就是不适用于 Windows 系统.本节将介绍一种支持 Python 在 Windows 平台上创建新进程的方法. Pytho ...

  2. linux下防DDOS***软件及使用方法详解

    互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事.在没有硬防的情况下,寻找软件代替是最直接的方法,比如用 iptables,但是iptables不能在自动屏蔽,只能手动屏蔽. 一 ...

  3. 批量 杀掉 mysql 连接_批量杀死MySQL连接的四种方法详解

    方法一 通过information_schema.processlist表中的连接信息生成需要处理掉的MySQL连接的语句临时文件,然后执行临时文件中生成的指令.复制代码 代码如下:mysql> ...

  4. linux如何批量处理图片名,Linux下批量修改图片名称的方法详解

    我们都知道,要修改文件夹下的图片名称很容易,那么有什么方法能够快速批量修改图片名称呢?这篇文章主要为大家介绍了linux系统中如何批量修改图片文件名的案例演示,如果想修改linux文件夹下的图片名称, ...

  5. linux系统下添加新硬盘的方法详解

    对于linux新手来说,在linux上添加新硬盘,是很有挑战性的一项工作. 在Linux服务器上把硬盘接好,启动linux,以root登陆. fdisk -l ## 这里是查看目前系统上有几块硬盘 D ...

  6. linux 驱动编译静态,Linux驱动静态编译和动态编译方法详解

    内核源码树的目录下都有两个文档Kconfig和Makefile.分布到各目录的Kconfig构成了一个分布式的内核配置数据库,每个Kconfig分别描述了所属目录源文档相关的内核配置菜单.在内核配置m ...

  7. linux c 数组初始化,C++数组初始化方法详解

    有时在程序中设置变量值比输入变量值更合适.但是,为数组的各个元素编写单独的赋值语句可能意味着大量的输入,对于大型数组而言尤其如此. 例如,来看一个程序: #include #include using ...

  8. kill -9 进程号杀不死可以用下面的杀掉 Linux下强制杀死进程的方法详解

    常规篇: 首先,用ps查看进程,方法如下: $ ps -ef -- smx 1822 1 0 11:38 ? 00:00:49 gnome-terminal smx 1823 1822 0 11:38 ...

  9. linux 批量删除进程的两种方法

    linux批量删除进程的两种方法 介绍两种方法.要kill的进程都有共同的字串. [plain]  kill -9 `ps -ef |grep xxx|awk '{print $2}' `    ki ...

  10. linux 查看防火墙对应的进程,Linux系统防火墙进程查看的实用方法

    Linux系统防火墙进程查看的实用方法 作者 HonestQiao 2008年03月17日 16:00 启动防火墙 1) 重启后生效 开启: chkconfig iptables on 关闭: chk ...

最新文章

  1. 天地图专题四:在天地图上显示运行轨迹
  2. 新款iPhone SE是改良版iPhone 8无误了,部分零件可互换
  3. GIT入门笔记(11)- 多种撤销修改场景和对策--实战练习
  4. 两个必备小本领——恢复设备出厂配置、如何配置web方式登陆交换机
  5. c语言判断字符串的编码,C语言中判断一个char*是不是utf8编码
  6. 《Windows游戏编程大师技巧》中关于DirectDraw和创建DirectDraw知识笔记
  7. STM32 外部晶振电路设计和匹配
  8. Tcache Attack
  9. Flutter系列之设置Dialog的宽度
  10. Python11 镜像
  11. 今年很火的AI绘画怎么玩
  12. 用户日活月活怎么统计 - Redis HyperLogLog 详解
  13. 品质精选丨一名合格运营必备的8款工具,你都会用了吗?
  14. 2021寒假MISC打卡DAY16
  15. 【电脑小技巧每日一讲:SQL server 2016日志文件的清理】
  16. FFmpeg之sws_scale库的应用(sws_getContext、sws_scale、sws_freeContext)
  17. 使用memc-nginx和srcache-nginx模块构建高效透明的缓存机制
  18. 多功能数字钟c语言单片机PPT,基于STC89C52单片机的多功能数字钟的设计
  19. 量化投资中的因子是什么?因子是如何分类的,包括哪些?
  20. 解决微信H5页面软键盘弹起后页面下方留白的问题(iOS端)

热门文章

  1. 软件随想录:程序员部落酋长Joel谈软件(阮一峰译)-1
  2. 【Grpc】grpc中repeated的数据如何set值?
  3. php漏洞 代码,PHP漏洞代码点滴
  4. matlab emd功率谱密度,【脑电信号分类】脑电信号提取PSD功率谱密度特征
  5. 在IE中为abbr标签加样式(转)
  6. linux内核协议栈 TCP选项之SACK选项的接收Ⅰ
  7. 请不用条件转移指令JG,JGE,JL,JLE等指令实现如下程序片段的功能
  8. 乐队的夏天大结局!用Python分析投票数据,选出真正的乐队TOP 5
  9. pyqt使用graphicsView显示图片
  10. [云原生专题-34]:K8S - 核心概念 - 网络 - Web服务器与反向代理服务器nginx入门介绍