Можно с уверенностью сказать, что значительная доля ПК-пользователей Linux в мире сегодня использует свободную и открытую операционную систему на аппаратных средствах, которые изначально разработаны под Windows. В конце концов, несмотря на отсутствие предустановленной системы, часто дело заканчивается тем, что дешевле купить ПК с Windows и загрузить Linux самостоятельно.
Однако когда придут первые ПК с Windows 8, такое развитие событий станет невозможным. Оказывается, что новая функция безопасности, включенная в операционную систему, сделает загрузку Linux невозможной из под Windows 8, на официально сертифицированных аппаратных средствах.
«Вероятно, пока нет причин для паники», пишет разработчик «Red Hat», Мэтью Гаррет, во вторник, в блоге на эту тему. «Но эта особенность новой операционной системы стоит внимания».
«Установки не будет»
Проблема проистекает из решения Microsoft на использование безопасного аппаратного протокола загрузки, известного как Unified Extensible Firmware Interface (UEFI) для Windows 8, вместо традиционного и знакомого всем BIOS. Microsoft и руководитель программы Ари Ван Дер Хевен в частности, объяснили и продемонстрировали UEFI в докладе на конференции BUILD в этом месяце, и это пояснение доступно в видео ниже (англ.).
По сути, технология предназначена для защиты от руткитов и других подозрительных программ с низким уровнем угрозы, предотвращая действие исполняемых файлов и загрузку драйверов, если они не имеют криптографической подписи, известной UEFI.
«Не существует централизованного способа подключения ключей UEFI», объясняет Гаррет. «Если ключ поставщика установлен на машину, единственным способом получить код, написанный под этим ключом, заставить поставщика выполнить подписку. Машина может иметь несколько используемых ключей, но если вы не можете получить любой из них, чтобы подписать ваше программное обеспечение, то оно просто не будет устанавливаться».
Microsoft заявила, что будет требовать установки Windows 8 на машину, только с функцией безопасной загрузки. Скорее всего, Windows для таких систем будет подписываться ключом Microsoft, предсказывает Гаррет.
Другие операционные системы, такие как Linux, вероятно, не будут включать таких подписей в их нынешнем виде. Так что, если не будут приняты преднамеренные меры для их доступности, «системы, которые поставляются только в OEM-версии и ключи Microsoft не позволят загрузить копию Linux», объясняет Гаррет.
«Ядра тоже нужно подписывать»
Некоторые версии Linux будут подписаны, как доступные операционные системы, но есть несколько проблем, связанных с таким подходом, говорит Гаррет.
Во-первых, потребуется загрузчик без GPL. Grub 2 и Grub выпускаются под GPLv3 и GPLv2, соответственно, отметил он.
Во-вторых, «в ближайшем будущем дизайн ядра будет означать, что самое ядро является частью загрузчика», добавил Гаррет. «Это значит, что ядро также потребует подписки. Что делает невозможным создание своих ядер пользователями и разработчиками, поскольку это решение не практично».
Наконец, если дистрибутив Linux получает ключ, нужные коды должны быть включены в каждую OEM-версию, говорит он.
Может случиться так, что Microsoft позволит поставщикам обеспечить специализированную прошивку для отключения этой функции, предлагая работу с неподписанными кодами, признает Гаррет. Несмотря на это, однако, маловероятно, что всё оборудование будет поставляться с этим вариантом операционной системы, добавляет он, что создаст проблемы для некоторых пользователей Linux.
Конечно, предстоит выяснить, как эта ситуация будет обыгрываться в будущей версии Windows 8. С другой стороны, это ещё одна веская причина, чтобы выбирать оборудование с предустановленной версией Linux.