如何检查 Ubuntu 安装是否已从以前的版本升级

Sol*_*lko 3 upgrade do-release-upgrade

有没有办法甚至命令来检查安装是否已从以前的版本升级?我有一些服务器,我知道已经从 8.04 升级到 12.04,但在升级到 14.04 时遇到问题,我想知道这些机器的问题是否与遵循升级路径有关。

如果可以发现这一点,我将更容易确定是否应该为无法升级的服务器进行全新安装。

Rin*_*ind 8

我怀疑是否有完美的方法。一种方法可能是检查文件系统的创建日期:

 sudo tune2fs -l /dev/sda1  | grep 'Filesystem created:'
 Filesystem created:       Thu Mar  5 15:51:50 2015
Run Code Online (Sandbox Code Playgroud)

我拉这个的系统是2015年3月5日创建的。当然完全可以在3月5日安装14.10然后升级到15.04,所以没有完美的方法。

自从 ...

cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=15.04
DISTRIB_CODENAME=vivid
DISTRIB_DESCRIPTION="Ubuntu 15.04"
Run Code Online (Sandbox Code Playgroud)

系统是 15.04 我认为它是安装版本而不是升级版本。事后看来:3 月 5 日可能是 15.04 冻结的那一天(?)


您还可以检查...

/var/log/dist-upgrade/

total 212
-rw-r--r-- 1 root root   1786 apr 24  2015 apt.log
-rw-r----- 1 root adm  169074 apr 24  2015 apt-term.log
-rw-r--r-- 1 root root  33191 apr 24  2015 history.log
-rw-r--r-- 1 root root      0 apr 24  2015 main.log.partial
-rw-r--r-- 1 root root      0 apr 24  2015 term.log
Run Code Online (Sandbox Code Playgroud)

history.log会有很多信息。不过,该文件可能会在您的系统上被清除,但如果存在,则会显示它是否是升级。

如果日志仍然存在,它们可以显示,例如在从 12.04 升级的系统中:

$ grep lsb-release: /var/log/dist-upgrade/main.log
2015-03-14 10:18:36,284 DEBUG lsb-release: 'precise'
Run Code Online (Sandbox Code Playgroud)