Bootchart
Bootchart 是一个方便的工具,用于分析 Linux 启动序列,通常用于加快计算机启动速度。它由 bootchartd 守护进程组成,该守护进程记录并呈现分析数据的图表。
安装
安装 bootchartAUR 软件包。
用法
要使用 bootchart,您必须将其设置为启动引导程序中的 init 进程。请注意,如果您手动启动 bootchartd,则也必须手动停止它。通常,对此步骤要格外小心。
启动引导程序设置
这通常涉及复制您要分析的启动选项,并在其中添加 init=/usr/bin/bootchartd
。请参阅内核参数以获取说明。从启动引导程序启动时,bootchart 将在您到达登录提示符时停止。
生成图表
生成启动图表涉及在您具有写入权限的文件夹中运行 bootchart-render
。这将生成一个包含图表的 bootchart.png
图像。您必须安装并正确设置 Java 运行时才能执行此操作。
故障排除
Bootchart-render 无法生成 bootchart.png
图像并显示错误消息
/var/log/bootchart.tgz not found
这通常意味着 bootchartd 无法检测到启动过程何时完成。当您使用与 GDM 不同的登录管理器(例如SLiM 或 entrance)时,可能会发生这种情况。您必须打开 /usr/bin/bootchartd
脚本并将这些应用程序附加到 exit_proc
变量,例如
# The processes we have to wait for local exit_proc="gdmgreeter gdm-binary slim"
如果您不使用登录管理器,请按以下方式编辑 exit_proc
变量
# The processes we have to wait for local exit_proc="login"
示例启动图
5 秒内启动
这篇文章非常棒,并且与一堆启动图一起提供了一些关于如何更快启动的技巧。尽管其中一些改进超出了普通用户的能力范围(修补 X.org、内核等)。
Bootchart2
运行 Bootchart2
启动引导程序设置
这通常涉及复制您要分析的启动选项,并在其中添加 initcall_debug printk.time=y init=/usr/bin/bootchartd2
。请参阅内核参数以获取说明。从启动引导程序启动时,bootchart2 将在默认 120 秒后停止,或者在您到达登录提示符时停止(相反)。请注意,Bootchart2-git 也可以作为 systemd 服务运行,如改善启动性能#使用 bootchart2中所述
bootchart2.service
来自 AUR 的 bootchart2AUR 软件包附带一个未记录的 systemd 服务。安装 bootchart2 后,启用 bootchart2.service
。
您可以通过打开 /var/log/bootchart.png
来可视化结果,或者如果您想要更多功能,请启动
$ pybootchartgui -i
阅读 bootchart2 文档以获取有关使用此版本 Bootchart 的更多详细信息。
配置 Bootchart2
登录后停止 Bootchartd2
可以调整 Bootchart2 配置文件
/etc/bootchartd2.conf
EXIT_PROC="xterm konsole gnome-terminal metacity mutter compiz ldm icewm-session enlightenment"
也可以将其留空,以便手动停止日志记录,而不是在预定的程序启动时停止。
生成图表
使用 Bootchart2 与使用 Bootchart Legacy 一样简单:启动后,运行
$ pybootchartgui -i
以获得交互式图表渲染工具。有关更多信息,请参阅Gentoo:Bootchart2。