Kitabı oxu: «Измена мужа. Ты забыл удалить любовницу!»
Глава 1
У стойки №4 опять мигнул красный индикатор. Я уперлась коленом в пол, поднесла кабель к разъему — мимо. В серверной стало жарко, волосы намокли под резинкой, и сухой воздух царапал горло. Третий час возилась с массивом, который перестал отвечать после скачка напряжения. Контроллер RAID выбило; десятки терабайт транзакционных логов оставались на дисках, но добраться до них не удавалось. К утру Глеб обещал инвесторам отчет. Обещал он, а сидела на полу я. Надпись «SoulMatch» на наклейке была чуть перекошена: сама клеила ее, придерживая дверцу ногой. Тогда мы радовались каждой новой стойке.
Со второй попытки кабель вошел. На мониторе появился курсор; я подтащила клавиатуру ближе, стерла рукавом каплю со лба. Утилита восстановления снова ругалась на подпись сертификата. Да вижу я, вижу. Сейчас бы не заставлять меня подтверждать очевидное. Закрыла ее и полезла в консоль. На первом курсе мы с Максимом решали похожую задачу, только тогда неверная команда означала пересдачу, а не звонки от клиентов. Вспомнилось, как Максим читал мои команды из-за плеча и спрашивал: «Ты точно туда пишешь?» Бесило ужасно. Сегодня отдала бы многое за этот голос рядом.
Старый учебный скрипт пришлось поправить: адреса, пути, порядок проверки. Я перечитала команды перед запуском. Еще раз. На экране появились строки: «Контроллер отвечает. Резервный том смонтирован только для чтения». Список каталогов открылся. Я опустила лоб на запястье и посидела так несколько секунд. Получилось. Теперь бы проверить копии и наконец поесть; кофе, выпитый два часа назад, только дергал пустой желудок. Тут зажужжал телефон. Глеб. Я вытерла ладони о джинсы, прежде чем ответить.
— Алиночка, родная, — протянул Глеб. Я зажала телефон плечом, освобождая руку для мыши. На «родная» он обычно просил что-нибудь сделать. — У нас тут небольшое ЧП с юристами по поводу ипотеки. Задержусь. Не волнуйся, я уже заказал тебе ужин. Твои любимые макароны с трюфельным маслом будут через час.
— Хорошо, Глеб, — ответила я сухо, фиксируя время звонка: 21:47. — Я закончу работу и тоже вернусь.
— Ты моя опора, Аля. Без тебя мы бы давно развалились. Целую.
После отбоя я еще держала телефон возле уха. «Опора». Значит, ему удобно, что я здесь. Могу хоть до утра сидеть с кабелями, а домой придет жена, которой уже приготовили ужин. Я хотела обрадоваться макаронам — правда хотела. Попробовала представить тарелку, масло, белую скатерть. Вместо этого вспомнила, сколько раз за последний месяц он начинал разговор с «у нас небольшое ЧП». Всегда у нас. Никогда у него. Положила телефон экраном вниз. Юристы могли задержать его. Конечно, могли. На часах было без тринадцати десять.
Пока шла проверка рабочих бэкапов, я открыла наш общий семейный архив. Глеб хранил его на том же носителе, хотя я годами просила отделить личное от корпоративного. На этот раз мне нужно было убедиться, что восстановились обе папки. И тогда я увидела это.
В журнале мелькнула свежая сессия Глеба. Я вернулась на строку выше и проверила время: 21:47. Только что. Сначала решила, что сработала фоновая синхронизация. Его мобильное устройство уже появлялось с этим адресом; я узнала привязку аккаунта. Но операция была ручной. Он разговаривал со мной и одновременно возился в нашем архиве? В рабочее время Глеб к нему не притрагивался, зато любил объяснять, как важно разделять личную жизнь и бизнес. Носитель разделять почему-то предлагал позже.
Открыла параметры операции. Массовое скачивание папки «Архив». Снимки, документы, сканы паспортов — всё одним пакетом. Что он собирался делать со сканами? У юристов опять не хватало какой-нибудь справки? Я зацепилась за эту версию и сняла фильтр рабочих файлов. Проще проверить, чем звонить ему и опять слушать, что я не умею расслабляться. В истории нашего общего аккаунта потянулись файлы. Несколько новых. Дата — сегодняшняя. Я приблизила список и перестала перебирать объяснения.
Превью грузились по одному. Вот мы в Турции, вот Глеб со стаканом на домашней вечеринке. Обычные снимки, их я знала. Следующие пять минут истории были мне незнакомы. Навела курсор на первую миниатюру, чтобы открыть ее побольше.
Виктория лежала рядом с ним. Я сначала узнала люстру — дурацкий порядок, но именно люстру. Такой светильник висел в нашем номере в «Балчуге» три года назад, когда мы праздновали годовщину. За окном виднелась река. Потом рассмотрела ее руку у Глеба на груди. Его бывший продуктовый менеджер. Полгода назад он якобы сократил ее должность; я еще сказала, что жаль, хорошая специалистка. Здесь никто никого не сокращал. Они смотрели в камеру, устроенную напротив постели, и Глеб улыбался. Мне он так улыбался, когда говорил: «Вот теперь можно никуда не спешить».
Я не сразу смогла убрать фотографию. Курсор уезжал, пальцы скользили по мыши. Попробовала вдохнуть глубже — не вышло, пришлось открыть рот. Наверное, я сейчас упаду прямо возле стойки. Села поудобнее, прижала спину к металлической стенке и закрыла снимок. Следующий файл. Только следующий, а потом встану. В контейнере лежал экспорт переписки Telegram. Расширение я проверила дважды, почему-то надеясь, что это другой файл, не тот, который вижу.
Переписка открылась. Я приготовилась к «скучаю», к обещаниям уйти от жены. Первым было слово «тормоз».
Глеб: «Она тормоз. Медленная архитекторша, которая боится рисковать. Её консерватизм душит рост выручки.» Виктория: «И что теперь делать с имуществом? Раздел будет болезненным.» Глеб: «Нужно вывести активы до того, как она подаст иск. Через фиктивные транзакции на твою компанию. Она же сама написала алгоритм сверки платежей. Мы используем её же систему против неё. Как только я подтвержу утечку данных (сфабрикую аварию), акционеры начнут давить на неё. Она уйдет в защиту, пытаясь спасти карьеру, и не заметит, как мы сливаем прибыль.» Виктория: «Гениально. А если она поймет?» Глеб: «Она слишком умна для бизнеса и слишком глупа для любви. Она верит в факты. А факты можно подделать.»
Прочла про алгоритм сверки еще раз. Его писала я. Тестировала ночью, потому что днем Глеб водил партнеров по офису и показывал, как мы растем. Мы. Когда он приносил мне чай, я принимала это за заботу; теперь на экране он объяснял Виктории, как использовать мою работу против меня. Горло свело так, что стало больно глотать. «Слишком глупа для любви». Можно было выйти и дать этим словам до утра грызть меня в одиночку. А утром не найти ни слов, ни переписки, ни подтверждений. Он ведь предупреждал ее: факты можно подделать.
Я оставила диалог открытым и начала сохранять. Скриншот, исходный файл, журнал доступа. Увеличила фото, сняла и его. Ошиблась в имени папки, стерла лишнюю букву. Неважно, как она называется. Важно, чтобы утром это еще существовало. В VeraCrypt создала контейнер под паролем своих личных резервных копий, перетащила туда файлы и дождалась завершения. За время шифрования успела трижды проверить дверь. Никто не шел. Только в ухе все еще звучало его «целую».
Глава 2
Когда вернулась к архиву, окно потемнело. «Подтвердите доступ». Внизу предлагалось запросить второй фактор у администратора проекта. У Глеба. Я убрала палец с мыши: уведомление ему сейчас было нужно меньше всего. Блокировку вызвала моя массовая выгрузка — система безопасности заметила то, чего Глеб, похоже, пока не знал.
Скриншоты уже лежали в контейнере. Но скриншоты он назовет монтажом; нужны исходники и журналы. Если запросить код, телефон Глеба загорится, а следом он может отправить команду очистки. Я посмотрела на сетевой порт. Локальная учетная запись инженера у меня оставалась. Сначала отрезать ему дорогу к архиву. Потом копировать. Решение было до неприятного знакомым: такое мы делали при заражениях, когда нельзя ждать разрешения начальника.
Защелка сетевого кабеля не поддавалась с первого раза. Я сильнее прижала ее ногтем и вытащила разъем. Лампочка погасла. Вентиляторы гудели как прежде, на пульте мониторинга узел стал красным. Теперь оттуда, где Глеб лежал с Викторией, сюда не пришла бы команда удаления. Я опустилась обратно к клавиатуре и подтащила рюкзак за лямку.
Внешний диск на четыре терабайта цеплялся за ткань кармана рюкзака; я выдернула его вместе с клубком кабеля. Подключила к серверу. Перезагрузка в локальное восстановление заняла меньше минуты, но я успела пожалеть, что вообще ее затеяла. Затем появился запрос учетной записи инженера. Вошла, выделила семейный архив и журналы транзакций. Зеленый индикатор на внешнем диске заработал. Ничего больше не трогать. Пусть копирует.
В дверь застучали. Я вздрогнула и задела плечом стул. Охранник — кому еще идти сюда после сигнала о недоступном узле? Убрала мокрую прядь с щеки и попыталась выпрямиться. От слез двоились проценты на экране. Только бы он не увидел лицо. Стоило кому-нибудь по-человечески спросить, что случилось, и я бы разрыдалась, забыв про диск и всю эту осторожность.
Копирование шло медленно. 30%... 45%... Стук повторился.
— Алина Сергеевна? Все в порядке? — голос охранника был глухим из-за двери.
Маска сварщика висела на крючке рядом. Максим оставил ее после тестов оборудования; мы еще шутили, что серверная наконец обрела собственный шлем. Я потянулась, надела маску и опустила щиток. Стало темнее, зато лицо скрылось. Копирование дошло до 98%. Я остановила процесс, дождалась, пока диск перестанет работать, и вынула кабель. Последний файл мог не дойти. Остальные уже были со мной. Протиснула диск во внутренний карман пальто на спинке стула и закрыла его полой.
Дверь открылась. Охранник в форме шагнул внутрь, свет фонарика скользнул по стойкам.
— Что случилось? Сервер пропал с пульта? — спросил он, недоуменно глядя на меня в маске.
— Восстановление архива после сбоя, — произнесла я ровным, механическим голосом, пряча дрожащие руки за спиной. — Изолировала узел на время проверки. Всё под контролем. Можете идти.
Он посветил на стойку, потом на мой щиток. Ждал, что добавлю хоть что-нибудь внятное. Я молчала. Если заговорю еще раз, голос сорвется. Наконец он кивнул и вышел, не притворив дверь до конца. Я смотрела на полоску коридорного света, пока его шаги не стихли.
Сняла маску и обхватила ладонью щеки. Горячие, мокрые. Глеб заранее придумал мне занятие: спасать фирму от аварии, которую он собирался на меня же повесить. Очень удобно — я не сплю, чиню, оправдываюсь, а он выводит деньги. Потом скажет, что без меня было бы легче. Я подняла пальто со стула. В кармане оттягивал подкладку диск. Хоть это он уже не мог у меня забрать нажатием кнопки.
Но я не балласт. Я — оператор.
У входа в бизнес-центр шел дождь. Я сунула руку под пальто, проверяя, не выпал ли диск, и только потом заметила, что стою на открытом месте. Вода потекла за воротник. Шагнула под навес, запахнула полы. Несколько сотен граммов железа давили на грудь. Если упущу или разобью — второй раз меня в архив могут не пустить. Прижала его предплечьем, как обычно прижимала сумку в толпе. Вещь маленькая, а из-за нее впервые за этот вечер хотелось держаться на ногах.
Телефон в кармане завибрировал. Сообщение от Глеба.
«Любимая, я уже еду домой. Купил тебе твои любимые макароны. Жди меня. Люблю.»
От экрана на лицо падал белый свет. В отражении я увидела, как сжала губы, и чуть разжала их: больно уже. «Жди меня». Десять лет я ждала. Из офиса, с переговоров, из поездок, которые внезапно продлевались. Сколько раз убирала его тарелку в холодильник, когда переставала ждать. И сегодня должна была вернуться, разогреть ужин и поблагодарить за заботу. Рука под пальто сжимала край диска. На этот ужин у меня больше не было аппетита.
Я прочла «люблю» и неожиданно усмехнулась. Получилось криво; прохожий, торопившийся к дверям, оглянулся. Глеб еще ждал дома ту женщину, с которой говорил в 21:47. Ему предстояло подождать подольше. Сейчас я знала достаточно, чтобы не спрашивать, где он задержался. Еще недостаточно, чтобы победить. Но хоть один вечер он мог говорить в пустоту, а я — слушать только себя.
Удалила сообщение. Отвечать ему из-под навеса, с мокрыми волосами и диском под пальто, было бы глупо. Дождалась, пока поток людей пройдет мимо, и пошла. Дождь ничуть не стал тише. Зато телефон наконец замолчал.
К третьему этажу картонная кромка уже врезалась в ладони. Я перехватила коробку снизу и чуть не уронила: книги съехали на один бок. Надо было взять две поменьше, но дома хотелось только успеть уйти. В подъезде пахло вареной курицей. За маминой дверью звякнула цепочка, и дверь открылась раньше, чем я дотянулась до звонка. Мама посмотрела на коробку, на мое пальто. Я уже приготовила «можно я пока побуду у вас». Она начала первая.
— Глеб звонил вчера, Алинка! Он в шоке. Просто в шоке! Ты его бросила без причины? Вы же только недавно... он говорит, ты ведешь себя истерично. Бабушка твоя бы умерла от стыда, если бы узнала, что ты выгнала такого человека.
Пристроила коробку на край стола. Журналы о суставах сползли веером, один упал на пол; я не нагнулась его поднимать. Мама стояла напротив и ждала объяснений. Вчера мой муж лежал с другой женщиной, а сегодня я слушала, какой позор причиняю семье. Интересно, он успел рассказать ей про макароны? Скажи я сейчас про Викторию, мама начала бы спрашивать, что я сделала не так. Я знала порядок этих вопросов.
— Не звони ему, мама. И никому не говори, где я.
Мама набрала воздуха. Я удерживала край коробки, чтобы та не съехала, и смотрела на нее. Наконец она отвела глаза. Проворчала про детей, которые ничего не хотят слышать, ушла на кухню. Я поставила ноутбук между журналами. Открыла терминал, увеличила шрифт. Пусть хотя бы на этом экране команды выполняются в том порядке, в каком я их даю.
Телефон гудел на столе без передышки. Чат «IT-тусовка Москвы», в котором обычно делились вакансиями и спорили про зарплаты, сегодня обсуждал меня. «Алина снова включила режим параноика». Скриншот Глеба. Следующий: «Она сливает мои логи, это незаконно». Потом чье-то «Спасайтесь кто может». Я узнала аватарку — Новый год, шампанское, этот человек сидел со мной рядом и просил рекомендации. Теперь от меня спасались. Открыла поле ответа, написала первые три слова. Стерла. Он ждал именно этого: длинного объяснения, которое можно раздергать на удобные цитаты.
Сделала скриншоты. Сохранила в `evidence/social_pressure`, проверила, открываются ли. Отложила телефон экраном вниз, но он продолжал жужжать, и я опять взяла его в руки. Так и сидела: смотрела, сохраняла, никому не отвечала. Каждое новое имя хотелось запомнить. Не для расправы. Чтобы больше никогда не просить этого человека о помощи.
На тесной кровати пришлось лечь боком. Стоило повернуться, пружина скрипела; я вся сжималась, чтобы не разбудить родителей. За стеной храпел отец. Обычный мамин дом, обычная ночь — почему же я не могу здесь заснуть? Перед глазами опять вставало лицо Глеба в кадре. Дальше шел его диалог с Викторией. Я попробовала сосчитать окна на противоположном доме, но воздух вдруг перестал проходить. Схватила край простыни. Вдохнула, еще раз — коротко, бесполезно. Хотелось позвать маму. Представила, что она скажет, и прижала ткань ко рту, чтобы не было слышно.
Нашла успокоительное, запила. На телефоне включила дождь: ровный шорох без сообщений и голосов. Сначала слушала храп сквозь него, потом только капли. Вдох становился чуть длиннее. Я убрала простыню от лица и держала ладонь на животе, проверяя, поднимается ли. Поднимается. Можно полежать еще минуту. Решать всё прямо сейчас не требовалось, хотя тело упорно пыталось убедить в обратном.
Pulsuz fraqment bitdi.