Завтра ошибка в GPSD приведёт к сдвигу на 19 лет назад
В пакете GPSD, применяемом для извлечения точного времени и данных о координатах из GPS-устройств, выявлена критическая проблема, из-за которой 24 октября произойдёт смещение времени на 1024 недели назад, т. е. время будет переведено на март 2002 года. Проблема проявляется в выпусках с 3.20 по 3.22 включительно и устранена в выпуске GPSD 3.23 (исправление также бэкпортировано в пакет с версией 3.22 для Debian). Всем пользователям систем, в которых используется GPSD, необходимо срочно установить обновления, или быть готовым к сбою.
Показать
Эффект от ошибки может привести к непредсказуемым сбоям на разных системах, в том числе напрямую не использующих GPSD, так как данное приложение применяется для получения данных о точном времени на некоторых NTP-серверах, используемых для синхронизации времени. При сдвиге времени в системах могут возникнуть проблемы с аутентификацией (например, перестанут срабатывать одноразовые пароли, Kerberos и другие механизмы проверки доступа, у которых есть время действия), с проверкой сертификатов и с вычислениями, манипулирующими диапазонами времени (например, расчёт времени сеанса пользователя).
GPSD также применяется в автомобильных навигаторах, дронах, роботах, в военной технике, морском и авиационном навигационном оборудовании, в различных мобильных устройствах, в том числе на базе платформы Android, для многих из которых уже не выпускаются обновления прошивок. Обычно на подобных устройствах работа GPSD связана с навигацией и не влияет на установку системного времени.
Протокол GPS предусматривает наличие счётчика недель, отсчитывающего недели начиная с 5 января 1980 года. Проблема в том, что при вещании под данный счётчик отводится всего 10 бит, что подразумевает его переполнение через каждые 1023 недели (19.7 лет). Первое переполнение произошло в 1999 году, второе в 2019, а третье произойдёт в 2038 году. Данные события отслеживаются производителями и для них предусмотрены специальные обработчики. В настоящее время параллельно внедрён новый формат GPS-сообщений (CNAV), в котором для счётчика отводится 13 бит (т. е. переполнение ожидается только в 2137 году).
В GPSD в логике корректировки появления лишней секунды (добавляется с целью синхронизации эталонных мировых атомных часов с астрономическим временем Земли) была допущена ошибка из-за которой 24 октября 2021 года преждевременно будет произведено вычитание 1024 из счётчика числа недель. По задумке автора кода сдвиг должен был произойти 31 декабря 2022 года, но перевод этой даты в число недель был выполнен не верно и фактически приведённое в проверке число недель подпадало под октябрь 2021 года (указано значение 2180 вместо 2600).
/* sanity check week number, GPS epoch, against leap seconds
* Does not work well with regressions because the leap_sconds
* could be from the receiver, or from BUILD_LEAPSECONDS. */
if (0 < session->context->leap_seconds &&
19 > session->context->leap_seconds &&
2180 < week) {
/* assume leap second = 19 by 31 Dec 2022
* so week > 2180 is way in the future, do not allow it */
week -= 1024;
GPSD_LOG(LOG_WARN, &session->context->errout,
"GPS week confusion. Adjusted week %u for leap %d\n",
week, session->context->leap_seconds);
}
Источники:
https://us-cert.cisa.gov/ncas/current-activity/2021/10/21/gps-daemon-gpsd-rollover-bug
http://www.opennet.ru/opennews/art.shtml?num=56017

Хаки и трюки
Виртуалки
Сисьадминство
BASH-скрипты
Парусные суда
Праздники
Моё чтиво
Игра KSP
Фантастика, 1977 год
Хроники Людоедского отряда — А. Ли Мартинес
Фантастика, 1975 — 1976 годы
Добралась очередь до «пощупанных» дистрибутивов Solaris...
UNIX System V Release 4 (SVR4), в 1993 году заменившая
SunOS (основанную на
BSD). В 2010 году, после приобретения Sun компанией
Oracle Solaris. В сентябре 2010 года Oracle решила прекратить распространение созданной в июне 2005 года открытой ветки дистра
OpenSolaris, в августе этого же года прекратила предоставление общедоступных обновлений исходного кода ядра. После этого от OpenSolaris был форкнут проект
illumos, существует несколько дистрибутивов на основе этого проекта.
UNIX 03. Солярка имеет репутацию операционки, хорошо подходящей для симметричной многопроцессорной обработки данных на системах с большим количеством процессоров. Её инновационными функциями можно назвать такие, как:
OpenWindows (поддерживались приложения NeWS и X, обеспечивая обратную совместимость для приложений SunView из более старой среды рабочего стола Sun). Начиная с версии 2.6 стандартным GUI стал
Common Desktop Environment (в последние релизы не включается), с версии 8 дистр поставляется с
GNOME (в этой версии так же был менеджер окон olwm, OPEN LOOK Window Manager), в версию Solaris 10 включена поддержка
Sun Java Desktop System Release 3 (базируется на GNOME). С версии 11 ОСь опять идёт в комплекте со стандартной версией GNOME. Также на сайте blastwave.org доступны скомпилированные пакеты
KDE и
Xfce, так же возможно «привинтить» множество других оконных менеджеров.
Oracle Solaris
OpenIndiana
DilOS
SmartOS
OmniOS

Tribblix
XStreamOS
SchilliX
NexentaStor
v9os
napp-it
SunOS
Solaris
OpenSolaris
OpenSXCE
MilaX
Dyson
BeleniX
StormOS
Nexenta OS
Jaris OS
MartUX
EON
Фантастика, 1973-1974 годы
Фантастика, 1972
Фантастика, 1971
Компания Canonical представила первый выпуск оболочки Ubuntu Frame, предназначенной для создания интернет-киосков, терминалов самообслуживания, информационных стендов, цифровых вывесок, умных зеркал, промышленных экранов, IoT-устройств и других подобных применений. Оболочка рассчитана на предоставление полноэкранного интерфейса для одного приложения и базируется на использовании дисплейного сервера
Mir и протокола
Wayland. Наработки проекта распространяются под лицензией GPLv3. Для загрузки подготовлены пакеты в формате snap.
GTK,
Qt,
Flutter и
SDL2, а также программ на базе Java, HTML5 и Electron. Возможен запуск как приложений, собранных с поддержкой Wayland, так и программ на базе протокола
X11 (используется Xwayland). Для организации работы в Ubuntu Frame с отдельными web-страницами или сайтами развивается программа Electron Wayland с реализацией специализированного полноэкранного web-браузера, а также порт движка WPE WebKit. Для быстрой подготовки и развёртывания решений на основе Ubuntu Frame предлагается использовать пакеты в формате snap, при помощи которых организована изоляция запускаемых программ от остальной системы.
Ubuntu Core, компактного варианта дистрибутива Ubuntu, поставляемого в форме неделимого монолитного образа базовой системы, в котором не применяется разбивка на отдельные deb-пакеты и используется механизм атомарного обновления всей системы. Компоненты Ubuntu Core, включая базовую систему, ядро Linux, системные надстройки и дополнительные приложения, поставляются в формате snap и управляются инструментарием snapd. Компоненты в формате Span изолируются при помощи AppArmor и Seccomp, что создаёт дополнительный рубеж для защиты системы в случае компрометации отдельных приложений. Базовая файловая система монтируется в режиме только для чтения.