Вторник, 14 апреля, 2026

Танец Дженнифер Энистон раздул резервные копии до 377 ГБ, исключив возможность их восстановления

В мире, где цифровые данные являются новой нефтью, а их сохранение — критически важной задачей, иногда самые неожиданные вещи могут вызвать настоящий хаос. Никто бы и не подумал, что крошечное анимированное GIF-изображение, весящее всего 1,6 мегабайта, может раздуть резервные копии до астрономических 377 гигабайтов, выводя из строя целые файловые системы и делая сохранение данных абсолютно бессмысленным. Именно такая курьезная, но весьма показательная история случилась с одной из платформ, которую обслуживает компания Discourse.

В эпицентре этой цифровой драмы оказался тот самый неугомонный GIF из «Друзей», где Дженнифер Энистон энергично танцует, демонстрируя свою «счастливую» реакцию. Это изображение, благодаря чрезмерному энтузиазму пользователей и, что более важно, специфической «политике безопасности» Discourse, размножилось невероятные 246 173 раза внутри резервных копий. Представьте себе: один невинный, на первый взгляд, файл превратился в гигантскую, безобразную копию самого себя, поглотив объем, эквивалентный сотням тысяч фотографий или целой библиотеке фильмов.

Компания Discourse, которая стоит за одной из самых распространенных платформ для онлайн-сообществ и на сегодня питает более 22 000 форумов и чатов по всему миру, имеет функцию так называемых «защищенных загрузок». Эта функция, которая, казалось бы, должна повышать безопасность, действует довольно своеобразно. Она создает абсолютно новую копию файла с уникальным идентификатором каждый раз, когда изображение перемещается между различными «контекстами безопасности» — например, из личного сообщения в общедоступный пост. Содержание файла остается тем же самым, но для системы это уже совсем другой файл, что и приводит к неконтролируемому размножению.

Первая попытка разработчиков Discourse решить эту проблему с «инфляцией» данных заключалась в использовании так называемых «жестких ссылок» во время резервного копирования. Вместо того чтобы копировать каждый дубликат файла отдельно, система должна была создавать ссылки на единый оригинал. Это звучало как элегантное и эффективное решение, обещая значительную экономию места. Однако, как часто бывает в сложном мире технологий, реальность оказалась несколько иной.

Казалось бы, гениальный план наткнулся на неожиданное препятствие — ограничение файловой системы EXT4, которая является стандартом для многих Linux-систем. Она позволяет создать лишь около 65 000 «жестких ссылок» на один файл. Когда дело дошло до сотен тысяч дубликатов GIF, система просто отказалась дальше создавать ссылки. Вместо ожидаемой одной загрузки для всех 246 173 копий, Discourse получил одну загрузку и еще примерно 181 000 «запасных» загрузок, которые срабатывали после достижения лимита. Очевидно, это не было той «победой», на которую разработчики рассчитывали.

Масштабы проблемы подчеркивал и другой случай с клиентом Discourse, где из общих 432 гигабайтов загруженных файлов лишь 26 гигабайтов были уникальным контентом. Остальное — это были лишь дубликаты, которые привели к 16-кратному раздуванию общего объема данных. Это ярко демонстрирует, как на первый взгляд невинная функция может привести к колоссальному расточительству ресурсов и потенциальным сбоям. Сайт, где GIF с Рейчел из «Друзей» стал причиной такого бедствия, был, очевидно, очень «счастливым», поскольку изображение использовалось «постоянно в постах, приватных сообщениях, везде».

К счастью, компания Discourse таки смогла найти выход из ситуации и предложила новое решение для своей первоначальной «заплатки». Этот обновленный механизм также начинает с создания «жестких ссылок», но когда файловая система сигнализирует об ошибке «слишком много жестких ссылок» (EMLINK), система просто копирует файл локально и рассматривает эту новую копию как «основную», пока не достигнет лимита снова. Разработчики с некоторым удовольствием заявляют, что это решение «работает на любой файловой системе и не требует дополнительных настроек». Конечно, после того, как им пришлось научиться на собственных ошибках, доведенный до стресса инфраструктурой, которую, как оказалось, может вывести из равновесия даже танцующая Дженнифер Энистон.

НАПИСАТИ ВІДПОВІДЬ

Коментуйте, будь-ласка!
Будь ласка введіть ваше ім'я

Євген
Євген
Евгений пишет для TechToday с 2012 года. По образованию инженер,. Увлекается реставрацией старых автомобилей.

Vodafone

Залишайтеся з нами

10,052Фанитак
1,445Послідовникислідувати
105Абонентипідписуватися

Статті