当前位置: 首页>>技术问答>>正文


我怎么知道Ubuntu的安装日期?

, , ,

问题描述

是否有一个命令会输出ubuntu(或任何发行版)的安装日期?

最佳解决方法

您可以在以下位置查看安装程序日志和日期:

/var/log/installer

通过命令行查找日期的快速方法是运行:

ls -lt /var/log/installer

它按逆时间顺序列出,因此最早的文件位于列表的底部。

次佳解决方法

如果你使用ext2 /ext3 /ext4并在安装时格式化了磁盘,你可以做这个漂亮的技巧。

sudo dumpe2fs /dev/sda1 | grep 'Filesystem created:'

您可能需要更改/dev/sda1以反映您的设置。

因为升级包可能已经替换了文件并创建了新的”creation time”,所以即使”creation time”(mtime)也会在文件的日期中继续发生错误。

类似的工具和信息也可能在其他文件系统上可用,但我不知道它们。

第三种解决方法

唯一能为我工作的命令是 –

sudo ls -alct /|tail -1|awk '{print $6, $7, $8}'

第四种方法

我也不知道具体的命令或文件。我使用一些启发式来查找安装日期:

for dir in {/etc,/usr,/lib}; do
  sudo find $dir -type f -exec stat -c %z {} \; | \
    sed -e 's,-,,g' -e 's, .*,,' | sort | uniq -c | sort -nr -k 2 | \ 
    grep -Ev " [0-9]?[0-9] "
done

这个小脚本在/etc/usr中查找文件并打印出最后一次更改的日期。它会进行一些重新格式化,并列出按日期排序的事件(最新的第一个)。通常最旧的条目是安装日期。

这假设在安装后保持不变。这在大多数情况下(根据我的观察)是正确的,但在特殊情况下,它也可能给出错误的结果。

第五种方法

如果安装时间最近,请查看/var/log下的最旧条目,但几周后,日志将被旋转。

另一件要注意的是根文件系统上文件的最早ctime;但是如果在目录树级别复制了整个安装(例如从失败的磁盘中恢复),则会为您提供复制的日期。

如果启发式设计足够好,请查看安装期间创建的文件的日期(mtime),此后不太可能进行修改。一个好的候选人是/etc/hostname;其他候选人是/etc/hosts/etc/papersize/etc/popularity-contest.conf

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/496.html,未经允许,请勿转载。