最近Ubuntu系统使用了一段时间以后,发现系统启动变慢,刚装完系统的时候启动大概半分钟,现在发现启动时间感觉快1分钟了,于是决定调查一下。
首先Google一下,发现网上希望加速Ubuntu启动的帖子也不少,首先推荐的是一个叫bootchart的工具,它可以记录Ubuntu系统的启动过程,还提供图形化的显示,于是就安装一个:
dev@devhost:~$ sudo apt-get install bootchart
|
装完以后重启机器
系统重启以后到 /var/log/bootchart/下查看,发现有一个.gz文件和.png图片,.gz文件解开后发现是对disk,process等统计,数据比较抽象,不好懂,于是打开.png文件查看:
大体上可以看出,启动过程有三个主要的部分:
1)0~15秒:是IO密集,CPU相对空闲的阶段;从下面对应的进程描述来看又mountall,fsck这样的东东,估计是内核在mount文件系统和磁盘检测等;
2)15~35秒:是IO空闲,CPU也空闲的阶段;在下面看到主要是ifup,bridge,ifconfig这样的东西,估计是在做跟网络相关的东西,这段时间居然要20秒(说明一下,我是在笔记本上做的,还有无线等设备);
3)35~55秒:是IO开始又变得密集,CPU也密集的阶段,这阶段出现的东西很多,有网络管理服务,登录服务和桌面等等
同时,我又用dmesg命令看了一下,从时间上基本可以印证上述3个阶段做的事情:
[ 2.275412] EXT4-fs (sda7): mounted filesystem with ordered data mode. Opts: (null)
[ 11.478634] Adding 4083708k swap on /dev/sda5. Priority:-1 extents:1 across:4083708k
[ 11.526044] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 11.639571] udevd[479]: starting version 175
[ 11.762504] lp: driver loaded but no devices found
[ 12.072290] EXT4-fs (sda7): re-mounted. Opts: errors=remount-ro
|
第2秒倒12秒跟mount有关;
[ 14.814577] br0: port 1(eth0) entered listening state
[ 14.814587] br0: port 1(eth0) entered listening state
[ 23.797215] br0: port 1(eth0) entered learning state
[ 32.800776] br0: topology change detected, propagating
[ 32.800805] br0: port 1(eth0) entered forwarding state
|
第14秒倒32秒跟网络又关,而且是跟我设置的br0(网桥,我用来实验虚拟机网络的)有关。
于是,我又暂时去掉了网桥,再次启动后发现第2阶段的时间如下:
[ 11.526044] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
…
[ 16.317051] r8169 0000:04:00.0: >eth0: link up
|
也就是说不用网桥,网络起来秩序要不到5秒钟。
因此我最近Ubuntu系统启动显然是由于设置了网桥造成的。
另外,还了解到,如果需要进一步缩减启动时间,那么:
1.使用SSD硬盘;
剩下的为了减少第1阶段和第3阶段IO密集型的操作,主要瓶颈在disk的IO读写上,因此只有更换SSD硬盘才有好的效果;
2.可以安装 bum工具来管理服务,禁用一些不需要的服务(但是要小心,万一禁掉一些系统必须的服务,可能会导致系统不能启动)。
分享到:
相关推荐
Ubuntu12.10 一些日常使用操作说明,适合新手查看。
ubuntu12.10操作系统下载
讲解了ubuntux12.10xia像在windows下一样安装QQ
根据Ubuntu 12.10 发布进程,Ubuntu 12.10 Beta 1 已经发布,主要更新特性有Unity、主题、Firefox、LibreOffice、Ubuntu One等。 Ubuntu 12.10 正式版特性: 采用了新的 Linux 3.5 内核 一些I/O和安全方面的改进...
根据Ubuntu 12.10 发布进程,Ubuntu 12.10 Beta 1 已经发布,主要更新特性有Unity、主题、Firefox、LibreOffice、Ubuntu One等。 Ubuntu 12.10 正式版特性: 采用了新的 Linux 3.5 内核 一些I/O和安全方面的...
手把手教你怎么在VMware中安装Ubuntu操作系统。
Ubuntu12.10菜鸟使用手册合集。作者用心记录了Ubuntu12.10的基本使用方法。
Ubuntu 12.10 菜鸟使用手册合集下载.pdf
Ubuntu12.10菜鸟使用手册(三)
之前Ubuntu12.10的触摸板总是不灵,在网上查到了重置触摸板的命令,然后自己用shell写的一个脚本.输入./repsmouse可以直接运行。 如果想不输入./运行的话,在文件目录里输入命令: sudo cp repsmouse /bin/ 就可以了...
Ubuntu12.10 菜鸟使用手册(一) 最新的ubuntu 大家尽情玩吧
Ubuntu12.10 菜鸟使用手册(二) 菜鸟专用
ubuntu12.10菜鸟使用手册(二)
ubuntu12.10菜鸟使用手册(一)
VMware9安装Ubuntu 12.10图文详细教程
Ubuntu12.10下安装SimpleScalar.pdf
ubuntu 12.10的MAC美化包,个人经典保藏
U盘安装ubuntu12.10全过程详细图解.pdf
How to set ibus on Ubuntu 12.10
个人整理的使用ubuntu12.10 下载 x86平台下载android源码的方法.附件中包含2013年9月下载下来的最新repo 版本1.19