Linux服務器開機時間查詢方法大全
本文主要介紹Linux服務器開機時間查詢方法大全,闡述如何查看開機時間及各種方法的優缺點。從系統自帶命令到第三方軟件,不同的方法適用于不同場景。
1、系統自帶命令查詢
Linux系統下有許多可以查詢開機時間的命令,其中最常用的是`uptime`和`who -b`。`uptime`命令可以顯示系統運行時間、負載平均值等信息,其中`up`表示系統運行時間,單位為天、小時和分鐘。例如:
~$ uptime19:58:16 up 2:08, 2 users, load average: 0.00, 0.00, 0.00這個系統的運行時間為2小時08分。
`who -b`則可以顯示系統的啟動時間:
~$ who -b system boot 2021-07-01 20:43這個系統的啟動時間為2021年7月1日20點43分。
這兩個命令都是系統自帶的中國服務器延時時間分布情況及解決方案,使用方便,但缺點是只能顯示系統總運行時間和啟動時間,并不能詳細地了解系統開機的過程。
2、查看/var/log/dmesg日志文件
/var/log/dmesg包含了系統啟動時內核打印的信息,其中也包含了開機時間。可以使用如下命令查看:
~$ cat /var/log/dmesg grep "booted"[ 0.000000] tsc: Fast TSC calibration failed [ 0.000000] ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled) [ 0.000000] NR_IRQS:4352 nr_irqs:512 16 [ 0.000000] Console: colour VGA+ 80x25 [ 0.000000] bootconsole [earlyser0] enabled [ 0.036004] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) [ 0.042128] CPU1: Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz stepping 0a [ 0.042128] boot_id: 06f872d6260e4cf881bfdc65a19ba92d [ 4.048456] systemd[1]: Started Load Kernel Modules.其中`boot_id` 后面的一串數字就是系統的啟動ID,使用下面的命令可以將其轉換成正常的日期格式:
~$ systemd-analyze times grep "boot" Startup finished in 4.362s (firmware) + 5.023s (loader) + 6.978s (kernel) + 1.413s (userspace) = 18.777s system-efi-boot\x2d8f8d0203\x2d83f5\x2d440c\x2d9c4c\x2d63c73213f3b1.service loaded active exited EFI System Partition Mount\x2d2.mount system-efi-boot\x2d8f8d0203\x2d83f5\x2d440c\x2d9c4c\x2d63c73213f3b1.swap loaded active waiting /boot/efi.mount systemd-hostnamed.service loaded active running Hostname Service systemd-localed.service loaded active exited Locale Service systemd-timesyncd.service loaded active running Network Time Synchronization systemd-tmpfiles-setup.service loaded active exited Create Volatile Files and Directories systemd-update-utmp.service loaded active exited Update UTMP about System Boot/Shutdown systemd-user-sessions.service loaded active exited Permit User Sessions user@1000.service loaded active running User Manager for UID 1000 systemd-update-utmp-runlevel.service loaded inactive dead Update UTMP about System Runlevel Changes system-boot.mount loaded active mounted /boot.mount system-systemd\x2dfsck.slice loaded active active system-systemd\x2dfsck.slice systemd-fsck-root.service loaded active exited File System Check on Root Device systemd-fsck@dev-disk-by\x2duuid-56C1\x2d064F.service loaded inactive dead File System Check on /dev/disk/by-uuid/56C1-064F system.slice loaded active active system.slice user.slice loaded active active user.slice system-serial\x2dgetty.slice loaded active active system-serial\x2dgetty.slice getty@tty2.service loaded active running Getty on tty2 getty@tty1.service loaded active running Getty on tty1 getty@tty3.service loaded active running Getty on tty3 getty@tty4.service loaded active running Getty on tty4 getty@tty5.service loaded active running Getty on tty5 getty@tty6.service loaded active running Getty on tty6 graphical.target loaded active active Graphical Interface multi-user.target loaded active active Multi-User System system-getty.slice loaded active active system-getty.slice -.slice loaded inactive dead -.slice system-efi-bootx2d8f8d0203x2d83f5x2d440cx2d9c4cx2d63c73213f3b1.device loaded active plugged EFI System Partition -.mount loaded inactive dead -.mount systemd-remount-fs.service loaded inactive dead Remount Root and Kernel File Systems systemd-sysctl.service loaded active exited Apply Kernel Variables systemd-udev-trigger.service loaded inactive dead udev Coldplug all Devices sysroot.mount loaded active mounted /sysroot可以看到,這個系統的啟動時間為18秒777毫秒,啟動時間為2021-07-09 22:31:32。
這種方法可以獲取更多的開機信息,但需要查看日志文件,比較麻煩。
3、使用開機時間記錄腳本
用戶可以在系統啟動時使用腳本,將系統啟動時間記錄到指定文件中。例如:
#!/bin/bashecho "boot_time=`date`" > /var/log/boot_time這個腳本會在系統啟動時將當前的日期時間記錄到`/var/log/boot_time`文件中。用戶只需要在需要查詢開機時間時查看該文件即可。
這種方法的優點是方便快捷,并且可以記錄更多的啟動信息。但需要提前編寫腳本并設置開機自啟動。
4、使用第三方工具
還有一些第三方工具可以幫助用戶查詢開機時間,例如`lshw`、`inxi`等系統信息獲取工具。
~$ sudo lshw -html > system.html~$ inxi -S System: Host: desktop Kernel: 5.8.0-38-generic x86_64 bits: 64 Desktop: Cinnamon 4.8.6`lshw`可以生成系統的硬件信息報告,并且包括系統啟動時間等信息。`inxi`則可以快速獲取系統的概要信息,包括啟動時間。
這種方法功能強大,但需要安裝第三方工具,并且了解工具的使用方法。
總結:
Linux系統提供了多種方式幫助用戶查詢開機時間,使用的方法取決于使用場景和個人喜好。系統自帶命令方便易用,適合簡單的查詢需求。查看`dmesg`日志文件則可以獲取更多的開機信息。使用開機時間記錄腳本可以記錄更詳細的啟動信息,但需要編寫腳本并設置開機自啟動。第三方工具則可以功能更加強大,并且可以獲取更多系統信息。
無論使用哪種方法,重要的是能夠了解系統的啟動情況,并且及時發現問題。