32-битный time_t считает секунды с 1 января 1970 — и переполнится 19 января 2038 года в 03:14:07 UTC, уйдя в отрицательные числа. Для систем, которые всё ещё хранят время как signed 32-bit int, это будет означать резкий прыжок в 1901 год.

Большинство современных дистрибутивов давно перешли на 64-битный time_t (glibc 2.34+, ядро с поддержкой 64-bit time), но встроенные системы, старые файловые форматы с 32-битными timestamp и legacy-софт с захардкоженным int32 под датой — не переживут переход тихо.

Разработчики Y2K помнят панику 1999 года из-за двух цифр в годе; здесь запас куда больше — почти два десятилетия на подготовку. Проверить конкретную систему просто: date -d @2147483647 покажет, наступит ли у неё 2038 год как положено, или сразу откат в прошлое.

#юмор