我总是很想知道关于 Linux 的小有趣的事情。 今天,我的脑海里突然冒出一个问题。 我使用 Arch Linux 操作系统有多久了? 我不知道我什么时候安装了我的 Arch Linux。 自安装以来,它运行良好。 我敢肯定那是一年前的事了。 但是,我不知道确切的日期。 你有没有想过你在没有重新安装的情况下使用 Linux 操作系统有多久了? 继续阅读以查找 Linux 操作系统的确切安装日期和时间。
查找准确的 Linux 安装日期和时间
有几种方法可以找到 Linux 操作系统的安装日期和时间。 在这里,我给出了所有可能的方法。
使用 stat 命令
这 stat
命令显示 Linux 和类 Unix 系统中的文件或文件系统状态。 Stat 命令是 GNU 核心工具 包,所以你不需要安装它。
检查 Linux 操作系统的安装日期 stat
命令,只需运行:
$ stat / | grep "Birth" | sed 's/Birth: //g' | cut -b 2-11 2021-05-20
你也可以使用 awk
和 stat
命令也显示 Linux 安装日期:
$ stat / | awk '/Birth: /{print $2}' 2021-05-20
没有必要使用 grep
或者 sed
或者 awk
命令。 Stat 命令还有一个内置标志来检查确切的 Linux 安装日期和时间。
$ stat -c %w / 2021-05-20 17:31:10.000000000 +0530
正如您在上面的输出中看到的,我的安装日期和时间 Fedora Linux 桌面是 2021 年 5 月 20 日。
在 Arch Linux 上分析 pacman 日志
如果你使用 Arch Linux 及其衍生物,如 EndeavourOS 和 Manjaro Linux,您可以通过分析 吃豆人 日志如下所示。
$ head -n1 /var/log/pacman.log
我的 Arch Linux 系统的示例输出:
[2016-05-05 13:10] [PACMAN] Running 'pacman -r /mnt -Sy --print-format=%s --cachedir=/mnt/var/cache/pacman/pkg --noconfirm base sudo grub wireless_tools wpa_supplicant wpa_actiond netctl dialog os-prober'
正如您在上面看到的,我仍在使用我的第一次安装 2016 年 5 月 5 日.
尽管 Arch Linux 是滚动发布模型,但我从未需要重新安装 Arch Linux。 它工作得很好,不会破坏任何东西。 这些年来,我拥有 3 个 Arch Linux 系统(一个主机和两个 vm),而且我从来没有“重新安装”过一次。 而且,我确信我不会很快重新安装它。
检查基于 Debian 的系统上的 syslog 条目
在 Debian、Ubuntu 和其他基于 DEB 的系统上,查看 "syslog"
获取 Linux 操作系统安装日期和时间的条目
$ sudo head -n1 /var/log/installer/syslog
样本输出:
Jul 2 10:29:10 ubuntu systemd[1]: Starting Flush Journal to Persistent Storage...
如果日志已经被删除了怎么办? 没问题。 您仍然可以通过验证文件系统创建日期来找出 Linux 操作系统的安装时间,如下节所示。
检查文件系统创建日期
如前所述,有时,您可能已经删除了日志(或启用了日志轮换)。 在这种情况下,您可以找到如下所示的安装日期。
切换到 root
用户:
$ sudo su
现在,运行以下任一命令 root
用户。
# fs=$(df / | tail -1 | cut -f1 -d' ') && tune2fs -l $fs | grep 'Filesystem created'
或者,
# tune2fs -l /dev/sda1 | grep 'Filesystem created:'
或者,
# dumpe2fs /dev/sda1 | grep 'Filesystem created:'
代替 /dev/sda1
具有正确的硬盘驱动器分区。
它将显示文件系统最初创建的时间。
样本输出:
Filesystem created: Thu May 20 17:31:06 2021
这些命令适用于所有支持的 Linux 发行版 ext4
文件系统。
使用基本系统
Basesystem 定义了一个基本的组件 Fedora 系统(对于 example,在引导期间使用的包安装顺序)。 Basesystem 应该在系统的每个安装中,并且永远不应该被删除。
在 Fedora, RHEL 及其克隆,例如 中央操作系统, AlmaLinux, 和 洛基 Linux,您可以使用以下命令查找 Linux 安装日期:
$ sudo rpm -qi basesystem
样本输出:
Name : basesystem Version : 11 Release : 11.fc34 Architecture: noarch Install Date: Friday 23 April 2021 04:26:31 PM Group : Unspecified Size : 0 License : Public Domain Signature : RSA/SHA256, Tuesday 26 January 2021 07:17:35 AM, Key ID 1161ae6945719a39 Source RPM : basesystem-11-11.fc34.src.rpm Build Date : Tuesday 26 January 2021 07:15:29 AM Build Host : buildhw-x86-04.iad2.fedoraproject.org Packager : Fedora Project Vendor : Fedora Project Bug URL : https://bugz.fedoraproject.org/basesystem Summary : The skeleton package which defines a simple Fedora system Description : Basesystem defines the components of a basic Fedora system (for example, the package installation order to use during bootstrapping). Basesystem should be in every installation of a system, and it should never be removed.

或者,要仅显示安装日期,请运行以下命令:
$ sudo rpm -qi basesystem | grep Install Install Date: Friday 23 April 2021 04:26:31 PM
或者使用这个命令:
$ sudo rpm -q basesystem --qf '%{installtime:date}n' Friday 23 April 2021 04:26:31 PM
使用安装日期脚本
有一个脚本名为 安装日期,用于确定 Linux 安装的安装日期,使用各种方法。 它目前仅适用于 Arch Linux 和 Gentoo 系统。
前往 安装日期 GitHub 上的存储库并使用以下命令下载脚本:
$ wget -O installdate.sh https://raw.githubusercontent.com/alicela1n/install-date/main/install-date
当心 -O
选项。 它必须是大写的。
使脚本可执行:
$ chmod +x installdate.sh
现在运行脚本来确定 Arch Linux 安装的日期和时间:
$ ./installdate.sh 2021-06-01
这些是查找 Linux 发行版的确切安装日期和时间的几种方法。 希望这可以帮助。