Белые полосы
Наброски
Губернатор Тулы: человек системы на краю чужого мира
- Кто он такой
Губернатор Тулы — не полководец и не архитектор всей колониальной экспансии. Он не придумывал саму идею захвата планеты, не определял стратегию человечества и не принимал решений уровня «вторгаться или не вторгаться». Его функция проще и страшнее одновременно: он делает вторжение обыденностью.
Это высокопоставленный гражданский администратор. Назначенец. Человек, который умеет превращать насилие истории в регламент, а катастрофу — в цепочку согласований. Он не завоёвывает мир с шашкой наголо. Он подписывает сметы на дорожное строительство, слушает доклады по санитарной обстановке, распределяет земельные квоты, давит конфликты между подрядчиками, промышленниками, военными и переселенцами. Он живёт в мире докладных записок, утренних сводок, срочных звонков и бесконечных формулировок вроде: «ситуация требует дополнительной координации на межведомственном уровне».
По характеру он не чудовище и не спаситель. Он из тех людей, которых обычно называют «крепким управленцем». Он не садист, не фанатик, не романтик. Он прагматик, дисциплинированный, в меру вежливый, в меру тщеславный, в меру трусливый. У него нет личной ненависти к шатурианцам, но нет и подлинного сочувствия к ним. Он мыслит категориями стабильности, безопасности, развития, освоения территории, экономической эффективности и политических рисков. То, что для местных жителей является медленной оккупацией родного мира, для него проходит по документам как «этап институциональной интеграции территории».
Власть у него значительна — но строго внутри колонии. Он может сорвать карьеру чиновнику среднего звена, надавить на начальника полиции, изменить приоритеты строительства, перераспределить ресурсы, приостановить или ускорить проект, устроить публичную показательную выволочку какому-нибудь зарвавшемуся бизнесмену. Но он не может отменить сам курс экспансии. Он — крупный винтик в огромной машине, и его профессиональная доблесть как раз в том, что он умеет крутиться без лишнего шума.
- Тула и иллюзия лёгкой добычи
Тула кажется людям почти чудом. Голубая планета с обширными океанами, зелёными материками, мягким климатическим разнообразием и биосферой, которая на первый взгляд слишком хорошо подходит человеку, чтобы не вызвать колонизационный азарт. Она напоминает Землю настолько, что это действует на переселенцев почти наркотически. Здесь можно строить дома, сеять зерно, прокладывать дороги, тянуть линии электропередачи, открывать магазины, заводы, школы, рестораны и посёлки для специалистов — и всё это без необходимости жить под куполом, бороться за кислород или таскать на себе тяжёлую экзозащиту.
Но чем дольше люди находятся на Туле, тем больше чувствуют в её естественности что-то тревожное. Палеонтология планеты не сходится с ожидаемой картиной. Ископаемые остатки древней фауны либо бедны, либо странны, либо вообще не образуют привычной для земных учёных линии эволюционного развития. Основная масса обнаруженной древней биоты напоминает по уровню организации нечто крайне примитивное, сопоставимое с эдиакарской эпохой Земли, и почти никак не объясняет наличие современного богатого животного мира. Словно между древней и нынешней планетой пролегает колоссальный разрыв, скрытый от науки.
С полезными ископаемыми тоже всё не по-земному. Крупных запасов нефти и газа нет, либо они ничтожны, рассеяны, экономически неинтересны. Человеческие геологи сперва воспринимают это как неудобство, потом как особенность, но гораздо позже некоторые начинают понимать, что отсутствие богатого углеводородного прошлого может быть связано не только с геологией, но и с иной историей самой биосферы.
Для шатурианцев, однако, это не проблема. Их цивилизация давным-давно построена не на ископаемом топливе. У них есть атомная энергетика, развитая химия, металлургия, производство композитов, вычислительная техника, робототехника и огромное количество распределённых, не всегда очевидных производственных решений. Их мир не выглядит как мир небоскрёбов, гипермагистралей и промышленных мегаполисов, но это не признак технологической слабости. Это признак иного пути.
- Шатурианцы: ошибка человеческой оценки
Шатурианцы внешне слишком удобны для недооценки. Они похожи на людей, причём чаще всего — на людей приятной, почти нарочито здоровой наружности. Среди них почти не видно увечных, уродливых, дряхлых, visibly больных. Они бодры, дружелюбны, улыбчивы, охотно идут на контакт, любят шутить, задают вопросы, проявляют любопытство к землянам. Женщин у них как будто немного больше, чем мужчин. Стариков в человеческом смысле почти не видно. Они живут отдельными общинами, а крупнейшие их города по земным меркам вообще не производят впечатления столиц развитой цивилизации.
Их одежда особенно сбивает с толку. Вместо привычного текстиля они носят сложные живые симбиотические костюмы, приспособленные к разным средам — от полярных широт до тёплых морей. Всё это кажется землянам экзотикой, странной биоинженерной ветвью, не более.
Они говорят на трёх родственных языках, иначе воспринимают календарь, не любят линейно отсчитывать время, плохо фиксируют юбилеи и датировки. Для колониальной администрации это выглядит как признак культурной рыхлости: мол, да, симпатичные аборигены, да, неглупые, но исторически не собранные, без дисциплины большого государства, без имперского хребта.
И в этом главная ошибка.
Потому что основа их цивилизации — не государство в человеческом понимании, не рынок и не индустрия как таковая, а КНС: децентрализованная биокибернетическая сеть, созданная когда-то как средство связи и коллективной координации, но на больших масштабах обладающая эмерджентным разумом чудовищной мощности. Каждый отдельный узел КНС может быть сравнительно примитивен. В массе же система становится чем-то вроде распределённого сверхразума, который умеет не только передавать сигналы, но и координировать общество, производство, оборону, стратегию и долгосрочное выживание вида.
Люди об этом почти ничего не знают. Максимум — подозревают, что у местных есть какие-то необычные средства коллективной связи. Но человеческое воображение привыкло искать силу в крупных столицах, на верфях, в флотах, в мегаполисах, в дымящих трубах, в ракетных шахтах. А когда ничего этого нет, возникает роковое ощущение: «они не готовы».
- Война, которую люди считали уже выигранной
Первый контакт с Тулой был для человечества не встречей с равным, а соблазном. Планета оказалась слишком хороша, а её обитатели — слишком удобны для ложного вывода, будто перед людьми очередной локальный, технически недоразвитый мир, неспособный остановить организованное вторжение.
Поэтому колонизация началась почти в знакомом земной истории режиме: под лозунгами освоения, развития, совместного будущего, международного сотрудничества, экономической интеграции и гуманитарной ответственности. На деле же — с захватом земли, инфраструктурным проникновением, выдавливанием местных общин с удобных территорий, ресурсной эксплуатацией и навязыванием привычной человеку модели мира. Появились дороги, электростанции, фабрики, порты, административные центры, кварталы для переселенцев, коттеджные посёлки для состоятельных специалистов, охраняемые логистические узлы, местные рынки под человеческим контролем. Жалобы шатурианцев выслушивались, обсуждались, иногда становились темой в СМИ и международных комитетах, но сам процесс шёл своим чередом.
А в это время с другой стороны уже давно шла совсем иная игра.
Когда дальние средства обнаружения КНС зафиксировали приближение пришельцев, шатурианская цивилизация отреагировала не истерикой и не фронтальным сопротивлением, а хладнокровной полной мобилизацией невидимого уровня. Практически сразу было принято решение увести самые ценные колонизационные флагманы и чувствительные мощности в другие системы, о которых вторженцы ничего не знали. Стратегические объекты начали эвакуировать, уничтожать или маскировать. Производство было перестроено под двойное назначение. Внутри общества была запущена долгосрочная программа адаптации к оккупации, разведке и будущему реваншу.
Даже биология населения была перестроена под требования войны: запущен контролируемый патоген, способный по команде КНС уничтожать заражённого шатурианца мгновенной денатурацией белков, чтобы исключить захват носителей стратегической информации. С точки зрения человека это выглядит чудовищно. С точки зрения шатурианской цивилизации — как мера санитарной защиты вида.
Главная их стратегия заключалась не в сопротивлении «здесь и сейчас», а в систематическом сборе сведений о людях. Они изображали мягкость, наивность, даже некоторую нелепость, позволяли пришельцам почувствовать собственное превосходство и десятилетиями изучали их уязвимости: логистику, темпы производства, политические трения, цепочки подчинения, энергетические зависимости, узлы транспортной системы, реальные центры принятия решений.
Через десятилетия всё изменилось мгновенно. Когда подготовка завершилась, шатурианцы развернули военное производство и ударили не по передовым гарнизонам как таковым, а по позвоночнику человеческой цивилизации. Были уничтожены транспортные артерии, сорваны цепочки снабжения, разрушены промышленные центры, где строились корабли, нанесён удар по «сердцу» системы. Человечество оказалось не просто побеждено в одной кампании — оно было ввергнуто в тяжелейший кризис, последствия которого тянулись столетиями.
После победы шатурианцы потребовали выдачи лидера блока, стоявшего за вторжением, и ясно дали понять: следующая попытка закончится уже на Земле. И тогда речь пойдёт не о политическом унижении, а о возвращении человеческой цивилизации в доиндустриальную, если не доисторическую эпоху.
- После войны: железный занавес по-шатуриански
Победив, шатурианцы не стали устраивать массовую резню, публичные казни, лагеря с голодом, пытки или культивируемую месть. Они сочли, что это бессмысленно. Их задача была не отомстить, а обезопасить себя.
Контакт между цивилизациями был почти полностью свёрнут. Через несколько тысяч лет человечество сохранило лишь смутные, почти легендарные знания о том, что где-то в галактике существует или существовала иная разумная сила. Сами шатурианцы предпочли изоляцию, опасаясь не военного вторжения как такового, а медленного культурного разложения под воздействием человеческой модели мира: хищной экспансии, рыночного цинизма, товаризации всего на свете, социального расслоения и политического нарциссизма.
Пленных не уничтожили. Им дали резервации — но не в виде концлагерей, а в виде контролируемых мирных анклавов. Там есть воздух, еда, дома, медицина, техника, транспорт, связь, огороды, лодки, костры по вечерам, лес, озеро, чистое небо. Всё, что нужно для мирной частной жизни. Нет только одного: политической субъектности. Никакого самоуправления, никакой большой промышленности, никакой организованной добычи ресурсов, никакого роста новой человеческой силы.
Для бывших колонизаторов это особенно мучительно, потому что внешне всё слишком прилично. Их не унижают. На них не срываются. Их не заставляют ежедневно каяться. С ними разговаривают спокойно и вежливо. Но это и есть приговор: тебя не считают ни дьяволом, ни героем, ни даже достойным противником. Ты просто больше не опасен.
- Губернатор как человек
Теперь главное: каким он должен быть вблизи.
Общий психологический профиль
Это мужчина позднего среднего возраста. Не старик, но уже человек, привыкший жить по должности. Его тело чуть располнело не от обжорства, а от сидячей власти: кабинет, машина, перелёты, поздние ужины, кофе, плохой сон, редкие прогулки «по рекомендации врача». Он следит за собой настолько, насколько это требуется положением. Не распущен, не неряха, но и не аскет.
Он любит порядок не потому, что эстет, а потому, что беспорядок для него означает потерю управляемости. У него есть особое чиновничье чутьё: он по тону доклада иногда понимает проблему раньше, чем услышит цифры. Он умеет распознавать враньё. Умеет выдерживать длинные, бессмысленные совещания с таким видом, будто именно здесь решается судьба века. Умеет дать резкую, но аккуратную выволочку, после которой человек уходит не оскорблённый, а униженно благодарный за шанс исправиться.
Он не любит героические жесты. Любит, когда всё решается по линии, через согласование, с визами, подписью, резервным вариантом и формулировкой, которая прикроет всех, если что-то сорвётся.
Его привычки
У такого человека обязательно есть мелкие ритуалы, на которых держится ощущение контроля:
Он просыпается примерно в одно и то же время, даже без будильника. Первые минуты после пробуждения лежит с открытыми глазами, вспоминая день по пунктам.
Сначала смотрит не новости, а краткую ночную сводку: происшествия, безопасность, задержки поставок, погодные риски, политические сигналы сверху.
Пьёт кофе крепче, чем советуют врачи. Возможно, уже второй десяток лет обещает себе сократить кофеин, но не сокращает.
Ненавидит, когда утреннюю папку документов кладут не в том порядке.
Почти не завтракает дома полноценно: максимум тост, яйцо, йогурт или фрукт, потому что настоящий завтрак у него всё равно потом — либо в машине, либо уже между встречами.
Носит дорогие, но неброские часы. Не ради понта, а потому что привык мерить день не настроением, а слотами по двадцать и сорок минут.
Всегда просит водителя ехать чуть быстрее, чем положено по протоколу, но сам при этом делает вид, что не замечает нарушений.
Не любит, когда ему звонят без предварительного сообщения, кроме узкого круга людей.
Не выносит слишком эмоциональных подчинённых. Считает, что истерика — это всегда форма непрофессионализма.
Иногда читает перед сном сухие исторические мемуары или управленческую публицистику, но не потому, что увлечён, а потому что ему нравится ощущение разговора с людьми, которые тоже несли тяжёлую административную ношу.
Что его интересует в повседневности
Его интересы не романтичны, а служебно-житейские, но именно этим они и хороши для персонажа.
Его по-настоящему интересуют:
стройки и инфраструктура — не как бетон, а как показатель управляемости пространства;
демография переселенцев;
логистика поставок;
поведение местных элит и посредников;
кадровые конфликты;
кто с кем связан через подряд;
что пишет пресса на метрополии;
кого из его окружения уже двигают наверх мимо него;
здоровье — своё, но как неприятный фактор, а не как ценность;
погода, если она может сорвать поставки;
редкие данные по местной культуре, если они могут пригодиться в публичной политике.
При этом у него есть вторичный круг интересов — то, что позволяет ему ощущать себя человеком, а не функцией:
хорошие завтраки в одном-двух проверенных местах;
качественный чай или кофе;
старые фильмы или исторические сериалы перед сном;
рыбалка как фантазия о покое, которой он почти никогда не успевает заняться;
аккуратные карты, схемы, макеты, планы застройки;
и, возможно, птицы или местная природа — не из любви к экологии, а потому что из окна машины он ежедневно видит чужой красивый мир, который всё ещё не стал для него полностью своим.
Что его смешит
Его не смешат шуты и дурачки. Он смеётся редко, обычно в узком кругу, и ценит сухой, почти канцелярский юмор.
Его смешит:
когда два ведомства месяцами воюют из-за формулировки в документе;
когда очень важный человек оказывается заложником пустяка;
когда самоуверенный карьерист нелепо садится в лужу;
тихие шутки секретарши о расписании, которое «опять съело живого человека»;
абсурдные бытовые мелочи колонии, например пафос открытия объекта, где ещё не работают туалеты.
Иногда его может по-настоящему развеселить что-то у местных — не потому что он понимает их глубоко, а потому что в их лёгкости и дружелюбии есть обезоруживающая неуместность. Он привык ждать от покорённых либо злобы, либо угодливости, а получает шутки, улыбки и какую-то почти нераздражимую вежливость.
Это его, кстати, немного нервирует.
Что его пугает
Не смерть сама по себе. И не фронт, которого он почти не видел вблизи. Его пугает утрата рамки.
Его страшит:
внезапный хаос, который нельзя оформить в решение;
ситуация, где никто не знает, кто отвечает;
ошибки разведки;
признаки того, что колония понимает о местных слишком мало;
любой намёк, что наверху могут решить сделать из него козла отпущения;
утечка, скандал, кадры жестокости, которые уйдут в общечеловеческие медиа;
непредсказуемое поведение шатурианцев, особенно их спокойствие;
старение собственного тела;
бессонница;
тишина после чрезвычайного дня.
Тишина вообще может быть для него страшнее крика. Пока всё шумит, можно работать. Когда всё стихает, остаёшься один на один с мыслью, что никакого контроля, возможно, и не было.
Кто его злит
Его раздражают не враги, а профессионально неудобные люди.
Его злят:
подрядчики, обещающие сроки, которых не существует;
военные, считающие гражданскую администрацию помехой;
гуманитарии из центра, которые рассуждают о морали, не отвечая ни за один грузовик;
карьеристы, которые говорят лозунгами;
журналисты, жадные до красивого скандала;
местные посредники, улыбающиеся и уклоняющиеся от прямого ответа;
молодые идеалисты среди переселенцев, которые сначала требуют справедливости, а потом приходят просить участок побольше;
люди, которые опаздывают без уважительной причины;
и особенно те, кто приносит проблему без вариантов решения.
- Как проходит его обычный день
Утро
Он просыпается около шести. Шторы в служебной резиденции ещё закрыты, но через них уже просачивается бледный, чуть слишком чистый свет Тулы. Воздух на планете вообще раздражающе хорош. Иногда это его бесит: такая красота как будто подрывает серьёзность всей имперской машины, которая тут возится со своими совещаниями, допусками и строительными контрактами.
Пока он умывается и бреется, в соседней комнате уже работает терминал с ночной сводкой. За завтраком — обычно скудным — он просматривает:
происшествия за ночь;
оперативную записку от службы безопасности;
сводку по строительству и снабжению;
погодные условия;
краткий обзор новостей метрополии;
список звонков, запрошенных на сегодня.
Секретарша или помощница — назовём её, например, Елена Марковна — появляется ещё до его выхода. Она не сюсюкается с ним и не льстит, а существует рядом как вторая нервная система его рабочего дня. Она знает, когда ему дать документ молча, а когда сказать: «Это лучше посмотреть до девяти, иначе потом будет поздно». Она следит не просто за расписанием, а за его способностью выдержать это расписание. Если он раздражён, она убирает лишние встречи. Если видит, что он начинает тонуть в мелочах, проталкивает вперёд действительно важные вопросы.
Дорога на работу
В резиденции он не живёт как царь. Это охраняемый, удобный, статусный, но всё же служебный дом. До административного центра его везут на машине, иногда в составе небольшого кортежа, иногда почти без внешнего шума, если день не требует особых мер.
По дороге он видит колонию в разрезе:
новые кварталы переселенцев;
строительные площадки;
тяжёлую технику;
рекламные щиты с лозунгами про развитие и общее будущее;
рынки, где уже смешиваются человеческие и местные товары;
шатурианцев у дорог, у воды, в лёгких живых одеждах, слишком спокойных, слишком приветливых;
зелёные массивы, которые всё ещё кажутся нетронутыми, хотя он знает, сколько заявок уже лежит на их освоение.
Иногда он смотрит в окно молча. Иногда диктует в пути короткие поручения. Иногда созванивается с начальником администрации, главой полиции, транспортным координатором или куратором из центра.
С кем он созванивается
Его обычный круг звонков может быть таким:
руководитель аппарата;
начальник службы безопасности колонии;
представитель военного контингента;
куратор из метрополии;
глава строительного консорциума;
начальник порта;
министр колониального развития на межпланетном уровне;
редактор лояльного медиа, если нужен правильный акцент в публичном поле;
иногда жена, бывшая жена или взрослый ребёнок — разговор сухой, короткий, чуть виноватый;
иногда врач, если секретарша уже совсем прижала по поводу давления и сна.
Обсуждают, как правило, не идеалы, а сдвиги: кто не уложился, где пробка, где конфликт интересов, кто из местных жалуется, какую группу переселенцев нужно успокоить, где намечается визит проверяющих, какую формулировку дать в прессе, как не допустить паники, как провести решение так, чтобы никто потом не смог свалить на него всю ответственность.
Завтрак вне дома
Если день допускает люфт, он может позавтракать не в резиденции, а в одном из двух «своих» мест. Например, в тихом ресторане при правительственном комплексе, где всё делается быстро и без ошибок. Или в небольшом заведении при деловом квартале, где есть хороший кофе, яйца, поджаренный хлеб и где к нему относятся без суетливого подобострастия.
Он любит завтракать с одним-двумя людьми, а не толпой. Утро — время для коротких, точных разговоров. Это может быть:
встреча с главным инженером по инфраструктуре;
с главой земельной комиссии;
с политическим советником;
с представителем корпорации, который слишком много себе позволяет, но пока ещё полезен.
Такой завтрак — уже работа, просто с фарфором и салфетками.
Первая половина дня
Дальше начинается основная мясорубка дня:
оперативное совещание;
доклад по безопасности;
совещание по стройкам;
приём по экстренным обращениям;
разбор земельных споров;
видеосвязь с центром;
краткая встреча по местной культурной политике, которую он внутренне считает ерундой, пока она не превращается в скандал.
Он постоянно подписывает, визирует, выслушивает, прерывает, уточняет, переносит, давит, обещает разобраться, требует цифр, требует сроки, требует убрать эмоциональную шелуху и сказать по сути.
Обед
Обедает он редко в одиночку. Обед для него — инструмент.
С кем он может обедать:
с военным комендантом, если назревает конфликт полномочий;
с крупным инвестором;
с делегацией из центра;
с начальником аналитического отдела;
с кем-то из местных посредников или «умеренных представителей общин», если нужно создать картинку диалога;
с пресс-секретарём и советником, если к вечеру предстоит неприятное публичное заявление.
Он ест умеренно, но не аскетично. Не пьянствует на работе. Может позволить себе бокал, если это вечерний официальный ужин, но не днём. Вообще, он очень боится потерять управляемость лица и речи.
Послеобеденное время
После обеда наступает самое тяжёлое время: усталость уже накопилась, а впереди ещё блок встреч, документов и решений, которые нельзя отложить. Именно после обеда он становится резче, если день плохой.
Тут идут:
индивидуальные аудиенции;
кадровые решения;
согласование бюджетов;
разбор инцидентов;
контроль исполнения старых поручений;
иногда выезд на объект, если нужно лично показать присутствие власти.
На выездах он ведёт себя собранно. Надевает нужное выражение лица, слушает объяснения, задаёт два-три точных вопроса, смотрит по сторонам и запоминает не только то, что ему показывают, но и то, что стараются не показывать.
Вечер
К вечеру он обычно выжат. Но день всё ещё не закончен. Есть:
итоговая сводка;
подготовка на завтра;
один-два обязательных звонка;
иногда ужин с кем-то нужным;
иногда приём;
иногда полчаса одиночества, которые он проводит либо с бокалом, либо с бумагами, либо молча у окна.
Если вечер свободнее обычного, он может задержаться на террасе, посмотреть на небо Тулы и поймать себя на неприятной мысли, что планета красива не для них. Эта мысль ему не нравится. Он её гонит.
- Его отношения с секретаршей
У такого человека секретарша — важнейшая фигура. Не романтическая и не декоративная. Она — хранительница ритма власти.
Она знает:
кого можно пустить без доклада;
кого надо заставить ждать;
какой документ он подпишет сразу, а какой надо отложить на момент, когда у него будет лучше настроение;
когда ему нужно поесть;
когда он на пределе;
кому можно сказать «губернатор ознакомится», а кому — «губернатор ждёт вас через десять минут».
Она иногда позволяет себе сухую, почти материнскую строгость:
«Вы не обедали».
«Этот разговор лучше перенести».
«Вы обещали врачу».
«Нет, с ним сегодня лучше не разговаривать, вы его размажете, а он вам ещё нужен».
Он может злиться на неё чаще, чем на многих других, именно потому, что она одна из немногих видит его не как должность, а как уставшего человека с дурными привычками и повышенным давлением.
- Что с ним происходит после плена
Когда он оказывается в шатурианской резервации, ломается не его тело, а сама структура его личности.
Сначала он ждёт допроса, процесса, требований, обмена, политической игры. Но ничего этого нет. Его не бьют. Не унижают. Не требуют раскаяния. Ему дают дом, еду, наблюдение врача, участок земли, лодку, бытовую технику, возможность читать, разговаривать, ходить к озеру, чинить снасти, смотреть небо, ездить по ограниченной территории.
Сначала он не понимает, где наказание.
Потом понимает.
Наказание в том, что он больше никому не нужен как функция. Ему не нужно принимать решения. Никто не ждёт его подписи. Его сводки никому не нужны. Его аппарат растворился. Секретарша исчезла. Телефон молчит. Нет ни интриг, ни срочности, ни аппаратной борьбы, ни шанса удержать контроль хотя бы над календарём.
И тогда выясняется, что вся его прежняя личность была сшита из обязанностей.
Сначала — шок.
Потом — обида.
Потом — привычка ходить утром к воде.
Потом — попытка самому составить себе режим, как будто он всё ещё управляет хотя бы собственным днём.
Потом — странное облегчение.
Потом — ужас от этого облегчения.
Потому что если ему хорошо без власти, значит, возможно, он всю жизнь служил не смыслу, а механизму.
- Пример его недельного расписания до плена
Ниже — схема, которую потом можно будет развернуть в сцены.
Понедельник
День аппаратной дисциплины. Утренние сводки, общее совещание, стройки, безопасность, логистика. После обеда — видеосвязь с центром и кадровые вопросы. Вечером — работа с бумагами и ранний отбой, если повезёт.
Вторник
Выезды на объекты. Новые кварталы переселенцев, энергетический узел, дорожный участок, порт. Обед в поле или в административной столовой на объекте. Вечером — разбор увиденного, раздражение, резкие поручения.
Среда
Политический день. Приём делегаций, встречи с корпоративными представителями, работа с прессой, гуманитарные вопросы, показной диалог с местными. Вечером — официальный ужин.
Четверг
Безопасность и кризисы. Закрытые доклады, спор с военными, обсуждение протестов, инцидентов, возможных провокаций. После обеда — короткие точечные аудиенции. Ночью может сорваться в экстренную работу.
Пятница
Бюджеты, согласования, контроль исполнения, подведение недели. Подписание накопившихся бумаг. Иногда — попытка закончить пораньше, которая почти никогда не удаётся.
Суббота
Формально полувыходной, фактически — мягкий рабочий день. Поздний завтрак, звонки, чтение записок, один-два неофициальных обеда, возможно короткий выезд без прессы. Иногда — редкая возможность побыть с семьёй или хотя бы созвониться с ней не между дверями.
Воскресенье
Единственный день, когда он может попытаться быть частным человеком. Сон чуть дольше, спокойный завтрак, прогулка, книга, разговор с близкими. Но к вечеру уже начинает смотреть сводки на понедельник и внутренне возвращается в строй.
- Более конкретный распорядок одного дня
Чтобы было ещё нагляднее, вот типовой вторник.
06:00 — подъём, душ, ночная сводка
06:30 — кофе, краткий разговор с секретаршей по ключевым точкам дня
07:00 — выезд из резиденции
07:20 — звонок начальнику порта
07:40 — завтрак с главным инженером и куратором стройки
08:15 — прибытие в администрацию, оперативка
09:00 — доклад службы безопасности
09:40 — совещание по переселенческим кварталам
10:30 — разбор жалоб по земле
11:15 — короткий созвон с метрополией
12:00 — выезд на объект
13:00 — обед с военным комендантом и представителем подрядчика
14:00 — осмотр инфраструктуры, беседа с местными чиновниками
16:00 — возвращение в центр
16:30 — приём по срочным вопросам
17:30 — работа с бумагами, визы, резолюции
19:00 — итоговая сводка
20:00 — поздний ужин
21:00 — чтение материалов на завтра
22:30 — попытка лечь спать
23:10 — ещё один звонок, потому что кто-то сорвал сроки
00:00 — наконец сон
Общая конструкция рассказа
- Утро губернатора
Начать надо очень спокойно и предметно. Не с политики, не с большой экспозиции, а с тела и быта.
Он просыпается рано, ещё до окончательного света. Некоторое время лежит, приходя в сознание и вспоминая, какой сегодня день. Не сразу встаёт. Смотрит в потолок. Может быть, ощущает неприятную сухость во рту, тяжесть в голове, следы плохого сна. Думает о чём-то мелком, но неприятном: о трудном разговоре, о визите инспекции, о давлении центра, о статье в прессе, о конфликте между военными и гражданскими, о двух шатурианцах, с которыми надо сегодня встретиться.
Потом ванная, зеркало, бритьё, зубы. В зеркале можно дать первый очень короткий штрих: он смотрит на себя не как человек, а как администратор на инструмент. Усталость, мешки под глазами, чуть поплывшее лицо, но всё ещё собранное. Может быть, мысль в духе:
«Плохо спал. Надо будет всё-таки дойти до врача. Не сегодня».
- Семья за завтраком
Да, семья тут очень нужна. Она делает его живым и одновременно усиливает будущий обрыв.
Семья не должна быть слишком тёплой и идиллической — иначе рассказ уйдёт в другую тональность. Лучше так: это привычный, обеспеченный, чуть прохладный семейный уклад.
Например:
жена, которая давно привыкла к его отсутствию даже когда он дома;
взрослый сын или дочь;
может быть, младший ребёнок или подросток;
домашняя помощь;
столовая, большие окна, утренний свет, сервировка, почти слишком хороший дом для мира, который якобы ещё только «осваивается».
За завтраком разговор может идти не о любви, а о привычной семейной погоде:
кто-то просит его подписать разрешение на поездку;
жена спрашивает, будет ли он к ужину;
дочь бросает что-то колкое про местные протесты или про переселенцев;
он отвечает автоматически;
мыслями он уже на работе.
Очень полезно показать, что он дома всё равно остаётся губернатором. Не тираном, а человеком, который уже почти не умеет быть просто мужем и отцом.
- Дорога на работу
Это очень важный кусок. Тут можно «дышать» миром.
Он едет в машине и смотрит в окно. Видит:
влажную утреннюю зелень;
служебные кварталы;
колонну техники;
школьный автобус;
рынок, который только открывается;
шатурианцев у дороги;
рекламный щит про развитие территории;
пар над водой;
птиц;
далёкие холмы;
стройки.
И параллельно думает о своём. Причём мысли должны быть не философские, а рабочие, но так, чтобы за ними проступал характер.
Например, его может беспокоить:
спор между военными и колониальной администрацией;
какой-то подрядчик, который сорвал график;
журналистский материал;
утечка информации;
разговор с центром;
необходимость решить, кого прикрыть, а кого сдать;
и при этом — встреча с двумя местными, которые ему нужны для каких-то неформальных договорённостей.
- Рабочее утро
Здесь надо дать вкус его власти. Не через рассказ «он был важен», а через действия.
Секретарша приносит папки.
Он на ходу подписывает бумаги.
Кого-то принимает стоя.
Кому-то говорит: «Нет, это не решение, это попытка отсрочить решение».
С кем-то коротко ругается.
С кем-то говорит подчеркнуто мягко.
Слушает доклад по безопасности.
Слушает доклад по переселенцам.
Отмечает, что один из подчинённых врёт или недоговаривает.
Тут как раз можно встроить вторую линию интриги: читателю должно казаться, что в рассказе будет развиваться какая-то земная политико-административная проблема. Например:
местные всё сильнее недовольны;
один из его проектов на грани скандала;
Альянс требует жёсткости, а он предпочёл бы договориться;
те два местных парня знают что-то полезное;
или через них он ведёт обходной канал договорённостей.
То есть читатель должен думать: ага, сейчас рассказ пойдёт либо в политическую интригу, либо в личную драму чиновника на колонии.
- Те самые двое
Вот это ключевой момент.
Они должны появиться не как «таинственные посланцы судьбы», а как свои знакомые, пусть и странноватые. Они могут быть:
оба обаятельные;
расслабленные;
привычно насмешливые;
с хорошими манерами;
лёгкие в общении;
один более разговорчивый, другой более тихий;
оба слишком спокойные.
Губернатор знает их давно. Может быть, считает их полезными людьми. Может быть, даже симпатизирует им. Они для него — один из немногих каналов общения с местными, где не надо всё время держать официальный тон.
Это очень важно: он не ждёт от них угрозы.
Он выходит к ним, разговаривая по телефону, прикрывает микрофон рукой и просит подождать. Они смеются, кивают, говорят что-то живое и дружелюбное. И читатель тоже расслабляется.
А дальше — окно.
- Белые полосы
Тут надо замедлиться. Очень замедлиться.
Он подходит к окну не потому, что тревога, а просто потому, что взгляд зацепился.
В небе что-то есть.
Сначала — просто полосы.
Потом — слишком много полос.
Потом — неправильный угол.
Потом — не та форма.
Потом — что-то вспыхивает слишком высоко.
Потом — мысль сопротивляется.
Потом — узнавание.
В этот момент хорошо работает не крик, а наоборот, короткий сбой речи. Он продолжает говорить по телефону, но уже не слышит собеседника. Может переспросить:
«Что?.. Нет, подождите…»
Или даже вслух, не к месту:
«Это что ещё такое?»
А потом понимает.
И вот здесь ему должно стать страшно не только от самого факта поражения, но и от того, что внизу тихо. Нет стрельбы. Нет сирен. Нет хаоса. Это значит, что всё уже решено без него. Он опоздал не на пять минут, а на целую эпоху.
- Фраза о том, что он должен пройти с ними
Очень сильный момент. Я бы не делал его грубым.
Пусть они уже встали.
Пусть лица у них не злые.
Пусть один из них даже чуть виновато или участливо смотрит на него.
И потом одна простая фраза, без нажима:
— Теперь вы должны пройти с нами.
Можно даже чуть сильнее:
— Простите. Теперь вам нужно пойти с нами.
или
— Пора. Теперь вы пойдёте с нами.
Но твой вариант тоже хорош — он сухой и окончательный.
Главное, чтобы губернатор в этот момент понял: спорить не о чем. Не потому что его сейчас скрутят, а потому что мир уже сменился, а он ещё стоит в старых декорациях.
Почему это работает
Потому что весь рассказ до этого момента можно строить как роман о важности — а потом показать абсолютную неважность.
Его беспокоят:
графики,
подрядчики,
политические риски,
семейные трения,
приёмы,
телефонные разговоры,
карьерные опасения,
местные посредники,
репутация,
доклады,
деньги,
тон формулировок.
А потом оказывается, что всё это уже умерло. Не в переносном смысле, а буквально. И он даже не заметил момент смерти, потому что слишком был занят управлением.
Это очень хорошая тема для рассказа.
Какой может быть объём
20 страниц — нормально. Я бы даже сказал, почти идеально. На такой объём можно сделать:
4–5 страниц утро и дом,
4–5 страниц дорога и рабочее утро,
4–5 страниц кабинет, звонки, люди, те двое,
2–3 страницы сцена у окна,
2–3 страницы короткий финал с выводом героя из кабинета.
То есть сам «перелом» должен быть относительно коротким. Не надо после белых полос долго объяснять, что случилось. Наоборот: чем меньше объяснений в моменте, тем сильнее.
Каким сделать финал первой части
Я бы не заканчивал рассказ длинным конвоированием. Лучше оборвать почти сразу после перелома.
Например:
он кладёт телефон, не понимая, положил ли вообще;
слышит птиц;
видит, как вторая или третья полоса гаснет в небе;
поворачивается;
видит, что оба гостя уже стоят;
один из них произносит свою фразу;
губернатор машинально ищет глазами секретаршу;
секретарши нет, или она сидит на месте очень бледная и ничего не говорит;
он думает странную нелепость вроде:
«Почему нет сирены?»
и на этом можно заканчивать.
Или даже ещё сильнее: закончить на каком-то физическом микродействии. Например:
Он машинально поправил рукав, словно собирался на обычное совещание, и только потом пошёл к двери.
Это будет очень по-человечески.
Продолжение про резервацию
Да, продолжение напрашивается, и оно должно быть резко контрастным. Не «вторая часть про страдания плена», а совсем другой ритм.
Если первая часть — про перегруженность, суету, значимость, то вторая должна быть про:
тишину,
медленность,
повторяемость,
отсутствие необходимости решать,
пустоту после власти.
Но там обязательно нужен новый сюжет, иначе получится просто очерк о быте в резервации.
Вот несколько вариантов.
Вариант 1. Он учится жить без роли
Самый психологический вариант. Его новый конфликт — не с шатурианцами, а с пустотой. Он пытается построить себе распорядок, командовать, организовывать, вводить смысл — а потом постепенно начинает понимать, что никто не отнимает у него достоинство, но и прежняя его личность тут никому не нужна.
Сюжетным стержнем может быть какая-нибудь мелочь:
он начинает вести журнал, строить огород, чинить лодку, учиться ловить рыбу, и через это медленно меняется.
Вариант 2. К нему кто-то приходит
Самый драматический вариант. В резервации к нему начинают регулярно приходить те самые местные или кто-то другой. Не как тюремщики, а как собеседники. Может быть, один из них хочет понять людей. Может быть, наоборот, изучает лично его как тип. Между ними возникает странная форма общения, где бывший губернатор впервые в жизни разговаривает без аппарата, протокола и пользы.
Вариант 3. Он сталкивается с другим пленным
Например, с военным, с бывшим журналистом, с промышленником, со своей бывшей секретаршей или с человеком, которого он когда-то сломал карьерно. В резервации старые роли не работают, и это создаёт новый конфликт.
Вариант 4. Он узнаёт, что его помнят не так, как он думал
Очень сильный вариант. Он считал себя винтиком и умеренным администратором, а потом узнаёт, что для кого-то конкретного был лицом режима. Или наоборот: он думал, что его ненавидят, а местные относятся к нему почти равнодушно, и это его ранит сильнее.
Вариант 5. Он получает возможность уехать — и не знает, хочет ли
Редкий, но мощный ход. Допустим, спустя годы возникает шанс перевода, обмена, контакта, возвращения в человеческий мир. И вдруг оказывается, что человек, который раньше жил властью, уже не уверен, что хочет обратно в ту мясорубку.
Что особенно важно не испортить
Есть несколько тонких мест.
Первое: не делать губернатора слишком симпатичным. Он должен быть живым и понятным, но не превращаться в мученика. Иначе потеряется моральная сложность.
Второе: не делать шатурианцев слишком театрально загадочными. Чем они спокойнее и естественнее, тем лучше. Их сила должна ощущаться не через понты, а через полное внутреннее отсутствие суеты.
Третье: не перегружать объяснениями в первой части. История должна идти через фактуру, а не через лекции о мире.
Четвёртое: белые полосы в небе не надо расписывать как экшен-сцену. Это не батальная сцена, а момент узнавания конца.
Очень грубый скелет первой сцены
Вот как это может звучать по внутренней логике:
Он просыпается рано, ещё до света.
Лежит, вспоминает день.
Идёт в ванную, видит себя в зеркале.
Завтрак с семьёй, разговоры вполголоса.
Дорога в машине, мысли, окно, планета.
Рабочее утро, бумаги, люди, звонки.
Напоминание о встрече с двумя местными.
Они приходят, садятся, улыбаются, переговариваются.
Он говорит по телефону, подходит к окну.
Замечает полосы.
Понимает.
Осознаёт тишину.
Оборачивается.
«Теперь вы должны пройти с нами».
Конец.
MAYDAY
1. Диспетчерская
Станция Лагаш висела на геостационарной орбите Ашур-Картага уже четыреста двадцать местных лет. Ее построили еще до того, как планета прошла процедуру терраформирования. Поначалу станция была просто металлической трубой с фермами и первыми поселенцами - теперь это настоящий космический город: шесть миллионов человек постоянного населения, сотни тысяч километров герметичных коридоров, десятки жилых модулей, зон отдыха, парков, промышленных секторов, научных лабораторий и, разумеется, портов. Грузовых. Пассажирских. Служебных. Военных. Всего их было шесть, и каждый работал по своему расписанию.
Старший диспетчер смены Дарио Весс сидел за центральной консолью на двадцать втором уровне пассажирского порта «Карум». Ему подчинялись операторы нескольких секторов, специалисты связи и дежурный координатор аварийных служб. В обычные часы автоматика сама разводила потоки, проверяла планы и предлагала решения, а люди подтверждали их и вмешивались только при отклонениях. На экране Весса была сведена общая картина движения, окна телеметрии, изображения с внешних камер и панель служебной связи. Один из приемников постоянно прослушивал древнюю аварийную частоту 121,5 МГц - стандарт, давно не использовавшийся местными судами, но все еще поддерживаемый оборудованием на крайний случай.
________________
Весс не любил свою работу, но привык к ней. Он знал, что за этим пультом нельзя расслабляться. Поэтому когда левый периферийный экран моргнул зеленым - сработал дальний радар, сканирующий пространство в радиусе ста тысяч километров, - он мгновенно насторожился.
Короткая вспышка, метка, которая тут же исчезла, будто помеха.
Весс нахмурился. Система РЛС была старой, но надежной и не выдавала ложных срабатываний. Он переключил окно на спектральный анализ. Ничего. Чистый фон.
— Шум? - пробормотал он, но палец уже ткнул кнопку перезапроса.
Через две секунды радар повторил цикл. И снова - засветка, теперь более четкая, с фиксацией скорости, вектора и радиолокационного сечения. Объект был маленьким. Метров двадцать в длину. С таким сечением обычно летают межорбитальные буксиры или ремонтные дроны.
Пара быстрых касаний развернула динамическую маршрутную карту. Все гражданские буксиры, дроны, частные яхты и служебные суда в зоне контроля отображались в ней независимо от порта приписки: система сводила их планы полета, транспондеры и текущие векторы в единую таблицу. Совпадений не было. Отдельно Весс вызвал служебный слой военных уведомлений. ВКСАФ могли проводить закрытые запуски без предварительного согласования, но обычно всегда предупреждали о своих передвижениях, чтобы лишний раз не поднимать ложную тревогу. На этот раз все было иначе.
— Что это за хрень? - Весс отставил термос.
Он вызвал дежурного по связи и приказал направить на цель узкий радиолуч высокого разрешения. Пока техник возился с настройками, диспетчер переключил один из видеоканалов на внешнюю камеру с большей чувствительностью. Картинка была зернистой, но в центре экрана, на темном фоне космоса, медленно разгоралась крошечная точка.
Предварительный расчет давал около 2,68 километра в секунду по касательной к планете - почти точную круговую скорость для высоты около сорока девяти тысяч километров. Однако вектор еще немного отклонялся от расчетного: объект сохранял небольшую радиальную составляющую и пока не вышел на устойчивую орбиту. Похоже, он появился почти в нужной точке и теперь должен был лишь устранить ошибку выхода.
— Это невозможно, - прошептал Весс.
Опершись руками о пульт, Весс встал, но тут же снова наклонился к консоли. Он открыл архив движения и запустил обратный расчет от текущего положения и вектора цели. Система просмотрела все зарегистрированные старты и маневры за расчетное временное окно - достаточное, чтобы любой обычный аппарат мог добраться сюда с одной из ближних орбит.
Совпадений не было. Ни один корабль не мог оказаться в этой точке с такой скоростью, не оставив следа в маршрутных таблицах и журналах наблюдения.
Объект просто материализовался в зоне контроля станции.
— Господин Весс, дальний сектор подтверждает новую цель, - сообщил один из операторов. - Транспондер молчит, совпадений с планами нет.
— Независимое подтверждение?
— Устойчивое сопровождение с трех постов.
— Передайте цель на центральный экран. Связь - направленный запрос идентификатора и пассивное прослушивание всех аварийных частот.
На экране вместо тусклой точки появился четкий силуэт суборбитального челнока: вытянутый фюзеляж с округлым приподнятым носом, широкое низкое дельтовидное крыло и высокий киль над кормой. Очертания напоминали древние многоразовые корабли Первой Космической Эры, только аппарат был заметно меньше. Под килем темнели громоздкие сопла маршевых двигателей. Весс не узнал конструкцию, хотя практически все челноки, применявшиеся в системе, знал по силуэту.
— Оценка типа и массы?
— Предположительно суборбитальный транспортный челнок. Модель не опознана. Масса около тридцати тонн.
Оператор замялся, затем добавил:
— Господин Весс, на нем нет места под ГПТ-оборудование. Его просто некуда ставить.
Весс вызвал центральный ЦУП по защищенной аварийной линии. Он ожидал услышать оперативного дежурного, но на экране появился генерал-майор Камиль Рахаль, командующий орбитальной обороной Акадской Федерации.
Весс невольно выпрямился. Такие большие военные начальники никогда не подключались к переговорам со станционными диспетчерами без серьезной причины.
— Карум-контроль, докладывайте, - сказал генерал.
— Неопознанный суборбитальный транспортный челнок появился между двумя циклами обзора. Следов подлета нет, транспондер не отвечает, с планами движения не совпадает. Орбита близка к круговой, ошибка выхода минимальна.
— Повторите: следов подлета нет вообще?
— Никак нет. Подтверждение с трех независимых постов.
Рахаль несколько секунд молчал, изучая переданные данные.
— Зафиксируйте исходные записи и ограничьте к ним доступ вашей сменой. Я беру инцидент под личный контроль. Продолжайте запрос идентификатора и оставайтесь на линии.
Челнок тем временем совершил несколько коротких коррекционных импульсов. На тепловизоре вспыхнуло пламя маневровых двигателей. Объект убирал небольшую ошибку выхода и переходил на почти круговую орбиту; отклонение от расчетной скорости не превышало двух метров в секунду. Для посадки он не готовился: перицентр оставался далеко за пределами атмосферы.
— Коррекция завершена, - доложил оператор. - Средняя высота сорок девять тысяч двести километров. Орбита почти круговая. Наклонение четыре десятых градуса. Двигатели выключены.
Почти сразу ожил старый аварийный приемник.
— Включился маяк, - сказал специалист связи. - Стандартная частота бедствия.
Наушник захрипел. Динамик на пульте ожил, и из него раздался синтетический женский голос, с едва заметным акцентом, повторяющий одно и то же слово на старом английском:
— Mayday. Mayday. Mayday.
Голос был записан как будто бы на магнитную пленку. Роботизированный. Немного странный. Весс отключил звук и снова связался с ЦУПом.
— Есть контакт. Передают «Mayday». Ответа на запрос идентификатора нет.
В трубке опять повисла пауза. Потом Рахаль сказал:
— Поднимай бригаду МЧС. Корабль перехватить, выживших спасти. Действуй по штатному протоколу для неопознанных объектов. И передай ребятам: пусть действуют осторожно.
— Может, им взять с собой пару штурмовиков? - спросил Весс. - Вдруг там ловушка…
— Что?! - Рахаль явно опешил. - Да ты там пьяный что ли?! Хватит молоть чепуху! Поднимай бригаду спасателей! Выполняй!
Идея и впрямь была нелепой: вряд ли на таком челноке прилетят “крикуны” или “чужие” и даже захваченный спасательный корвет не подпустили бы к станции без проверочных кодов и разрешения от СБС, а при попытке прорыва его уничтожили бы батареи противометеоритной обороны.
— Есть! - ответил Весс, слегка покраснев от неловкости за глупость, с азанную вслух, и переключился на канал станции «Переход», геостационарного транзитного порта, висящего над экватором, на высоте 35 тысяч километров.
Дежурная бригада работала в режиме постоянной готовности и должна была покинуть шлюз не позднее чем через пятнадцать минут.
________________
2. «Саламандра»
Порт «Энлиль» появился уже в ходе терраформирования Ашур-Картага, когда через орбиту пошел основной поток воды, атмосферных газов, оборудования и строительных материалов. Лагаш был старше, но именно «Энлиль» со временем стал главным транзитным узлом между орбитальной и планетарной транспортной инфраструктурой. За века его многократно расширяли и перестраивали, однако настоящим городом он так и не стал: это был прежде всего огромный утилитарный комплекс из причалов, резервуаров, складов, ремонтных доков и служебных секций. Жилые модули предназначались главным образом для сменного персонала, хотя многие вахтовики проводили здесь годы и фактически жили на постоянной основе.
Среди всего этого великолепия затерялся корвет «Саламандра» - старый, потрепанный, но надежный корабль. Машины этого класса создавались специально для абордажных операций и до сих пор использовались ВКСАФ по назначению. Сама «Саламандра» закончила боевую карьеру двадцать лет назад, после аварии на орбитальном топливном терминале. Тогда взрыв одной из накопительных цистерн вызвал цепную серию детонаций, отрезав от центрального узла несколько жилых и служебных модулей. Обычные спасательные катера не могли подойти к ним из-за выбросов раскаленного газа и непрерывно разлетающихся обломков. Корвет сделал три спасательных рейда: принимал людей через усиленный абордажный шлюз, отходил на безопасное расстояние, передавал эвакуированных и снова возвращался к терминалу. Во время второго захода близкий взрыв сорвал часть наружного оборудования, повредил обшивку и оплавил несколько участков корпуса. Несмотря на повреждения, корабль пошел на третий рейс, потому что датчики продолжали фиксировать людей в одном из уцелевших отсеков. Всего «Саламандра» вывезла больше сотни человек и вернулась на базу своим ходом.
После ремонта корвет передали МЧС и переоборудовали в пассажирский эвакуатор. Прозвище «Саламандра», впервые прозвучавшее в аварийном эфире после третьего рейса, со временем стало его официальным именем. В экипаже длинное название быстро сократилось до «Салли».
После передачи спасательной службе бывший десантный отсек «Саламандры» переоборудовали для перевозки пассажиров. Он оставался общим помещением между внешним шлюзом и жилой частью корабля; установленная при модернизации санитарная камера позволяла при необходимости обработать людей и снаряжение перед переходом дальше. Бывшую камеру для пленных превратили в герметичный медицинский модуль с собственной вентиляцией, регулируемым давлением и широким смотровым окном в сторону маленькой кают-компании. Обычно его использовали как процедурный кабинет или операционную, но при необходимости модуль можно было изолировать и временно перевести в карантинный режим. Через двухдверный передаточный шлюз внутрь передавали еду, воду и медицинские приборы, не смешивая атмосферу помещений.
Через четырнадцать минут после объявления тревоги экипаж уже находился на борту и корвет был готов к отлету.
Капитан Леон Арден, сорокалетний мужчина с седыми висками и привычкой все проверять дважды, был пристегнут в командирском кресле и просматривал данные по цели. У соседней консоли, зацепившись ботинками за палубные фиксаторы, закрепился старпом и старший бортинженер Оскар Мейнер.
Двадцать лет назад Мейнер уже служил на этом же корабле старшим бортинженером. После второго спасательного захода «Саламандра» вернулась с поврежденным наружным оборудованием и частично отказавшим контуром охлаждения. Мейнер вручную перераспределил питание, отсек поврежденные магистрали и подтвердил командиру, что двигатели выдержат еще один рейс. На основании его заключения корвет в третий раз вернулся к терминалу. После перевода «Саламандры» в МЧС Мейнер остался на борту, сохранил должность старшего бортинженера и со временем стал старпомом. Капитанского допуска у него не было: всю военную службу он прошел по инженерно-десантной линии, а после списания в запас уже не подходил по возрасту для полного цикла командно-навигационной переаттестации. Формально Мейнер был вторым человеком на корабле, но «Салли» знал лучше любого из ее капитанов.
— Ну и что это за птица, Арден? - спросил Мейнер, глядя на картинку с видеорегистраторов станции Лагаш. - Странно как-то выглядит.
И постучал пальцем по экрану:
— У нас таких не бывает. Ты погляди, какой дизайн… Как будто в стиле «ретро».
— Да уж, - ответил Арден риторически.
— А если там внутри - труп? - казалось, Мейнер специально нагоняет мистических туч, ради потехи над командиром, которому было явно не до шуток. - А что если это один из «первоходов»?
— Да ну, - скептически ответил Арден. - Таймлаги-то на выходе могли быть, но вот случайно вывалиться прямо здесь - едва ли. Короче: труп там или нет - на месте разберемся.
Ольга Андреевна Ланская - врач экстренной медицины и реаниматолог, молодая женщина с короткой стрижкой и острым взглядом, - проверяла медицинские контейнеры, удерживаясь коленом в палубном упоре. У соседнего стеллажа закрепились инженер наружных работ и стыковочных систем Йонас Мадсен, спасатель-парамедик Томас Рейл, дополнительно подготовленный к работе в открытом космосе и эвакуации пострадавших, и Эрик Норр - инженер бортовой электроники и программных систем.
Старт был дан ровно в 11:00. «Саламандра» отстыковалась от «Перехода», отошла от причальных конструкций и развернулась на расчетный вектор.
Маршевые двигатели вышли на тягу. Разгонный импульс продолжался чуть больше тридцати секунд. Трехкратная перегрузка вдавила экипаж в ложементы кресел, а затем исчезла так же резко, как возникла: двигатели отключились, и корвет снова перешел в невесомость.
До орбиты цели было почти четырнадцать тысяч километров по высоте, однако простого прямого броска в космосе до сих пор не существовало. Навигационный компьютер сформировал ускоренную траекторию перехвата, которая должна была вывести «Саламандру» в одну точку с челноком и в одно время. Такой переход требовал значительно больше топлива, чем обычный подъем между орбитами, зато позволял не ждать подходящего взаимного расположения кораблей.
Перелет занял девять часов и двадцать минут. Почти все это время «Саламандра» двигалась по расчетной дуге с выключенными маршевыми двигателями. Арден проверял решение навигационного компьютера перед каждым коротким коррекционным импульсом.
При подходе к цели маршевые двигатели включились снова. Шестнадцатисекундный тормозной импульс погасил основную часть относительной скорости; оставшуюся разницу автоматика сняла маневровыми двигателями.
Еще до выхода в район цели весь экипаж облачился в герметичные скафандры и закрыл шлемы. Защитный режим предписывал не снимать их до окончания первичного осмотра, проверки атмосферы и санитарного контроля после возвращения на корвет.
— Дистанция пятьдесят километров, - доложил Норр. - Переключаю на оптику.
На экране челнок обрел четкие очертания. Он действительно был странным - но не по общей схеме, а по исполнению. Короткий фюзеляж с тупым носом, небольшие треугольные крылья, грузовой отсек в средней части и громоздкие сопла в корме напоминали старые орбитальные самолеты. Обшивку покрывали темные теплозащитные плитки с характерными зазорами на расширение. Они были подогнаны с почти нелепой точностью: швы шли ровно, края нигде не крошились. Такое качество редко встречалось даже на военных кораблях - не серийная штамповка, а кропотливая индивидуальная работа. Круглый боковой люк находился на почти плоском участке борта и был обведен широкой металлической окантовкой. По корпусу тянулись тонкие антенны, явно предназначенные для дальней связи.
— Никаких видимых повреждений, - сказал Мадсен. - Только что он тут делает?
— Сейчас узнаем, - ответил Арден. - Дистанция два километра. Начинаем маневр стыковки.
Сближение с нестандартным объектом было самой сложной частью операции. «Саламандра» остановилась в двенадцати метрах от челнока и уравняла с ним поступательное и угловое движение. Затем Арден подвел корвет ближе - плавно, неторопливо, гася остаточную скорость микроимпульсами.
Сканеры выбрали на корпусе шесть участков, под которыми проходил силовой набор. Из бортовых ниш раскрылись шесть роботизированных манипуляторов с комбинированными магнитно-механическими головками. Три рабочие руки осторожно легли на отмеченные точки и перешли в податливый режим, принимая возможный толчок без рывка. Еще три замерли в нескольких сантиметрах от обшивки, образовав страховочный контур: они не участвовали в захвате, но были готовы мгновенно перехватить челнок, если одна из основных опор сорвется.
После мягкого захвата автоматика стала рассматривать оба корабля как единую инерциальную систему. Рабочие манипуляторы погасили остаточное вращение и медленно развернули челнок, выравнивая плоскость люка относительно корвета. Резервные руки повторяли движение, сохраняя зазоры и не касаясь корпуса.
Только когда положение цели стабилизировалось, Арден сократил расстояние до двух с половиной метров. Штатный стыковочный узел «Саламандры» к круглому люку не подходил.
В кассетном отсеке корвета находилось несколько сменных модулей. Универсальное кольцо предназначалось для гражданских шлюзов, тяжелый военный пробойник мог за один проход вырезать люк и отстрелить его внутрь, убив всех кто есть на борту. Для спасательной операции Арден выбрал аварийный шлюзовой кессон - самый медленный, зато наиболее аккуратный вариант.
— Еще пятнадцать влево, - говорил Мейнер, глядя на экран. - Стоп. Теперь вниз на два.
— Плоскости сведены, цель удерживается, - доложил Мадсен. - Выдвигаю кессон.
Из нижнего технического отсека «Саламандры» вышла шарнирная стрела. На ее конце находился короткий жесткий цилиндр с широким сегментированным кольцом. Сзади к нему был присоединен сложенный многослойный переход, ведущий к шлюзовой камере корвета. Пока кессон не был закреплен, всю конструкцию удерживал манипулятор.
Мадсен подвел кольцо к борту челнока так, чтобы круглый люк оказался точно в его центре. Встроенный сканер отделил хрупкую теплозащиту от металлического силового кольца люка, определил его геометрию и допустимые точки приложения нагрузки. Вокруг проема раскрылись шесть коротких захватов. Каждый нашел свободный участок окантовки и сомкнулся на нем, не касаясь теплозащитных плиток.
Датчики нагрузки выровняли усилие между захватами и распределили его по силовому кольцу. Затем сегменты передней части кессона подстроились под плоскость люка. Два независимых пневматических уплотнения раздулись и плотно прижались к металлической окантовке, образовав между собой замкнутую контрольную полость. Дополнительные широкие опоры лишь гасили вибрацию, не повреждая обшивку. Резервные картриджи с быстрополимеризующимся составом оставались закрытыми и должны были сработать только при обнаружении утечки.
— Силовая фиксация есть, - сказал Мадсен. - Надуваю уплотнения и проверяю контрольную полость.
Насос подал в контрольную полость немного азота. Давление поднялось и замерло на штатной отметке. Система несколько секунд отслеживала его падение. Утечки не было; аварийные картриджи не понадобились.
— Оба уплотнения держат. Разворачиваю переход.
Только теперь сложенная оболочка между шлюзом «Саламандры» и кессоном расправилась. Она образовала короткий герметичный коридор, но не держала ни кессон, ни челнок - все усилия принимали жесткое кольцо и его опоры.
Арден сам перебрался в шлюз, чтобы проконтролировать окончательную установку. За прозрачным забралом медленно проплывали звезды, под ногами изгибалась освещенная кромка планеты, а прямо перед ним висел чужой корабль с вцепившимся в его борт аварийным модулем.
— Кессон закреплен, - доложил Мадсен. - Оба контура герметичны.
— Начинаем пробу атмосферы, - приказал Арден.
Встроенный зонд выдвинулся из внутреннего кольца и просверлил крышку люка в том месте, которое позже все равно должно было попасть под рез. Уплотнительная втулка сразу обжала отверстие. Через десять секунд на экране Мадсена появились цифры:
— Давление - 0,95 атмосферы. Кислород - 20,5 процента. Азот - 78 процентов. СО₂ - в норме. Известных токсинов нет.
Кессон заполнили воздухом до того же давления, что и челнок. Автоматика несколько секунд сводила показания двух контуров, пока разница не упала ниже допустимого порога, и только после этого разрешила работу с люком. Ольга ждала в шлюзе «Саламандры» с медицинским комплектом.
В центре наружной створки находилась широкая круговая рукоять -одновременно привод замков и удобный поручень. Металл, уплотнения и открытые детали механизма выглядели новыми и безукоризненно чистыми. Мадсен закрепил ботинки в петлях кессона, взялся за рукоять обеими руками и плавно повернул ее. По периметру люка один за другим отошли запирающие пальцы.
— Давление выровнено, замки открыты, - доложил он.
Мадсен осторожно надавил на створку. Освободившись от уплотнения, тяжелый круглый люк без рывка ушел внутрь кабины. За открывшимся проемом показалось темное нутро челнока.
Мадсен и Рейл первыми перебрались внутрь, подтягиваясь по поручням; следом переместился Арден.
3. Внутри
Мадсен первым втянулся внутрь; следом за ним перебрались Рейл и Арден. Убедившись, что ближайшее помещение безопасно, командир вызвал остальных. Ольга вошла с медицинским комплектом, за ней - Мейнер и Норр. Видеорегистраторы в шлемах работали с момента выхода из «Саламандры», записывая изображение, звук и телеметрию скафандров.
Круглый боковой люк вел прямо в тесный бытовой отсек нижнего уровня герметичной кабины. Над головой открывался узкий вертикальный проход в пилотскую рубку. Кормовую переборку занимал отдельный задраенный гермолюк, за которым находился грузовой отсек. Вдоль стен тянулись поручни, трубопроводы и остатки креплений демонтированного оборудования.
Почти все свободное место занимала громоздкая капсула с пластиковым основанием и прозрачным колпаком. Ее установили поперек продольной оси корабля, на месте снятых шкафов и спальных ячеек. Основание было притянуто к силовому набору несколькими кронштейнами, а к переборке уходили дополнительные кабели, газовые трубки и магистраль охлаждения. Капсула была заметно шире бокового люка: вынести ее целиком через открытый проем не получилось бы даже после полного демонтажа креплений.
Под прозрачным колпаком, сложив руки вдоль тела, лежала женщина. Она казалась молодой, на вид около двадцати пяти лет. Лицо - европейского типа, с правильными пропорциями, высокими скулами и тонким носом. Глаза закрыты. Длинные угольно-черные волосы свободно лежали вокруг головы.
Ее стройную, тренированную фигуру плотно облегала необычная черная ткань. Матовая, с мелкой органической фактурой, она скорее напоминала слой живой кожи, чем текстиль или полимер. Ни швов, ни пуговиц, ни застежек, ни разъемов видно не было. На талии ткань переходила в короткую юбку.
— Руки… - сбивчиво заметил Мадсен. - Типа перчаток… Странно… Похоже на какую-то биотехнологию. В жизни ничего подобного не видел! У нас такого нет.
— БДСМ какой-то, - негромко сказал Мейнер.
— Оскар... - сказала Ольга с укором.
— Молчу, доктор.
Арден задержался у капсулы лишь на несколько секунд.
— Ланская, проверь состояние. Рейл - помоги ей. Мейнер, осмотри корабль. Норр - с ним. Ничего не включать, панели не вскрывать. Фотографируйте и снимайте на видеорегистраторы все, что увидите. Мадсен - контролируй люк и кессон.
Мейнер оттолкнулся от переборки и направился к проходу наверх. Шлемный регистратор непрерывно снимал все, что попадало в поле зрения, но старпом дополнительно останавливался возле каждого необычного узла, делал фотографии высокого разрешения на коммуникатор и надиктовывал краткие технические пометки.
Ланская и Рейл закрепились у капсулы. Врач направила на незнакомку датчики сканирующего устройства. Парамедик раскрыл реанимационный комплект и приготовил транспортную сетку. Все замолчали в ожидании, пока прибор снимал показания.
Тем временем Мейнер и Норр поднялись в кокпит челнока. Здесь все выглядело гораздо привычнее: передние иллюминаторы, приборные панели, органы ручного управления и кресло командира корабля. Справа от него сохранились пустые крепления для места второго пилота. Силовые разъемы были закрыты штатными заглушками, линии связи аккуратно отсоединены, а кислородная арматура снята вместе с частью трубопроводов.
Кабину явно переделывали для одного человека. Часть приборов второго пилота перенесли ближе к оставшемуся креслу, экраны развернули на шарнирных кронштейнах, а наиболее важные функции продублировали на центральной панели. Пилот мог дотянуться до любого органа управления, не покидая ложемента. Работа выглядела не кустарной: лишние кабели не болтались, все отверстия были закрыты, а новая разводка учитывала и обслуживание, и перегрузки.
Следы намеренного облегчения встречались повсюду. Дополнительные кресла исчезли, шкафы и часть бытового оборудования были демонтированы, некоторые декоративные панели заменены тонкими съемными кожухами. Корабль готовили к одиночному полету и убирали каждый килограмм, без которого можно было обойтись.
Единственный скафандр, который они нашли, находился в бытовом отсеке - там же, где и капсула. Он хранился в узкой вертикальной нише, закрепленный на формованной раме и притянутый к переборке двумя широкими ремнями. Полужесткий корпус из светлого металла, толстые зеленовато-серые рукава и штанины со стегаными секциями и поперечными складками на суставах, массивные ботинки и круглый белый шлем с широким затемненным забралом выглядели так, словно комплект изготовили еще в Первую Космическую Эру. За спиной выступал плоский прямоугольный ранец жизнеобеспечения, на груди располагалась простая панель с механическими переключателями и стрелочными шкалами. Никаких обтекаемых кожухов или попыток скрыть функциональные детали - ткань, резина, светлый металл и открытые соединительные кольца. Но, как и все на челноке, скафандр был новым, без следов износа и явно подогнанным под размеры единственного пилота.
— Пульс - восемь ударов в минуту, - доложила Ольга по общему каналу. - Температура тела - 15,2 градуса. Метаболизм крайне замедлен. Причина пока неясна. Похоже на какую-то гибернацию.
— Она жива? - спросил Арден.
— Да. Но состояние близко к клинической смерти. Возможно, капсула поддерживает минимальный гомеостаз.
— Почему она не в скафандре?
Ланская пожала плечами:
— Возможно, это как-то связано с ее странной “спячкой”.
Мейнер еще раз обвел камерой кокпит и спустился в бытовой отсек. Норр остался наверху, заканчивая пассивную диагностику систем.
— Кабина полностью сведена под одного пилота, - сообщил старпом. - Второе место и все остальные кресла сняты. Ничего явно опасного не нашли. В закрытые ящики не лезли.
— Мы можем ее разбудить? - спросил Арден.
— Рискованно, - ответила Ольга. - Мы не знаем, что именно делает капсула и как ее безопасно вывести из этого состояния.
Командир оглядел корпус установки и заметил закрепленный сбоку небольшой пенал. Внутри находились инжектор и ампула, а рядом была прикреплена пластинка с простой инструкцией в пиктограммах: вставить ампулу, приложить инжектор к шее и нажать.
— А это что?
— Использовать неизвестную химию без предварительного анализа недопустимо.
Арден постучал перчаткой по массивному основанию капсулы.
— Тогда как мы ее вытащим? Эта штука не пролезет через шлюз.
Мейнер осмотрел крепления, проследил взглядом магистрали и покачал головой.
— Никак. Даже если все отсоединить, ее здесь не развернуть и не протащить через боковой люк. Для этого придется доставлять весь челнок в ангар и разбирать отсек. В полевых условиях можно вынести только саму женщину.
Ольга подняла руку:
— Стоп! Сначала надо убедиться, что капсулу вообще можно открыть. Она может подавать лекарства, регулировать температуру или поддерживать дыхание. Если просто вытащить тело, мы можем ее убить.
— Ладно, - Арден был явно раздосадован сложившейся ситуацией, но не терял самообладания. - Работаем по протоколу. Ланская, медицинская часть за тобой. Рейл - помогай ей и готовь эвакуацию. Мейнер, фиксируй конструкцию. Норр, проверь кормовой люк и грузовой отсек только внешними датчиками. Ничего не открывать.
Мейнер сфотографировал пиктограммы и отправил их на дешифровку бортовому компьютеру. Норр осмотрел кормовой гермолюк. На нем обнаружились независимый указатель перепада и контрольный штуцер. Подключенный к штуцеру датчик подтвердил: за переборкой практически вакуум.
Некоторое время Ольга внимательно осматривала капсулу, а затем уверенно сказала:
— Каких-либо приспособлений для инвазивного вмешательства не видно. Судя по пиктограмме, укол делается в шею. Значит, колпак можно снять, не нарушая работу внутренних систем.
— Хорошо. Ребята, работаем! Только аккуратней.
Ощупав бортик капсулы с внутренней стороны, Мадсен обнаружил несколько простых замочных механизмов и легко открыл их. Прозрачный колпак приподнялся на несколько сантиметров, словно створка раковины. В этот момент женщина внутри капсулы молча открыла глаза.
Взгляд был ясным, зрачки нормально реагировали на свет. Яркие изумрудные радужки с лаймовыми вкраплениями казались почти светящимися, незнакомка медленно подняла правую руку и выставила ладонь вперед - жест, не оставляющий сомнений: «остановитесь».
Укол ей сделать не успели. То есть, она как-то пришла в сознание сама и этот факт шокировал не только медиков.
Команда замерла. Слышен был только гул вентиляции.
Как только стало ясно, что к ней никто не приближатся, женщина оттолкнула прозрачный колпак. Затем, ощупав себя в поисках удерживающих ремней, она расстегнула застежки, слегка приподнялась и оглядела собравшихся людей, с любопытством изучая их скафандры, инструменты и лица за стеклами шлемов. Никакого страха - только настороженность и легкое любопытство.
Затем она заговорила на старом английском, с отчетливым произношением:
— Hello. Thank you for coming. I'm all right.
Арден знал английский на техническом уровне и сам говорить не мог, но понял основные слова. Ольга подтвердила:
— Она говорит, что в порядке.
— Спроси, кто она. И есть ли на борту кто-нибудь еще.
Ланская перевела вопросы. Женщина представилась. Ее звали Лиль. Она сказала, что ее ресурсы жизнеобеспечения крайне ограничены. Затем ответила отдельно:
— There's no one else aboard. I'm alone.
— Говорит, что она одна, - перевела Ольга.
Арден посмотрел на старпома:
— Проверить можем?
— Уже проверили, насколько это возможно без вскрытия, - ответил Мейнер. - На гермолюке есть независимый указатель перепада давления и контрольный штуцер. Норр подключил свой датчик: за переборкой практически вакуум. Сам грузовой отсек негерметичный. Людей там можно перевозить только в отдельном жилом модуле со своим воздухом, питанием и терморегулированием. Если сейчас открыть люк, мы просто выпустим весь воздух из кабины. Мы можем попробовать открыть внешние створки и заглянуть в него снаружи. Тут где-то должен быть механизм управления.
— Внесите в отчет. Грузовой отсек не вскрывать.
Пока Ольга переводила ответы, Мейнер закончил осмотр бытового отсека и заметил за капсулой пластиковый ящик, закрепленный на палубной панели. Мадсен, жестом доброй воли, показал на него и спросил разрешения посмотреть. Лиль утвердительно кивнула. Внутри оказались: огнестрельная автоматическая винтовка незнакомой конструкции, несколько магазинов с патронами, рюкзак с тюбиками еды и воды, бинты, медицинские инжекторы, и несколько фотографий - на них она позировала с парочкой вооруженных мужчин в военной форме на фоне зимнего пейзажа с заснеженными руинами какого-то города. Все трое, тем не менее, выглядели вполне счастливыми. А в отдельном отделении была закреплена короткая сабля в черных ножнах. Мейнер заметил ее, но не стал доставать - только мысленно отметил.
— Это все твое? - спросил Арден через Ольгу.
Лиль кивнула и добавила, указывая круговым жестом на свой челнок:
— Please take my things. Once we're clear here, I recommend you to send this ship into the atmosphere and burn it up. Leaving it intact could be dangerous.
Ольга перевела:
— Она говорит: заберите вещи. И рекомендует сжечь корабль в атмосфере после того, как мы покинем его. Оставить целым - опасно.
Арден помолчал, потом мрачно усмехнулся:
— Мы не занимаемся уничтожением чужих кораблей. Он просто упадет в атмосферу сам, или его подберет буксирная команда.
Лиль, услышав перевод, никак не отреагировала - только слегка сжала губы.
Наконец, она окончательно выбралась из капсулы, и все обратили внимание на ее пластику: движения были экономичными, точными, как у профессионального гимнаста или военного. Девушка не производила лишнего шума, не цеплялась за оборудование. Каждое ее движение казалось осознанным и хорошо контролируемым.
Настала пора покидать челнок, но Арден как будто бы о чем-то переживал и не мог уйти, не проверив.
Указав рукой в сторону кормы, он попросил Ольгу перевести:
— Наружные створки грузового отсека открываются из кабины?
Поняв, что им требуется, Лиль сразу утвердительно кивнула. Без промедлений девушка жестом предложила двигаться за ней и подлетела к кормовой переборке, где сдвинула крышку утопленного в стену терминала и вывела на экран схему грузового отсека. Отдельный блок управлял наружными створками. Но вместо команды открытия девушка нажала соседнюю клавишу, затем откинула защитную шторку небольшого иллюминатора рядом с гермолюком.
За толстым стеклом вспыхнул свет.
Мейнер и Норр по очереди приблизились к иллюминатору. За переборкой тянулся негерметичный грузовой отсек: пустые направляющие, свободные крепления, кабельные короба и несколько массивных кожухов сложного оборудования. Назначение этих блоков по внешнему виду определить было невозможно. Ни отдельного жилого модуля, ни людей в отсеке не было видно. В сочетании с показаниями датчиков, этого ему показалось достаточно, чтобы успокоить совесть.
— Спасибо, - сказал Арден. - Пожалуй, створки открывать не будем. Пора отчаливать.
Казалось, Лиль его поняла; деловито выключила свет, закрыла шторку и вернула крышку терминала на место. Теперь, когда все формальности были соблюдены, девушка на секунду замерла перед открытым люком мобильного шлюза, словно бы задумавшись о его надежности, после чего решительно принялась надевать свой скафандр. Ланская задержалась, чтобы ей помочь.
К тому моменту, когда они закончили, командир уже выпроводил всех остальных.
Лиль не заставила себя долго ждать и тоже полезла в шлюз.
На левом предплечье скафандра Ардена был закреплен пульт связи, который в экипаже из-за характерной формы корпуса прозвали «пианино». На нем располагался ряд крупных плоских клавиш: общий, командный, технический и медицинский радиоканалы. Нажимать их можно было даже в тяжелых перчатках - у основания большого пальца для этого обычно делались специальные плотные упоры. Ольга нажала белую клавишу.
— Это ненормально, - сказала она, как только Арден обернулся.
— Ты о чем?
— После выхода из комы так не скачут. Так просто не бывает!
Арден принял это к сведению, но ничего не ответил.
________________
Возвращение на «Саламандру» занял около часа. Сначала через кессон переправили ящик с вещами Лиль и закрепили его в бывшем десантном отсеке, теперь оборудованном для перевозки пассажиров. Затем Ланская помогла Лиль перебраться через внешний шлюз и скафандровый тамбур в тот же отсек.
У люка медицинского модуля их уже ждал Рейл. Он успел раньше вернуться на корвет, пройти санитарную обработку и сменить космический скафандр на герметичный медицинский костюм с прозрачным капюшоном и автономным дыхательным блоком. Пока остальные заканчивали работу на челноке, парамедик проверил вентиляцию, связь, санитарный узел и подготовил воду и запас пастеризованного рациона.
Ольга указала Лиль на открытый люк и объяснила, что дальнейший осмотр проведут внутри. Лиль без возражений направилась в медицинский отсек. Дождавшись, пока Рейл закроет за ней переборку и переключит вентиляцию модуля на отдельный контур, Ланская прошла через санитарный отсек и присоединилась к своим товарищам в передней части корабля.
Мадсен и Мейнер покинули челнок последними. Перед тем как окончательно выбраться в кессон, Мадсен подвел створку люка к проему. Уже снаружи он взялся за круговую рукоять, притянул люк к уплотнению и повернул механизм до упора. Запирающие пальцы один за другим вошли в гнезда. После проверки герметичности воздух из кессона откачали обратно в систему «Саламандры».
Захваты один за другим разжались и освободили силовое кольцо люка. Сегментированное кольцо отошло от борта, а манипулятор втянул шлюзовой модуль в кассетный отсек. Круглый люк остался закрытым в штатном положении.
Три роботизированные руки поочередно отпустили нагрузку и разомкнули захваты. Страховочные оставались наготове, пока корвет не начал отходить от челнока. Лишь когда дистанция стала безопасной, все шесть манипуляторов аккуратно сложились в специальные бортовые ниши.
Вернувшись на корвет, все участники осмотра поочередно прошли через санитарную камеру. Скафандры обильно окатили дезинфицирующим раствором, после короткой выдержки обработали струями пара и продули горячим воздухом. Когда штатный цикл завершился, внутренняя переборка открылась, и спасатели перешли в жилую часть корабля, где смогли снять шлемы.
________________
4. Обратный путь
Когда шлюзовой модуль убрали в кассетный отсек, «Саламандра» отошла от челнока. Еще во время эвакуации поступило распоряжение доставить неизвестную не обратно на базу в «Переходе», а прямо на Лагаш, где находились администрация и командование. Переход к геостационарной орбите станции должен был занять около девяти часов. В кабине корвета повисла тяжелая тишина. Все понимали, что произошло нечто из ряда вон выходящее.
В медицинском отсеке Рейл помог Лиль закрепиться у аварийного шкафа. После проверки давления и состава воздуха она сняла шлем, затем выбралась из тяжелого пилотского скафандра и поместила его в свободную секцию. Парамедик передал ей бутылку воды. Лиль выпила почти всю, после чего подтянулась к ближайшему откидному креслу и закрепилась ремнями.
Рейл провел первичное бесконтактное обследование встроенными сканерами. Лиль разрешила осмотр, но отказалась от проб крови, инъекций и любых других вмешательств. Она находилась в сознании, отвечала связно и явно понимала возможные последствия, поэтому парамедик зафиксировал отказ и оставил ее под наблюдением. Через некоторое время он покинул модуль через внутренний санитарный шлюз, а Лиль осталась одна в медицинском отсеке.
Арден остался в рубке, но через минуту перебрался в маленькую кают-компанию, примыкавшую к карантинному модулю: ему хотелось посмотреть на гостью вблизи. Ольга уже закрепилась у смотрового окна с медицинским планшетом. Лиль находилась по другую сторону герметичной перегородки; прежде чем заговорить, Ланская включила интерком.
— Что произошло? - спросила Ольга ровным, профессиональным тоном. - Как вы здесь оказались?
Лиль перевела на нее взгляд. Изумрудные радужки с лаймовыми вкраплениями казались особенно яркими в свете ламп отсека.
— I understand why you're asking, - ответила она на английском, медленно, подбирая слова. - But I can't explain everything here. My situation is complicated. When we arrive, I need to speak with your commanding officer.
Ланская перевела это Ардену. Тот нахмурился:
— То есть вы не скажете нам, кто вы и откуда?
Лиль слегка улыбнулась - без тени насмешки, скорее с оттенком усталости:
— I'll explain, but not here. It wouldn't be safe for you. I don't want to put you in danger. I'm grateful you came for me, but some things shouldn't be discussed here, or even on a rescue ship.
Командир переглянулся с Мейнером. Тот пожал плечами.
— Ладно, - сказал Арден. - Ваше право. Но мы должны доложить о вас. И если вы представляете угрозу…
— I'm not a threat, - перебила Лиль, и голос ее стал тверже. - For you, at least.
Она замолчала, давая им переварить сказанное.
Мейнер кашлянул:
— А что там, на корабле, такого опасного?
Лиль покачала головой:
— You'd better not know.
Она сказала это спокойно, почти буднично, но в ее словах чувствовалась уверенность человека, который понимает, о чем говорит.
Арден вздохнул:
— Ладно. Мы передадим вашу просьбу. А пока оставайтесь здесь и ничего не трогайте. Воспользуйтесь интеркомом, если что-то понадобится.
Лиль кивнула и откинулась на спинку кресла, закрыв глаза.
Ольга посмотрела на Ардена, тот махнул рукой - мол, оставь ее, после чего выключила интерком и отстранилась от стекла.
Через час, когда курс окончательно установился, экипаж закрепился вокруг откидного стола в маленькой кают-компании.
— Как долго она не ела? - спросил командир. - Может, стоит ее покормить?
— После такой гибернации я решила сначала ограничиться водой и понаблюдать, - ответила Ольга. - Показатели стабильны… Температура повышена. Но я думаю, уже можно.
— У нас в медицинском модуле есть стерильный рацион, - напомнил Рейл.
— Тогда покажите ей, где он лежит. А заодно закончите опись вещей.
Ольга и Мейнер снова надели герметичные медицинские костюмы и через санитарную камеру перешли в пассажирский отсек. Ящик Лиль оставался закрепленным в бывшем десантном отсеке, рядом с люком медицинского модуля. На челноке его содержимое осмотрели наспех: зафиксировали находки, убедились, что среди них нет ничего внезапно-опасного, и подготовили груз к эвакуации. Теперь у них было время изучить вещи по-настоящему.
Лиль наблюдала за ними через обзорный экран возле внутреннего люка. Мейнер освободил винтовку из фиксаторов, отстегнул магазин, оттянул затвор назад и проверил патронник.
— Не новая, - заключил он. - Затвор приработан, на деталях характерный износ. Из нее стреляли. И не раз.
Ольга тем временем проверяла бинты, медицинские инжекторы и тюбики. Одну из ампул она поднесла к лампе; на просвет стала различима мелкая английская маркировка.
— Трамадол, - прочитала Ольга. - Наркота. Такое используют при тяжелых ранениях.
Вернув винтовку на место, Мейнер открыл узкое отделение под ней. Короткую саблю он заметил еще на челноке, но тогда не стал даже вынимать ее из ножен. Теперь освободил фиксатор и осторожно вытянул клинок примерно наполовину.
Темное лезвие отливало, словно полированный обсидиан. У самой гарды виднелась короткая гравировка из нескольких незнакомых знаков, чем-то напоминающих хинди.
— Похожа на вакидзаси, - пробормотал Мейнер. - Но не сувенир. Подгонка безупречная... Черт, а красивая штука…
Ольга смотрела на него широко раскрытыми глазами, которые выдавали ее эмоции лучше всяких слов.
— Такие вещи не таскают с собой просто так… Не в наших краях, по крайней мере.
Лиль видела, как Мейнер возится с оружием, но не проявляла никакой заинтересованности. Зато когда Ольга достала из рюкзака несколько пищевых тюбиков, девушка сразу выпрямилась и заметно оживилась, даже заулыбалась.
— Кажется, мы вовремя вспомнили про еду, - сказала Ланская.
Рейл находился у смотрового окна с чистой стороны. Он включил интерком, привлек внимание Лиль и показал на один из шкафчиков внутри медицинского модуля.
— Food, - сказал он, а затем указал на защелку.
Лиль поняла сразу. Едва шкафчик открылся, она извлекла первый тюбик штатного аварийного рациона, сорвала колпачок и без лишних церемоний принялась деловито выдавливать содержимое себе в рот. Судя по скорости, с которой исчез первый тюбик, все время до этого она лишь терпеливо ждала, пока хозяева корабля закончат свои процедуры.
Ольга взглянула на медицинский планшет и нахмурилась.
— У нее не спадает темпратура. Тридцать семь и шесть.
Она включила интерком:
— Your temperature is high. Thirty-seven six. How do you feel?
Лиль оторвалась от второго тюбика:
— It's normal. I’m fine.
После чего повернулась к обзорному окну и добавила, вложив в свою улыбку максимум обаяния:
— I'm just a really hot girl.
Ольга несколько секунд молча смотрела на нее.
— Говорит, что для нее это нормально, - сухо перевела она.
Мейнер усмехнулся:
— Ну-ну...
— Мы нашли у вас оружие, - продолжила Ланская и спросила по-английски: - Why do you keep weapons? What were you going to do with them?
— Actually, I tend to think of weapons as fashion accessories. Not in your part of the world, perhaps, - с легкой, почти провокационной усмешкой ответила Лиль. - And, of course, they do come in handy. Just in case...
— Упражняется в остроумии, - коротко пояснила Ольга без особого восторга от услышанной шутки.
Впрочем, закончив трапезу и без затей вытерев губы рукавом, девушка стала серьезнее:
— I had to defend myself. It seems I won't be needing that long-range toy anymore. The blade is different. Until your command decides what happens next, you may keep it in custody, but it remains mine and must be returned to me.
Ольга перевела ее ответ Мейнеру.
— Мы не сможем гарантировать ей возврат оружия, - сразу предупредил Мейнер. - У нас это незаконно.
Как будто догадавшись, о чем он говорит, Лиль слегка нахмурилась.
— I don't even want to imagine such a situation. It's a matter of an old and significant military tradition. A matter of honor if you prefer: I'm an officer, and I can't simply lose or surrender my personal weapon. I think you should understand that perfectly well.
Ольга перевела и это.
Мейнер некоторое время молча смотрел на нее через экран и хлопал ресницами в некоторой растерянности.
— Во дает… Хм… Ну да ладно… Хорошо. Доложу командиру.
Оружие вернули в фиксаторы, ящик закрыли и оставили закрепленным в бывшем десантном отсеке. По прибытию на Лагаш, экипаж должен был передать его станции отдельно.
Когда Мейнер вернулся на свое место, Арден уже сидел в командирском кресле и просматривал материалы, записанные в ходе осмотра челнока. На главном экране сменяли друг друга записи камер личных видеорегистраторов, фотографии приборных панелей, места с демонтированным оборудованием, переделки кокпита, капсула с Лиль.
— Че, не захотел нашу красотку навестить? - спросил старпом с улыбкой.
— Она не “наша”, - серьезно ответил Арден.
— Так ясен пень… Тем интересней.
— Я о другом. Дело в том, что гиперпрыжки на челноках такого размера все же реальны.
— Ну… Строго говоря, да - вполне возможны… Только при этом… - Мейнер принялся загибать пальцы. - Проблемы с навигацией… Проблемы с жизнеобеспечением… С топливом… И…
— Нормально у нее с навигацией, - перебил Арден.
Мейнер промолчал.
На экране застыл крупный снимок пилотского места чужого челнока. Мейнер несколько секунд молча рассматривал массивные органы ручного управления, отдельные приборные блоки и кабельные трассы, уложенные вдоль переборок.
— Машина как будто из Первой Космической Эры, - наконец произнес он. - Все собрано безукоризненно, но сама архитектура... Так уже тысячи лет не строят.
— Но при этом без следов износа и старения, - заметил Арден. - Корабль построили и подготовили к пуску недавно.
— Не обязательно недавно для нас, - возразил Оскар. - Один из первых испытателей ушел в короткий прыжок, закономерно промахнулся с выходом и вывалился спустя несколько тысяч лет. Вот тебе и “первоходы”! Для нее могла пройти всего неделя. Да ты посмотри - тут все какое-то обычное, - констатировал он. - Я не про обстановку, а про детали: это ведь не их конструкция. Не их инженерный стиль. Это все сделано людьми. Такими же как мы с тобой.
— Откуда тебе известно, какой у них инженерный стиль? - спросил командир и вывел рядом схему орбиты, рассчитанную диспетчерской Лагаша. - Ты просто натягиваешь сову на глобус - потому что в данном случае так кажется проще.
Мейнер тяжело вздохнул и потер ладонью подбородок:
— Тут с тобой трудно поспорить.
— Глаза ее видел?!
— Ну и что?! - старпом оживился. - Баба как баба! Подумаешь - странная слегка. Сейчас каких только не делают мутантов… Закапал какую-нибудь химию - и будут у тебя не глаза, а натурально галогеновые фары! Сиськи вырастут и жопа… даже хвост если потребуется - да все что хочешь! А у нее и барахло подписано английским... Зачем ей тогда трамадол по-твоему в аптечке? Ты ведь не хочешь сказать, что у них та же биология...
Арден пожал плечами:
— Корабль и барахло украла где-нибудь… А трамадол для нас. Чтобы привести в чувства, если что.
— Да ну, не может быть!..
— Еще как может, Оскар!.. Еще как может.
За полчаса до стыковки экипаж снова облачился в скафандры и закрыл шлемы. По протоколу передачи неизвестного человека изолированный медицинский модуль следовало открывать только после перехода всей бригады в герметичную защиту. Корвет медленно приближался к станции. Звезды за иллюминатором казались неподвижными.
________________
5. Прибытие
Корвет вошел в створ служебного причала на минимальной скорости. После мягкого захвата станционные фиксаторы подтянули его к стыковочному узлу, сомкнули силовые замки и подключили линии связи и обслуживания. Стыковочный переход оставался закрытым, пока автоматика обеих сторон проверяла герметичность соединения.
К этому времени весь экипаж уже находился в закрытых скафандрах в пассажирском отсеке. Лиль оставалась в медицинском модуле. Прежде чем станция разрешила открыть переход, на защищенном командном канале появился служебный вызов. Идентификатор абонента принадлежал Федеральной Службе Безопасности.
— Капитан Арден, порядок передачи следующий, - произнес незнакомый мужской голос. - Обнаруженная женщина должна надеть герметичный скафандр и выйти одна. Руки держать на виду. Экипажу остается на борту. Личные вещи и оружие пока не трогать. После завершения передачи объекта ожидать дальнейших распоряжений. Вас заберут чуть позже.
— Принял, - ответил Арден. - Потребуется несколько минут на подготовку.
— Хорошо. Как только справитесь - доложите о готовности.
Арден сразу вывел интерком медицинского модуля на командный канал. Ольга находилась у смотрового окна с медицинским планшетом и перевела распоряжение. Лиль спокойно выслушала ее, взглянула на закрепленный у переборки скафандр и едва заметно улыбнулась.
— A sensible precaution, - сказала она.
— Говорит, что мера предосторожности разумная, - перевела Ольга.
Скафандр Лиль оставили вместе с ней в медицинском модуле после отдельной санитарной обработки. Она освободила фиксаторы, развернула тяжелый костюм и начала облачаться без посторонней помощи. Двигалась при этом уверенно и точно, словно это была ее любимая пижама. Ольга помогла только подать шлем и проверить недоступные со спины соединения.
Лиль последовательно закрыла гермозамки, включила ранец жизнеобеспечения и дважды проверила стрелочные шкалы на нагрудной панели. Когда на воротнике загорелся зеленый индикатор герметичности, она защелкнула шлем и подняла большой палец.
Арден доложил станции о готовности. Только после этого автоматика разрешила открыть люк. Давление в коротком стыковочном переходе выровняли с атмосферой корабля; дальняя дверь со стороны станции пока оставалась закрытой.
Лиль вышла из медицинского модуля в бывший десантный отсек. Остальные ждали у входа в тамбур, где хранились скафандры, не пересекая внутреннюю линию безопасности. Ланская еще раз повторила распоряжение: пройти на станцию и после открытия наружного люка держать руки на виду.
Лиль кивнула, затем задержалась перед входом в тамбур и обвела взглядом собравшийся там экипаж.
— Thank you for everything. Take care.
— Она говорит: «Спасибо за все. Берегите себя», - перевела Ольга.
— Farewell, - ответил Арден.
Лиль слегка улыбнулась, перебралась в шлюз, закрепилась у специального поручня страховочным ремнем и дождалась, пока люк за ее спиной закроется. Автоматика проверила замки и герметичность камеры. Арден доложил станции:
— Пассажир в шлюзе. Внутренний люк закрыт.
Несколько секунд ничего не происходило. Затем давление в камере выровняли с атмосферой станции. Девушка спокойно ждала, удерживаясь одной рукой за поручень.
Только когда перепад сошел на нет и обе системы подтвердили герметичность, открылся выход наружу. Там ее ждали двое мужчин в облегченных герметичных костюмах химической защиты с прозрачными капюшонами и автономными дыхательными блоками.
Лиль показала им руки, развернув ладони квурху, и переместилась дальше. Старший оперативник коротко указал ей, где остановиться. Никто не приближался и не пытался к ней прикоснуться.
Как только она покинула шлюз, наружный люк «Саламандры» закрылся.
Из динамика снова раздался тот же спокойный голос:
— Передача объекта завершена. Экипажу пройти заключительную дезинфекцию, затем собраться в кают-компании и ожидать дальнейших распоряжений.
Арден подтвердил приказ.
Санитарную камеру устанавливали уже после передачи «Саламандры» спасательной службе. В закрытых скафандрах в ней свободно помещались только четверо, поэтому обработку пришлось проходить в два приема.
Первыми внутрь вошли Ольга, Рейл, Мадсен и Норр. Когда обе переборки закрылись, форсунки обильно окатили их скафандры дезинфицирующим раствором. После короткой выдержки по наружным поверхностям несколько раз ударили струи пара, нагретого до ста двадцати градусов. Затем камеру продули горячим воздухом.
На панели последовательно загорелись зеленые индикаторы. Они означали, что все этапы цикла выполнены штатно. Первая группа перешла в жилую часть корабля. Следом ту же обработку прошли Арден и Мейнер.
Собравшись в кают-компании, экипаж закрепился возле кресел и поручней.
Несколько минут из динамика не доносилось ничего. Затем появился тот же спокойный голос:
— Снимите шлемы.
У Ланской округлились глаза от удивления.
— Что?!
Казалось, командир тоже слегка опешил от такого странного приказа, но тут же взял себя в руки.
— Выполняем, - приказал он после короткой паузы. - Кают-кампанию не покидать.
Один за другим разомкнулись гермозамки. Мадсен снял шлем и закрепил его на ближайшем фиксаторе. Рейл сделал то же самое. Ольга откинула забрало и убрала волосы с лица. Норр продолжал следить за давлением на переносной панели. Мейнер последним освободил воротниковое кольцо и недовольно пробормотал что-то насчет бюрократии.
Арден снял свой шлем и пристегнул его к поручню.
— Экипаж Экипаж «Саламандрыы» к опросу готов, - доложил он.
В ответ тишина.
А потом наступил вакуум.
По аварийному сервисному каналу пришла команда, одновременно закрывшая гермопереборки по обе стороны кают-компании и открывшая клапаны аварийного сброса ее воздушного контура. Воздух рванулся в отводящие магистрали.
Норр первым понял, что происходит, и ударил ладонью по большой кнопке ATMOSPHERE RESTORE на ближайшем пульте управления. При сохраненной герметичности она должна была остановить откачку и вернуть воздух в отсек. Но местное управление уже было заблокировано из ЦУПа. Ольга попыталась вернуть шлем на воротниковое кольцо, однако мощный воздушный поток вырвал его из рук. Рейл и Мадсен бросились к своим фиксаторам. Мейнер успел только обернуться к командиру. Давление падало слишком быстро; через несколько секунд движения потеряли всякую осмысленность.
Арден увидел, как его люди один за другим обмякли в страховочных петлях, и потянулся к лежавшему рядом шлему. Пальцы уже не слушались. Сознание погасло прежде, чем он сумел коснуться замка.
В кают-компании воцарилась тишина. За закрытыми переборками остальные отсеки «Саламандры» сохраняли давление, панели продолжали работать, а закрепленные предметы оставались в своих фиксаторах. Для старого военного корвета аварийная изоляция и разгерметизация отдельного отсека была предусмотренным конструкцией режимом.
В станционном приемном отсеке оперативники наблюдали за показаниями датчиков и изображением внутренних камер корвета. Старший дождался, пока последний человек перестал двигаться, затем перевел тумблер на пульте. Клапаны закрылись, заработали насосы, и давление начало медленно восстанавливаться.
Через несколько минут на борт поднялась группа в герметичных комбинезонах. Тела поместили в черные транспортировочные мешки и переправили на станцию. Шлемы и скафандры собрали. Записи регистраторов, коммуникаторы, медицинские данные, технические пометки Мейнера и диагностические журналы Норра скопировали в закрытый служебный архив, после чего удалили с корабля и личных устройств. Панели протерли, системы жизнеобеспечения перезапустили. На пульте один за другим снова загорелись зеленые индикаторы.
После санитарной обработки и технической проверки «Салли» можно было возвращать в строй.
________________
6. Диспетчер
Весс продолжал следить за «Саламандрой» и после завершения спасательной операции. Корвет отошел от неизвестного челнока, выполнил первый разгонный импульс и лег на траекторию к Лагашу.
Почти сразу на обзорном экране появилась новая цель.
Она отделилась от одного из военных причалов «Энлиля» и направилась к оставленному кораблю. Транспондер не работал, в полетных таблицах не было ни маршрута, ни номера задания, ни обязательного уведомления о выходе. На экране двигалась лишь немая радиолокационная метка.
Весс увеличил изображение и вывел рядом расчетные характеристики. По размерам, ускорению и манере движения цель походила на тяжелый буксир ВКСАФ.
Буксир шел прямо к челноку.
Весс некоторое время наблюдал за его маневром, затем свернул окно. Формально спасательная операция завершилась. «Саламандра» возвращалась на базу, а дальнейшее находилось вне его компетенции.
Однако забыть увиденное не получилось.
В техникуме Весс изучал «Постулаты ГПТ» вместе с орбитальной механикой, навигацией и правилами аварийной безопасности. Там подробно разбирались ошибки выхода, ограничения приводов и работа Врат. Но ничего похожего на появление малого челнока почти точно на заданной орбите он в учебнике не встречал. Зато такие примеры встречались в легендах о Тульской войне. В них маленькие корабли противника появлялись возле охраняемых объектов, отрабатывали по цели и исчезали прежде, чем силы местной обороны успевали открыть ответный огонь.
За девять часов обратного перехода у Весса было достаточно времени, чтобы несколько раз сопоставить известные ему факты.
Загадочный челнок возник из ниоткуда. Его конструкция не предполагала наличия места для громоздкого оборудования, необходимого для гиперпрыжка. Спасатели кого-то или что-то обнаружили на борту, после чего получили приказ возвращаться прямо на Лагаш. Сам челнок остался на орбите, а за ним немедленно отправили военный буксир без транспондера и полетного плана.
Но всякий раз, когда Весс пытался сделать из этого хоть какой-нибудь вывод, он одергивал себя. Он даже не знал, что именно находилось в челноке. Возможно, все объяснялось гораздо проще.
В 09:10 «Саламандра» вошла в зону непосредственного управления станцией и состыковалась со служебным причалом. Ее маршрутная метка остановилась у внешнего кольца Лагаша, а навигационный статус сменился на штатный:
Весс уже собирался закрыть карточку рейса, когда на техническом канале вспыхнуло предупреждение:
Он выпрямился и придвинулся к экрану.
Сообщения такого класса бортовая автоматика передавала самостоятельно. Их получали ближайшие диспетчерские центры, аварийные службы и суда в зоне связи. Система не раскрывала внутреннюю телеметрию и не объясняла, что именно произошло: разгерметизация, пожар, отказ вентиляции или опасное изменение состава атмосферы. Она просто сообщала всем вокруг, что на борту возникла угроза жизни.
Передачу можно было отключить вручную - например, во время ремонта, специальных испытаний или закрытой военной операции. Но по умолчанию она оставалась включенной. Считалось, что лучше поднять ложную тревогу, чем позволить кораблю молча погибнуть у всех на глазах.
Кто-то на служебном причале, очевидно, об этом забыл.
Весс подождал несколько секунд. Предупреждение не исчезло.
Он вызвал корвет на рабочей частоте:
— «Саламандра», Лагаш-контроль. Подтвердите состояние борта.
Ответа не последовало.
— «Саламандра», прием. У вас активен аварийный сигнал системы жизнеобеспечения.
Тишина.
Весс переключился на аварийный канал, затем попробовал вызвать Ардена по персональному служебному идентификатору. Никто не ответил.
Тогда он связался с диспетчерской служебного причала.
На экране появилась усталая женщина в форменной блузке - Весс несколько раз видел ее на общих совещаниях, хотя имени не помнил.
— Док-четыре, контроль. У состыкованной «Саламандры» активен сигнал “сигнал “LIFE SUPPORT WARNING””. Экипаж не отвечает. Что у вас происходит?
Женщина на секунду отвела взгляд, словно слушая кого-то рядом.
— Ситуация под контролем. С этим делом занимается Федеральная Служба Безопасности. Дополнительная помощь не требуется. Пожалуйста, вернитесь к своим делам.
— У них аварийный сигнал жизнеобеспечения.
Лицо женщины сделалось напряженным.
— Дарио, я передала информацию. Конец связи.
Канал закрылся.
Весс медленно снял гарнитуру.
Предупреждение продолжало гореть.
Как руководитель смены он должен был немедленно запустить аварийный протокол: направить запрос станционной службе, известить центральный ЦУП и зафиксировать отсутствие ответа экипажа в общей оперативной системе. Решение теперь зависело от него - переложить его было не на кого.
Палец уже лежал над нужной строкой меню.
Весс снова посмотрел на метку «Саламандры».
Потом открыл архив наблюдений и нашел безымянную радиолокационную цель, ушедшую от «Энлиля» к оставленному челноку. В полетных таблицах ее по-прежнему не существовало.
И только теперь он понял, чем занимается.
Он поднимал архивы, запрашивал подтверждения и оставлял в системе следы операции, которую военные не внесли в полетные таблицы. Причем делал это не один: распоряжения Весса выполняла вся смена. Операторы сопровождали цель, связисты сохраняли эфир, дежурный координатор передавал сообщения аварийным службам.
Весс убрал руку от консоли.
Разрозненные детали, которые он девять часов старательно не связывал между собой, внезапно сложились в некую цельную картину.
Челнок появился почти точно на заданной орбите, хотя не имел нормального ГПТ-привода. Спасатели нашли внутри что-то достаточно важное, чтобы их немедленно направили на Лагаш. За самим кораблем отправили военных. Теперь экипаж «Саламандры» не отвечал, система жизнеобеспечения подавала тревогу, а служебный причал упоминал ФСБ и прервал сеанс связи.
Внезапно его охватил страх.
Если находка действительно имела отношение к технологии гиперпереходов, могла начаться война.
С кем?
Да с кем угодно!
Акадская Федерация буквально только что незаконно вышла из состава королевства Ольден. Одним из лейтмотивов партии сепаратистов стал мораторий на развитие наукоемкой промышленности и собственного кораблестроения, который метрополия требовала соблюдать по меньшей мере до полной выплаты кредита за терраформинг. А теперь на орбите Ашур-Картага появилось нечто, способное одним махом превратить молодое государство из должника и сырьевого придатка в обладателя передовой технологии, за которую великие державы готовы перегрызть друг другу глотки.
Ольден мог объявить находку своей собственностью.
Объединенные силы ООН могли потребовать немедленной передачи объекта под международный контроль.
В дело могли вмешаться корпорации, государства и военные союзы, уже считавшие себя законными бенефициарами любых обнаруженных образцов чужих технологий.
А если все это имело отношение к ШакАр - дело еще хуже. Гораздо хуже. Условия капитуляции Старого Альянса запрещали покушаться на их технологии, а сама такая попытка могла быть истолкована ими как казус белли.
Весс уже нафантазировал себе закрытые доки, исчезнувшие записи, аресты, дипломатические ультиматумы и эскадры, входящие в систему одна за другой.
Потом воображение шагнуло еще дальше: повсюду появляются неизвестные корабли и принимаются методично выжигать все вокруг - и за несколько часов от Лагаша, Ашур-Картага и всей Акадской Федерации остаются только радиоактивные руины.
Но это все будет позже. А сначала исчезнут спасатели, диспетчеры и другие случайные свидетели…
За такое действительно могли убить.
Весс почувствовал холод и озноб - у него задрожали руки.
Сначала едва заметно, потом сильнее. Он спрятал их под краем консоли и украдкой оглядел диспетчерскую.
Все оставались на своих местах. В соседнем секторе оператор ругался с капитаном опоздавшего грузовоза. Кто-то пил кофе, кто-то просматривал маршрутные заявки, из дальнего ряда доносился негромкий смех. По центральному экрану двигались сотни обычных меток.
Большинство этих людей видели лишь отдельные части случившегося. Но именно Весс собирал их доклады, запрашивал подтверждения и раздавал команды. Если кто-то решит зачищать свидетелей, начнут с него. А потом могут пройтись по всей смене.
Никто даже не смотрел в его сторону.
И все равно, ему казалось, что сейчас за спиной остановится незнакомый человек и спокойно попросит пройти в один из служебных кабинетов.
Усилием воли он заставил себя прекратить рефлексию.
Если произошла обычная авария, причал уже о ней знал. Если там, и правда, работали ребята из ФСБ - еще один вызов ничего не изменил бы. А если спасатели привезли на Лагаш тот самый «подарок», из-за которого молодые государства внезапно становятся великими державами или перестают существовать, свидетелей вполне могли посчитать лишними.
Весс закрыл архив наблюдений.
Прошла минута.
Потом еще одна.
Никто не подошел.
Статус “LIFE SUPPORT WARNING” погас.
В карточке «Саламандры» появилась короткая служебная отметка:
Конечно, Весс догадывался, что это значит.
Но к этому времени он уже справился с эмоциями. Весс взял термос, сделал глоток остывшего чая и вернулся к журналу происшествий.
Дарио тщательно подбирал формулировки, стараясь не навлечь беду на себя и своих людей. В журнал он внес только то, что уже невозможно было скрыть: время обнаружения, параметры цели и передачу сигнала бедствия. Фамилии операторов, участвовавших в сопровождении, Весс не указал. Он оставался руководителем смены и отвечал за них - даже теперь, когда понятия не имел, чем эта ответственность могла обернуться.
Грузовые корабли медленно курсировали до станции Танис в точке Лагранжа и обратно, еще один пассажирский лайнер готовился к стыковке, военный спутник заканчивал калибровку. Жизнь шла своим чередом.
А остальное - не его ума дело.
madChess устанавливается на Android из файла APK. Поскольку приложение загружается не из Google Play, система может показать несколько предупреждений безопасности. Устанавливайте APK только в том случае, если он получен с официальной страницы madChess.
Для большинства современных телефонов и планшетов подходит версия arm64-v8a. Если Android не сообщил архитектуру процессора, сначала попробуйте обычную 64-битную сборку. К 32-битной версии имеет смысл переходить только тогда, когда 64-битная не устанавливается.
Обычная установка из браузера
1. Скачайте APK
Нажмите кнопку скачивания на странице madChess и дождитесь полной загрузки файла. Не открывайте APK, пока загрузка не завершилась.
2. Откройте загруженный файл
Нажмите на уведомление о завершённой загрузке или откройте APK в папке «Загрузки». Если Android предложит выбрать программу, укажите «Установщик пакетов». Достаточно варианта «Только сейчас».
3. Подтвердите установку
В окне системного установщика проверьте название приложения madChess и нажмите «Установить».
4. Пройдите проверку Google Play Защиты
Google Play Защита может предложить проверить приложение, потому что оно устанавливается впервые и не загружено из магазина. Безопаснее согласиться на проверку, а не отключать защиту целиком.
На некоторых версиях Android появляется дополнительный выбор. Нажмите «Проверить это приложение», чтобы проверить только устанавливаемый APK.
После сообщения о том, что приложение безопасно, нажмите «Установить».
5. Запустите приложение
Когда появится сообщение «Приложение установлено», нажмите «Открыть». Кнопка «Готово» завершит установку без запуска.
Первый запуск
При первом запуске madChess создаёт локальный профиль. Он позволяет начать работу без регистрации, но сетевые функции требуют учётной записи.
Для сетевой игры можно зарегистрироваться по электронной почте либо добавить поддерживаемый внешний профиль. Сделать это можно сразу или позднее в настройках приложения.
Если Android запрещает установку из этого источника
Такое сообщение появляется, когда браузеру или файловому менеджеру ещё не разрешено запускать APK. Разрешение выдаётся не всем приложениям сразу, а только той программе, из которой вы открываете файл.
1. Откройте APK в файловом менеджере
Найдите файл в папке «Загрузки» и нажмите «Установить».
2. Перейдите в настройки источника
Если телефон блокирует установку, нажмите «Настройки».
3. Разрешите установку только для этой программы
Включите переключатель «Предоставление разрешения» или «Разрешить установку из этого источника». Название пункта зависит от производителя телефона.
4. Вернитесь назад и повторите установку
После включения разрешения вернитесь к установщику и нажмите «Установить». Когда madChess будет установлен, это разрешение можно снова выключить.
Если Google Play Защита блокирует приложение
Если APK точно загружен с официальной страницы madChess, откройте дополнительные сведения и запустите проверку файла. Не продолжайте установку, если происхождение APK неизвестно.
1. Откройте подробности
2. Продолжите установку официального APK
В раскрытом окне нажмите «Всё равно установить».
3. Проверьте приложение
Выберите «Проверить это приложение». После успешной проверки продолжите установку так же, как описано выше.
Если появляется сообщение «Приложение не установлено»
Проверьте следующие причины:
- файл скачался не полностью — удалите его и загрузите заново;
- выбрана неподходящая архитектура процессора — попробуйте другую сборку;
- на устройстве уже стоит тестовая версия с другой цифровой подписью;
- на устройстве недостаточно свободного места.
⚡ C++ madServerPowerManager — управление питанием Proxmox
В серверной живёт основной Proxmox-сервер, ИБП FinePower IEC LCD 3000VA и обычная человеческая надежда, что бензогенератор всё-таки заведётся. Но генератор запускается не мгновенно, а надежда — не самый удачный протокол автоматизации. Поэтому я вынес управление питанием на отдельный Intel NUC.
NUC получает телеметрию ИБП по USB, следит за Proxmox и локально управляет Wi-Fi-розеткой Tuya. Если сеть не вернулась за отведённое время, он должен штатно завершить работу сервера, убедиться, что тот действительно выключился, снять с него питание и подать его снова только после устойчивого восстановления электросети.
armed=false. Ограниченный SSH-доступ к Proxmox и полный физический тест аварийного цикла ещё не введены в эксплуатацию, поэтому демон ничего не выключает.
✅ Что уже получилось, а что ещё впереди
Уже реализовано
- локальная телеметрия FinePower через NUT;
- нативный клиент протокола Tuya 3.5 на C++20 без Python и облака;
- чтение состояния и переключение отдельной Wi-Fi-розетки;
- конечная машина состояний с безопасным режимом
MONITOR_ONLY; - атомарное сохранение аварийного цикла на диск;
- systemd-служба с ограничениями доступа;
- локальный HTTP JSON API только для чтения;
- 27 автоматических проверок инвариантов FSM;
- восстановление после перезапуска NUT и самого демона.
Находится в подготовке
- отдельный ограниченный SSH-пользователь на Proxmox и forced command;
- перевод Proxmox в режим NUT netclient;
- контролируемый тест полного цикла с оператором рядом;
- последующее включение
armed=trueтолько вручную.
Запланировано
madPowerTelemetry: отдельный наблюдающий демон с SQLite;- статистика времени shutdown и загрузки;
- рекомендации по безопасным таймаутам без самовольного изменения критических настроек.
🧩 Архитектура
ИБП FinePower IEC LCD 3000VA
│ USB
▼
Intel NUC D54250WYK2
├── NUT: телеметрия ИБП
├── madServerPowerManager
│ ├── конечная машина состояний
│ ├── SSH-контроль Proxmox
│ ├── нативный Tuya 3.5
│ ├── HTTP JSON API
│ └── state.json
├── madPowerTelemetry (запланирован)
└── локальная сеть
├── Proxmox-сервер
└── Wi-Fi-розетка Tuya
NUC питается от того же ИБП и потребляет примерно 15 Вт. Он независим от Proxmox, имеет собственную ОС, видит ИБП по USB и остаётся в сети после отключения большого сервера. Заодно на нём можно дублировать несколько самых важных лёгких сервисов.
🔋 Почему нельзя просто выключить весь ИБП
Выход ИБП питает не только Proxmox. На нём остаются NUC, роутер, коммутатор и точка доступа. Если отключить выход ИБП целиком, менеджер питания потеряет и датчик, и сеть, и возможность восстановить сервер.
Отдельная Wi-Fi-розетка решает задачу точечно: снимает питание только с Proxmox. После этого нагрузка на ИБП заметно уменьшается, а NUC продолжает наблюдение. Точное время автономной работы я пока не обещаю: его надо измерять на реальном оборудовании, а не высчитывать по оптимистичной надписи на коробке.
🔌 Подготовка Wi-Fi-розетки SmartLife для локального управления
Розетка T34 Smart Plug+ уже была добавлена в SmartLife. Для локального управления NUC и устройство должны находиться в одной сети, а адрес розетки лучше закрепить через DHCP reservation.
Быстрый Python-прототип
Сначала я проверил саму идею на Python с tinytuya. Это хороший способ быстро выяснить IP, версию протокола и DPS, не тратя неделю на написание криптографии до первого щелчка реле.
sudo apt install python3-venv -y
python3 -m venv ~/tuya_env
source ~/tuya_env/bin/activate
pip install tinytuya
python -m tinytuya scan
Обезличенный результат поиска выглядит примерно так:
Device ID: <DEVICE_ID>
IP address: 192.168.1.30
Protocol: 3.5
Версия протокола здесь критична: реализация для Tuya 3.3 не станет волшебным образом понимать 3.5. IP можно закрепить на DHCP-сервере, Device ID получают через инструменты Tuya.
Получение Local Key
- Зарегистрировать учётную запись в Tuya IoT Platform.
- Создать Cloud Project типа Smart Home в правильном регионе.
- Подключить сервис IoT Core.
- Через Link Tuya App Account привязать SmartLife, отсканировав QR-код.
- Запустить мастер
tinytuyaи получить параметры устройства.
python -m tinytuya wizard
Access ID: <TUYA_ACCESS_ID>
Access Secret: <TUYA_ACCESS_SECRET>
Device ID: <DEVICE_ID>
Local Key: <LOCAL_KEY>
Region: eu
Исторический proof of concept
#!/usr/bin/env python3
import sys
import tinytuya
DEVICE_ID = "<DEVICE_ID>"
DEVICE_IP = "192.168.1.30"
LOCAL_KEY = "<LOCAL_KEY>"
VERSION = 3.5
SWITCH_DP = 1
def make_device():
return tinytuya.Device(
DEVICE_ID, DEVICE_IP, LOCAL_KEY, version=VERSION
)
def set_power(state):
device = make_device()
device.set_status(state, SWITCH_DP)
print("Розетка включена" if state else "Розетка выключена")
def get_status():
data = make_device().status()
dps = data.get("dps", {})
value = dps.get(str(SWITCH_DP))
if value is None:
value = dps.get(SWITCH_DP)
return value
if __name__ == "__main__":
if len(sys.argv) != 2:
print("Использование: plug_control.py on|off|status")
raise SystemExit(2)
command = sys.argv[1].lower()
if command == "on":
set_power(True)
elif command == "off":
set_power(False)
elif command == "status":
state = get_status()
if state is None:
print("Не удалось получить статус")
raise SystemExit(1)
print("Розетка включена" if state else "Розетка выключена")
else:
print("Неизвестная команда")
raise SystemExit(2)
В исходном наброске был ещё один маленький капкан: в JSON Tuya номер DPS обычно приходит строкой, поэтому проверять только целочисленный ключ 1 нельзя. Прототип свою работу выполнил, но после перезагрузки NUC выяснилась цена окружения: нет активной .venv — нет модуля tinytuya. Для автономного системного сервиса это лишняя точка отказа.
🧩 Убираем Python: собственный клиент Tuya 3.5 на C++
Финальный plugctl стал нативной программой. Ему не нужны Python, pip, TinyTuya, виртуальное окружение, облачный API и интернет:
plugctl --status
plugctl --on
plugctl --off
Клиент открывает TCP-соединение с розеткой, работает с пакетами формата 0x6699, согласует сеансовый ключ, обменивается случайными nonce, использует HMAC-SHA256, SHA-256 и AES-128-GCM, запрашивает DPS и меняет switch_1. Ответ проверяется, а сетевые операции ограничены таймаутами и повторами.
tuya_plugctl_native/
├── CMakeLists.txt
├── include/
├── src/
└── config.example.json
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
sudo install -m 0755 build/plugctl /usr/local/bin/plugctl
Безопасный пример конфигурации:
{
"device_id": "<DEVICE_ID>",
"device_ip": "192.168.1.30",
"local_key": "<LOCAL_KEY>",
"protocol_version": "3.5",
"switch_dp": 1
}
sudo chmod 600 /etc/plugctl.json
В madServerPowerManager тот же нативный Tuya-код используется уже как библиотечный компонент, без запуска промежуточного процесса.
🔋 Подключаем FinePower IEC LCD 3000VA к NUT
Рабочая конфигурация NUT уже существовала на Proxmox. Поэтому я не стал заново изобретать имя USB-драйвера и гадать по VID/PID: сначала изучил действующую конфигурацию, затем перенёс её на NUC и проверил там. Только после устойчивой работы NUC можно переводить Proxmox в сетевой клиент NUT.
Актуальная проверка на момент публикации показала:
ups.status: OL
battery.charge: 100
battery.voltage: 54.1
input.voltage: 230.0
output.voltage: 230.0
ups.load: 4
input.frequency: 49.9
ups.temperature: 28.0
Некоторые параметры могут меняться от опроса к опросу. В частности, этот FinePower не сообщает battery.runtime, поэтому логика не должна зависеть только от расчётного времени автономии.
upsc ups@localhost
systemctl status nut-driver@ups
systemctl status nut-server
journalctl -u nut-server
🧠 madServerPowerManager: конечная машина состояний
Здесь уже начинается не «скрипт выключения», а нормальная автоматика. Основной сценарий такой:
- NUT подтверждает переход ИБП с
OLнаOB. - Демон отфильтровывает краткий провал сети.
- Начинается восьмиминутное ожидание запуска генератора.
- Если сеть вернулась, shutdown не отправляется.
- Если сеть не вернулась, NUC запрашивает штатное выключение Proxmox по SSH.
- Демон ждёт нескольких признаков завершения работы.
- Только после подтверждения выключает розетку.
- NUC остаётся работать от ИБП.
- После возврата сети выдерживается период стабильности.
- Розетка включается, а настройка BIOS «Power On after AC Loss» запускает Proxmox.
- Демон контролирует восстановление SSH и API.
STARTING
├── armed=false ───────────────────────────────► MONITOR_ONLY
└── armed=true
▼
MAINS_ON ──OB──► ON_BATTERY_GRACE
▲ │
│ ▼
RECOVERY ◄── RESTORING_SERVER_POWER
▲ ▲
│ │
MAINS_STABILIZING ◄── WAITING_FOR_MAINS
▲
│
CUTTING_SERVER_POWER
▲
│
WAITING_SERVER_OFF
▲
│
SHUTDOWN_REQUESTED
Любая неоднозначность ──► DEGRADED
Ошибка обязательного конфига ──► ERROR
⏱️ Почему нельзя просто подождать пять минут
Измеренное полное выключение этого Proxmox заняло примерно 4 минуты 48 секунд. Таймаут ровно в пять минут оставляет смешной запас, поэтому базовое ожидание после shutdown увеличено до 360 секунд.
Это не универсальная цифра. Время зависит от остановки виртуальных машин и контейнеров, сброса данных на диск, файловых систем, сетевых хранилищ, обновлений и просто зависшего сервиса. Таймаут должен быть консервативным, а принудительное снятие питания после его истечения по умолчанию запрещено.
🛡️ Как подтвердить, что сервер действительно выключен
Одного ping недостаточно: ICMP может быть запрещён, сеть может исчезнуть раньше завершения записи на диск, а закрытый SSH-порт сам по себе ещё не доказывает выключение. Поэтому используются несколько сигналов:
- SSH недоступен;
- Proxmox API недоступен;
- прошло минимальное время после команды;
- нагрузка ИБП снизилась и стабилизировалась;
- если розетка умеет измерять мощность — её потребление также снизилось.
ups.load: 4 не равно точному числу ватт: ИБП округляет малую нагрузку и может считать процент от VA либо активной мощности. Это вспомогательный признак, а не приговор рубильнику.
⚙️ Конфигурация
[general]
armed=false
poll_interval_seconds=5
state_file=/var/lib/mad-server-power-manager/state.json
[ups]
nut_host=127.0.0.1
nut_port=3493
nut_name=ups
on_battery_confirm_seconds=10
grace_seconds=480
mains_stable_seconds=60
critical_battery_charge=15
critical_runtime_seconds=600
[proxmox]
host=192.168.1.20
port=22
user=mad-power-manager
private_key=/etc/mad-server-power-manager/id_ed25519
known_hosts=/etc/mad-server-power-manager/known_hosts
shutdown_grace_seconds=480
shutdown_timeout_seconds=360
force_cut_after_shutdown_timeout=false
[plug]
host=192.168.1.30
port=6668
protocol_version=3.5
switch_dp=1
minimum_off_seconds=20
[api]
enabled=true
listen_address=127.0.0.1
port=9187
allow_control=false
Секреты лежат отдельно:
[plug]
device_id=<DEVICE_ID>
local_key=<LOCAL_KEY>
[api]
token=<API_TOKEN>
sudo chown madspm:madspm /etc/mad-server-power-manager/secrets.ini
sudo chmod 600 /etc/mad-server-power-manager/secrets.ini
🔐 SSH без пароля — и без лишних полномочий
Пароль нельзя «сохранить в виде хеша», а потом использовать для входа: хеш проверяет пароль, но не восстанавливает его. Для автоматики нужна отдельная SSH-пара ключей и отдельный пользователь mad-power-manager.
На Proxmox ключ следует ограничить forced command, запретом PTY, agent/X11/port forwarding и, по возможности, адресом NUC. Демон использует отдельный known_hosts со строгой проверкой host key. Реальный ключ и строку authorized_keys в статью, разумеется, не кладём.
armed остаётся false.
💾 Состояние должно переживать рестарт
Файл /var/lib/mad-server-power-manager/state.json нужен, чтобы после рестарта демон не начал восьмиминутный таймер заново, помнил факт отправки shutdown и отключения розетки, продолжал восстановление и не включал сервер во время работы от батареи.
Запись выполняется атомарно: временный файл, fsync, затем rename. Повреждённое либо противоречивое состояние не даёт права на силовое действие — система уходит в безопасный режим.
⚙️ Демонизация через systemd
Фактически установленная служба выглядит так:
[Unit]
Description=madServerPowerManager monitor and power state manager
After=network-online.target nut-server.service
Wants=network-online.target nut-server.service
StartLimitIntervalSec=300
StartLimitBurst=5
[Service]
Type=simple
User=madspm
Group=madspm
WorkingDirectory=/var/lib/mad-server-power-manager
ExecStart=/usr/local/bin/mad-server-power-manager
Restart=on-failure
RestartSec=15
TimeoutStopSec=30
NoNewPrivileges=true
PrivateTmp=true
ProtectSystem=strict
ProtectHome=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectControlGroups=true
RestrictSUIDSGID=true
LockPersonality=true
MemoryDenyWriteExecute=true
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
ReadOnlyPaths=/etc/mad-server-power-manager
ReadWritePaths=/var/lib/mad-server-power-manager
UMask=0077
StandardOutput=journal
StandardError=journal
SyslogIdentifier=mad-server-power-manager
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now mad-server-power-manager
systemctl status mad-server-power-manager
journalctl -u mad-server-power-manager -f
📡 Локальный API мониторинга
API слушает только 127.0.0.1:9187. Реализованы:
GET /api/v1/status
GET /api/v1/ups
GET /api/v1/proxmox
GET /api/v1/plug
GET /api/v1/events
GET /api/v1/health
GET /api/v1/config
Конфигурационный endpoint не возвращает секреты. Все методы, кроме GET, отвечают 405; управляющего HTTP API в этой версии нет, даже если ошибочно включить allow_control.
{
"version": "1.0.0",
"armed": false,
"state": "MONITOR_ONLY",
"ups_reachable": true,
"ups_status": "OL",
"battery_charge": 100,
"battery_runtime_seconds": null,
"load_percent": 4,
"proxmox_reachable": true,
"plug_reachable": true,
"plug_on": true
}
📊 Следующий этап: madPowerTelemetry
madPowerTelemetry пока запланирован и не установлен. Это будет отдельный наблюдающий демон: круглосуточный сбор телеметрии в SQLite, измерение времени перехода на батарею, shutdown, исчезновения SSH, снижения нагрузки и загрузки Proxmox, а также статистика дребезга сети.
madPowerTelemetry наблюдает и рекомендует. madServerPowerManager принимает безопасные решения.
[tuning]
mode=observe
Предполагаемые режимы: off, observe и ограниченный bounded. По умолчанию — только наблюдение. Телеметрия сможет рекомендовать shutdown_timeout_seconds, таймаут запуска, порог снижения нагрузки и период стабильности сети.
Она не должна автоматически менять восьмиминутное ожидание генератора, armed, force_cut_after_shutdown_timeout, критический заряд и само право физически отключать сервер.
🚦 Отказы и безопасное поведение
FSM рассматривает кратковременное отключение, дребезг сети, возврат питания до и после shutdown, потерю USB, рестарт NUT, демона или NUC, отсутствие battery.runtime, потерю SSH, недоступную розетку, неверный Local Key, повреждённый state-файл, превышение таймаута и ручное переключение реле.
Недостоверный NUT или неоднозначная телеметрия переводят систему в DEGRADED. Ошибка обязательной конфигурации — в ERROR. В обоих случаях автоматическое управление питанием запрещено. Безопасный отказ здесь означает «ничего силового не делать», а не «на всякий случай выключить всё».
🧪 Безопасный ввод в эксплуатацию
- Только чтение телеметрии NUT.
- Запуск демона с
armed=false. - Проверка SSH безопасной командой.
- Проверка розетки без подключённого сервера.
- Симуляция событий
OB/OL. - Контролируемый физический тест с оператором рядом.
- И только затем ручное включение
armed=true.
armed=true. Сейчас на NUC подтверждены активная systemd-служба, состояние MONITOR_ONLY, доступность NUT, Proxmox и розетки, а также здоровый read-only API. Реальный разряд, shutdown Proxmox и снятие питания на этом этапе не выполнялись.
🏁 Итог
Python позволил быстро проверить идею и услышать первый щелчок реле. Нативный C++ убрал зависимость от интерпретатора и виртуального окружения. NUT дал нормальную телеметрию, NUC стал независимым менеджером, а отдельная розетка позволила управлять только Proxmox, не обесточивая сеть и сам контроллер.
Самая важная часть проекта — не команда off, а консервативная машина состояний: она знает, когда ещё рано выключать, когда уже нельзя отменять начатый цикл и когда лучше остановиться и позвать человека. Следующая задача — завершить ограниченный SSH-контур, провести контролируемые испытания и начать копить статистику для настройки таймингов.
