`
Michaelmatrix
  • 浏览: 222377 次
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

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" 。如下例:

Grub 2 中的添加方法

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

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

rc.sysinit 脚本中的设置方法

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

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

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

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

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

生成bootchart 文件

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

1. 登录后关闭 bootchartd 服务

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

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


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 打印帮助信息

分享到:
评论

相关推荐

    android开机启动速度优化

    其中,Bootchart是一个性能分析工具,能够在Linux启动过程中搜集数据并将其可视化,以图形的方式展示出来,帮助开发者分析启动时间的分布。Printk打印是另一个重要的工具,它能记录内核中发生事件的时间戳,有助于...

    Arm-linux 自定义开机启动程序,避开从桌面启动

    本文将详细介绍如何在Arm-Linux环境下设置自定义开机启动程序,并避免启动系统携带的桌面环境。 #### 二、实现步骤 ##### Step1: 拷贝工程到根目录下 首先,需要将UI工程拷贝到系统根目录下。可以在`/root`目录下...

    linux中mysql开机自动启动3种方法.docx

    chkconfig 是 Linux 系统中的一个工具,用于管理系统服务的启动和停止。我们可以使用以下命令将 MySQL 服务添加到系统启动项中: ``` cp /usr/local/mysql5/share/mysql/mysql.server /etc/init.d/mysqld chkconfig...

    基于Qt的开机自启动(二)(Linux)

    在Linux中,开机自启动通常涉及到`/etc/rc.d`或`/etc/init.d`目录下的脚本,或者在现代的Systemd系统中,是通过`/etc/systemd/system`目录下的服务单元文件(service unit file)来完成的。针对Qt应用程序,我们需要...

    android和Arm启动流程分析工具bootchart(已编译为android版本)

    总之,Bootchart是Android和ARM设备启动流程分析的强大工具,它的使用可以帮助我们更好地理解和改进系统性能,提升用户的开机体验。通过细致的分析和不断的优化,我们可以让设备以更快的速度迎接每一次的开启。

    springboot项目linux系统下 通用 启动脚本

    springboot项目linux系统下 通用 启动脚本 支持日志输出、远程调试开启 支持start、stop、restart命令 通用启动脚本,只需将服务名改成自己的服务名即可! 保证可用!

    linux启动时间优化

    本文将深入探讨如何优化Linux系统的启动时间,并提供一系列实用的技术和工具,帮助用户缩短启动过程。 #### 一、什么是快速启动(Fast Boot) 快速启动指的是最小化系统启动所需的时间。系统启动时间是指从电源...

    bootchart-0.9.zip

    **Linux系统启动过程详解与Bootchart工具应用** 在Linux操作系统中,系统启动是一个复杂而关键的过程,涉及到内核加载、初始化、驱动程序加载、服务启动等多个环节。了解启动过程对于优化系统性能,尤其是缩短启动...

    Linux系统的开机画面.pdf

    Linux系统的开机画面是指在Linux系统启动时显示的界面,包括字符信息和自定义的开机画面。本文将详细介绍Linux系统的虚拟控制台和帧缓冲区机制,并分析隐藏Linux系统开机字符信息和显示自定义开机画面的方法。 ...

    linux开机自动启动es.txt

    linux开机自动启动es脚本,亲测有效

    Linux 添加系统服务、设置开机启动、设置启动顺序、chkconfig.docx

    本文详细介绍了 Linux 系统服务管理和配置的相关知识点,包括 chkconfig 命令的使用、系统服务的添加、删除、启动和关闭、服务启动顺序的配置等。 一、chkconfig 命令 chkconfig 命令是 Red Hat 公司开发的一款 ...

    Linux下WebLogic开机启动设置

    你可以使用`chkconfig --add weblogic`命令将服务添加到启动列表,并使用`chkconfig weblogic on`使其在特定运行级别下启动。 此外,为了确保WebLogic日志的自动备份,脚本中包含了一个检查和移动旧日志的逻辑。当...

    debianlinux系统开机启动项管理.pdf

    Debian Linux 系统开机启动项管理 Debian Linux 系统的开机启动项管理是指在系统启动时,执行各种初始化和设置操作的过程。该过程涉及到多个关键脚本和配置文件,以下是 Debian Linux 系统开机启动项管理的知识点...

    Linux jar包开机启动

    Linux jar包开机自启脚本 ,更改linux的jdk目录 更改jar包名即可,然后在rc.local添加此脚本位置

    最简单linux配置tomcat开机启动

    找了半天,linux配置tomcat开机启动的教程,太麻烦了,自己总结出一套简单有效的方法,分享一下

    Linux 配置 tomcat 开机启动.txt

    ### Linux 下配置 Tomcat 开机启动 #### 概述 本文档主要介绍如何在 Linux 系统中配置 Apache Tomcat 服务器实现开机自动启动。通过编写一个简单的 Bash 脚本,并将其设置为系统服务的方式,可以确保 Tomcat ...

    linux下设置开机自动启动程序.doc

    本文档详细介绍了在 Linux 系统中设置开机自动启动程序的方法。包括在 /etc/rc.d/rc.local 中增加启动命令、将 apache 注册为系统服务、在 Red Hat Linux 中自动运行程序、登录时自动运行程序、退出登录时自动运行...

    Android/Linux开机过程可视化分析工具-bootchart.jar

    该文件用于分析用于Android/Linux系统启动过程分析,转换数据为SVG/PNG图片以查看开机过程中各程序的启动顺序和系统资源分布情况

    Linux开机启动程序rc.local1

    总的来说,rc.local是Linux系统中一种传统的开机启动配置方式,尽管在某些情况下已被systemd取代,但它仍然是一个有效的工具,尤其是对于那些希望快速设置开机启动脚本的用户而言。了解rc.local的工作原理和使用技巧...

Global site tag (gtag.js) - Google Analytics