is there a command which will output the date that ubuntu (or any distribution) was installed?
You can check the installer logs and dates at:
/var/log/installer
A quick way to find the date through the command line would be by running:
ls -lt /var/log/installer
That lists in reverse chronological order so the oldest file is at the bottom of the list.
-
1
-
On my system, I have 7 files under /var/log/installer/ . I installed from 9.10, and later updated to 10.04. – Stefan Lasiewski Aug 10 '10 at 0:34
-
I do also have this folder on my (freshly installed) 10.04 system and the creation dates of those files give me the install date. The file /var/log/installer/media-info for example contains the information about the installation media that was used for the install. – Marcel Stimberg Aug 10 '10 at 12:29
-
1On my system that was installed originally with 7.10,
/var/log/installer/version
has a date of 2007-10-30, so this seems to be quite reliable... – JanC Oct 21 '10 at 3:02 -
11
If you use ext2/ext3/ext4 and formatted the disk when you installed you can do this nifty trick.
sudo dumpe2fs /dev/sda1 | grep 'Filesystem created:'
You might have to change the /dev/sda1
to reflect your setup.
Relaying on the date of files, even the "creation time" (mtime) can give errors since upgrading packages might have replaced the file and made a new "creation time".
Similar tools and info might be available on other file systems as well, but I don't know of them.
-
When I do this I get the error
dumpe2fs: Bad magic number in super-block while trying to open /dev/sda1
– king_julien Apr 2 '14 at 20:28 -
@king_julien Are you sure that your /dev/sda1 is your systems root partition? It may be different on your install, in fact the filesystem type may be an other than what is supported by dumpe2fs! – LassePoulsen Apr 2 '14 at 21:36
-
Thanks, I got it now. It was
/dev/sda2
. On/dev/sda1
I have/boot/efi
. – king_julien Apr 3 '14 at 18:36 -
3You can use a more general but a little complicated command: sudo dumpe2fs $(mount | grep 'on / ' | awk '{print $1}') | grep 'Filesystem created:' – Aram Paronikyan Jun 8 '16 at 12:10
-
2You could use the
-h
option so you at least only get the superblock info which should be more than enough. – Alexis Wilke Sep 25 '16 at 21:43
the only command that worked for me is -
sudo ls -alct /|tail -1|awk '{print $6, $7, $8}'
I also don't know of a specific command or file. I'm using some heuristics to find the installation date:
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
This small script looks for files in /etc
and /usr
and prints out the last changed date. It does some reformatting and lists the occurrences sorted by date (newest first). Usually the oldest entry is the installation date.
This assumes that after an installation are left unchanged. This is in most cases (according to my observation) true, but in special cases it can also give wrong results.
-
1tried it on /etc only (faster), the date was the same as from the dumpe2fs solution, so for me it worked well! – eik3 Feb 28 '14 at 15:52
If the installation is recent, look at the oldest entries under /var/log
, but after a few weeks the logs will have been rotated away.
Another thing to look at is the oldest ctime of a file on the root filesystem; but if the whole installation has been copied (e.g. rescued off a failing disk) at the directory tree level, this gives you the date of the copy.
If a heuristic is good enough, look at the date (mtime) of a file that was created during the installation and is unlikely to have been modified since. A good candidate is /etc/hostname
; other candidates are /etc/hosts
, /etc/papersize
, /etc/popularity-contest.conf
.
I don't think there is.
On Red Hat / CentOS there is the install.log files that is generated when you install the system, but this doesn't exist on Ubuntu.
Assuming your logs go back far enough ( mine do ) you can determine the date the base installation was done in /var/log/dpkg.log*
For example on my system the first two lines of my oldest dpkg.log file (dpkg.log.4.gz) are
2010-04-19 11:40:55 startup archives install
2010-04-19 11:40:55 install base-files <none> 5.0.0ubuntu18
So I installed this system on 19/04/2010 at 11:40:55. That is correct for this system.
There was also a brainstorm idea to add this born date.
-
Thank-you andol, thank-you Richard. /var/log/dpkg.log.1 on a lucid desktop system gave a correct answer where as /var/log/dpkg.log was the only file on a lucid server setup I have, so a little detective work was needed. Some further understanding of the log files will be helpful. – lxtips Aug 6 '10 at 7:05
-
The default setup of
logrotate
discards dpkg logs older than one year. – LassePoulsen Aug 10 '10 at 12:13 -
@Source Lab : Yup. My answer is not foolproof. I did not know about the /var/log/installer directory but do now. That is a better solution. – Richard Holloway Aug 10 '10 at 17:20
-
I still think that the filesystem creation time is the best pointer se here – LassePoulsen Aug 10 '10 at 17:31
would it be simple (i may be wrong) just to check software centre, while in there click on 'history' and scroll down to the bottom of your installed updates. Mine shows april 23 2012 first installation. Which is about right when I started using ubuntu?
The command sudo grep ubiquity /var/log/installer/syslog | less
worked for me very well.