I need to be able to set the date on Ubuntu (8.04.4 LTS) to the year 2040 (to test something that isn't relevant to this question). Is that possible?
I can run:
$ sudo date -s "15 JAN 2038 18:00:00"
Fri Jan 15 18:00:00 PST 2038
...but:
$ sudo date -s "15 JAN 2039 18:00:00"
date: invalid date `15 JAN 2039 18:00:00'
Is the limit somewhere in 2038 (or prior to Jan. 15, 2039)? Does this change with different versions of Linux?
In systems that represent time as a 32bit interger, no. See http://en.wikipedia.org/wiki/Year_2038_problem for more details. Per that article, the latest time that most systems can represent is 03:14:07 UTC on Tuesday, 19 January 2038.
Note that most 64bit systems already use 64 bits to store time, so this won't be a problem once you upgrade (which you should do anyway so you can use all that RAM you bought in your new fast machine).