linux启动时间优化

在本文中,我们将向您展示如何使用systemd-analyze来分析Linux系统启动性能统计信息,systemd-analyze是systemd下用于系统管理的众多实用程序之一。

要大致了解系统启动时间,我们可以运行systemd-analyze命令,不带任何参数,如下所示。它将列出有关每个服务启动所需时间的信息,包括启动时内核,initrd和用户空间所花费的时间。

# systemd-analyze

Startup finished in 884ms (kernel) + 3.861s (initrd) + 48.356s (userspace) = 53.102s

如果要查看每个启动单元所花的启动时间,请使用blame参数。运行以下命令后,使用[Enter]查看列表中的更多获取按q退出。

 # systemd-analyze blame

 

         17.729s snapd.service
         17.077s nv.service
         14.437s NetworkManager.service
         14.206s udisks2.service
         10.990s networking.service
         10.025s accounts-daemon.service
          8.308s polkit.service
          1.967s grub-common.service
          1.963s dev-mmcblk0p1.device
           572ms apport.service
           552ms nvfb-early.service
           547ms ssh.service
           493ms resolvconf-pull-resolved.service
           480ms systemd-udev-trigger.service
           456ms systemd-logind.service
           451ms wpa_supplicant.service
           403ms nvphs.service
           384ms keyboard-setup.service
           375ms systemd-timesyncd.service
           336ms systemd-resolved.service
           331ms rsyslog.service
           281ms lightdm.service
           279ms ubuntu-fan.service
           277ms systemd-journald.service
           274ms nvfb.service
           236ms speech-dispatcher.service
           226ms systemd-udevd.service
           221ms kerneloops.service
           201ms user@1000.service
           193ms avahi-daemon.service
           167ms snapd.seeded.service
           150ms systemd-fsck@dev-sda8.service
           140ms systemd-tmpfiles-setup-dev.service
           133ms pppd-dns.service
           111ms rpcbind.service
           108ms setvtrgb.service
           100ms systemd-random-seed.service
            96ms dns-clean.service
            95ms systemd-tmpfiles-setup.service
            88ms nvpmodel.service
            83ms systemd-sysctl.service
            77ms resolvconf.service
            73ms systemd-update-utmp.service
            72ms systemd-user-sessions.service
            66ms containerd.service
            65ms media.mount
            63ms plymouth-read-write.service
            61ms home-user-root.mount
            60ms systemd-remount-fs.service
            58ms dev-hugepages.mount
            54ms dev-mqueue.mount
            49ms systemd-modules-load.service
            46ms run-rpc_pipefs.mount
            46ms systemd-fsck@dev-sda1.service
            46ms systemd-update-utmp-runlevel.service
            44ms sys-kernel-config.mount
            36ms sys-kernel-debug.mount
            35ms console-setup.service
            33ms systemd-journal-flush.service
            24ms nfs-config.service
            16ms snapd.socket
            13ms plymouth-quit-wait.service
            10ms docker.socket

从上面的输出中可以看到,每个单元都是基于花费的时间进行排序的,您可以简单地找出启动时哪个服务花费更长的时间并分析问题。

 

最后,让我们看一个更重要的子命令,该子命令允许生成已启动的系统服务的图形化(svg格式)详细信息,并在何时突出显示其初始化时间,如下所示。

# systemd-analyze plot > boot_analysis.svg

 

由于systemd的单元很多是并行启动的,这样可以更好的分析系统启动时在哪里耗费了更多的时间。

 

如果要通过ssh从远程主机查看信息,请使用该-H标志并指定username @ host指令。

# systemd-analyze time -H tecmint@192.168.56.5
# systemd-analyze blame -H tecmint@192.168.56.5
# systemd-analyze critical-chain -H tecmint@192.168.56.5
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值