Linux系统下开机启动时间检测工具bootchart

简介

Bootchart 是一种很方便的工具,主要用于分析Linux 系统下的启动过程,并且能够形成一个层次分明的图片,让用户很直观的查看系统启动的过程和各个过程耗费的时间,以便用户能够分析启动过程,从而进行优化以提高启动时间。它由bootchartd 服务和bootchart-render 两部分组成,后者主要负责生成启动流程的分析结果图。

安装bootchart

目前,在各大Linux 发行版本中,基本都带有这个包。你只需通过他们对应的源,进行安装即可。具体的安装方法可以参见各发行版的具体的包管理机制。

另外,你还可以从http://www.bootchart.org/download.html 处下载到相应的源码包,进行编译安装即可。要注意的是bootchart 是一个基于java 的程序。所以的有相应的环境方可。

运行Bootchart

要使bootchart 运行,你需要将他添加到引导器的初始化进程选项,或者手动在init 脚本(通常是rc.sysinit )中手动添加。不过需要注意的是,如果你是手动添加到init 脚本的,那么也要手动停止它,这种情况需要特别留意!

启动引导器设置

下面我们介绍常用的方法,即将原有引导选项复制一份,并在内核项后面添加'init=/sbin/bootchartd' ,然后通过启动引导器引导bootchart 。这样bootchart 会在登录提示符出现的时候自动停止。

Grub 中添加的方法

打开/boot/grub/menu.lst, 复制粘贴原有的引导记录,并在kernel 行后添加"init=/sbin/bootchartd" 。如下例:

# (1) Arch Linux Bootchart title Arch Linux root (hd0,0) kernel /vmlinuz26 root=/dev/disk/by-uuid/d531ff5b-de65-499a-9942-d18682375163 init=/sbin/bootchartd initrd /kernel26.img

Grub 2 中的添加方法

打开/boot/grub/grub.cfg ,复制原来的引导区域并按照下面的范例修改之:

# (0) Arch Linux menuentry "Arch Linux" { set root=(hd0,1) linux /boot/vmlinuz26 root=/dev/sda1 ro initrd /boot/kernel26.img } # (1) 带bootchartd 的Arch Linux 引导项 menuentry "Arch Linux with Bootchart" { set root=(hd0,1) linux /boot/vmlinuz26 root=/dev/sda1 ro init=/sbin/bootchartd initrd /boot/kernel26.img }

然后你就可以重启,并选择代bootchart 选项的启动项了。

rc.sysinit 脚本中的设置方法

这种方法有一定的危险性(可能导致原有系统无法启动),所以除非前一种方法失败,否则不要用这种方法。采用这种方式,不光是每次都要手动停止bootchart (否则很快就会占满硬件资源),而且每次开机都会运行一次,而且以后每次软件包升级 /etc/rc.sysinit 的时候,这些设置都会被覆盖掉。

另一方面,这种方式是可以让你看到登录后所发生的一些东西的。

编辑/etc/rc.sysinit 脚本,先将下面这一行添加到/etc/rc.sysinit

/sbin/bootchartd start

这一行不宜太靠前,否则这部分出问题会导致系统无法启动。当然也不宜太靠后,因为他之前的项目都无法观察得到。 我们推荐把他放在配置系统时钟行的前面。找到如下行:

stat_busy "Configuring System Clock"

将下面这一行添加到其前面:

/sbin/bootchartd start

生成bootchart 文件

在使用bootchart 启动以后,我们要做的就是使用相关命令,生成一个适合查看的图片文件。具体的生成步骤如下:

1. 登录后关闭 bootchartd 服务

这种方式一定记住,在登录后停止bootchartd 服务。你可以以管理员帐户执行

/sbin/bootchartd stop

也可以用sudo 通过下面的命令来执行:

sudo /sbin/bootchartd stop
2. 生成分析结果图表

你可以通过运行下面的命令来生成分析结果图:

bootchart -o 目录名 -f 文件格式

确保运行命令的目录有写权限,程序就会生成一个名为'bootchart.svg' 的图像,这就是分析结果图。当然如果你跟了 -f ,指定格式后,就会生产相应格式的图像文件。

你需要事先安装Java 运行环境并且在此之前设置正确。

Bootchart 命令常用的参数介绍:

-f,--format <format> 指定文件格式 (png | eps | svg; default: png)

-h,--help 打印帮助信息

-o,--output-dir <dir> 指定文件输出到那个目录下,默认是当前目录

-v,--version 打印帮助信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值