Почему такое имя. Sakina (по-арабски سكينة, саки́на, с ударением на «и») значит «покой, умиротворение». Таким мы хотели сделать сервер: тихим и спокойным для тех, кто за него отвечает, — без ночных тревог и ручных откатов.
Суверенитет начинается снизу
Если вы не контролируете слой под своей программой, вы не вполне контролируете свои данные. SakinaOS написана с нуля на Rust — без строчки на C и без чужого кода в образе: нечего проверять и не на что полагаться со стороны.
- Ни удалённой оболочки, ни SSH: нет удалённого входа, которым можно злоупотребить
- Обновления подписаны и проверяются на самой машине
- Ключи дисков никогда не попадают на диск
- Один и тот же образ работает на вашем оборудовании и в публичном облаке
Создана для одной задачи
Система общего назначения создана, чтобы запускать что угодно. SakinaOS запускает одно приложение на машину. Между приложением и железом нет ни процессов, ни системных вызовов, ни планировщика общего назначения — меньше слоёв, меньше ожидания.
Приложение собирается вместе с системой в один подписанный файл. Узел с операционной системой занимает около 5 МБ.
Обновления, которых не нужно бояться
Каждый образ несёт подписанный манифест, который проверяется при загрузке. Обновления идут через два слота: новая версия стартует «на пробу», и если она не подтверждена, зависла или упала, машина сама возвращается к прежней. Две сборки из одних исходников дают побайтно одинаковый образ — любой может проверить, что работает именно то, что подписано.
Управление по закрытому каналу
Узлом управляют только по нашему протоколу ATL внутри TLS 1.3, где обе стороны проверяют ключи друг друга. Обмен ключами по умолчанию постквантовый: гибрид X25519 + ML-KEM-768. У сертификатов есть роли: роль наблюдения видит, но ничего не меняет; роль отпирания может только отпереть диски.
Диски, которые держат слово
Диски зашифрованы. Ключ приходит по каналу управления при старте и живёт только в памяти. Данные сверяются в фоне, здоровье дисков отслеживается, подозрительные участки уходят в карантин автоматически, пока оператор их не снимет. Драйверы NVMe, SATA, Intel 10 GbE и стандартных виртуальных устройств — свои, написаны по официальным спецификациям, на ARM64 и x86-64.
Замерено
- Питание обрывали 5 раз во время записи на выделенном сервере AMD EPYC с NVMe (октябрь 2026): все 248 подтверждённых записей на месте, ни одной потерянной или повреждённой
- 6 часов в виртуальной машине x86-64 с 4 vCPU (октябрь 2026): 17 циклов обновления — 8 подтверждений, 9 автоматических откатов, — 35 перезагрузок и около 407 000 HTTP-операций; все подтверждённые данные на месте, память не росла
- Узел вместе со своей операционной системой — около 5 МБ
9 откатов — намеренные: эти обновления оставляли без подтверждения, чтобы доказать, что откат срабатывает сам.