HP и скрытное противодействие установкам Linux
Прочел статью о том как Acer троллит фанатов Linux, и решил написать пару слов об ушлых, хитрых производителях из «ХулиПлакать», сегодня принесли неттоп HP ProDesk 260 G2 DM (Такие обычно ставят в банковском секторе для офисных клерков и/или используют как тонкий клиент):
И попросили установить Linux.
Как же я «натрахался» с этой, вроде бы, простой задачей.
В чем хитрость:
1) по умолчанию на экран выводится предложение стартовать в FreeDOS 2.0 или почитать документацию — никаких подсказок о возможности загрузки в настройки BIOS нет. А предлагаемая документация это санитарные нормы и рекомендации по работе за ПК (как держать осанку, как важно делать перерывы в работе и зарядку для глаз), раздел о том, что HP слагает с себя гарантийные обязательства в случае не авторизованной модификации и т.п. и т.д. О настройке BIOS не слова.
Просто по аналогии с ноутбуками HP выяснили, что ESC вызывает комбинации для управления BIOS и понеслось…
2) в BIOS есть опция конфигурации UEFI Secure Boot — естественно, вылазит грозное предупреждение, о том, что технология UEFI Secure Boot защищает Windows 10.
Между тем выясняется, что по-умолчанию Legacy BIOS Enabled, а Secure Boot Disabled.
Радуемся, и втыкаем загрузочную флешку.
Внешне все замечательно, флешка успешно грузится и можно приступать к установке.
Я привык делать разметку вручную, но в случае с неттопом установщик упорно выдавал сообщения, что на этапе разметки жизненно необходим раздел /boot/efi — спрашивается зачем(?), если устанавливаем в режиме Legacy BIOS.
Ну, хорошо, создаем раздел и сохраняем разделы с документами и с FreeDOS — исключительно для того, чтобы иметь возможность оформить возврат в течении 14 дней.
И натыкаемся на первый сюрприз установка прерывается на этапе создания efi — раздела и так с завидным постоянством.
Или я дурак или лыжи не едут…
Минут 40 я экспериментировал с разметкой:
— не создашь раздел грузится FreeDOS
— пытаешься создать раздел выскакивает ошибка и опять же грузиться FreeDOS.
Заручился поддержкой владелицы неттопа и сознательно убрал разделы от производителя (предварительно забэкапив образы заводских партиций на внешний жесткий диск через Дисковую утилиту).
— Выбрал стереть диск в процессе установки и ничего не грузиться…
Но мы же не сдаемся, лезу в BIOS и брожу по всем меню в Boot Order и наблюдаю замечательную картину:
UEFI Boot Sources:
- USB Hard Drive
- USB Floppy
- USB CD
Legacy Boot Source:
- USB Floppy
- USB CD
- Ethernet PXE
И что получается в режиме Legacy не предусмотрено возможности загрузиться с флешки. У неттопа USB-интерфейс — единственное средство для внешней загрузки, есть, конечно, Ethernet, но среднестатистический потребитель не имеет навыков сетевой установки. Изъяв из опций Legacy BIOS возможность загрузки с флешки производитель дал понять, что использование чего-либо не соответствующего стандартам UEFI — плохая идея, для антимонопольных ведомств — режим Legacy присутствует и в теории можно подключить внешний ODD-привод, чтобы воспользоваться Legacy режимом.
Когда, я понял всю «сучность» ситуации, я задействовал UEFI Secure Boot и вновь принялся устанавливать применяя разбивку по-умолчанию.
Наконец-то все встало и я узрел сплеш-скрин, однако, дальше.
Вылезло предупреждение, что обнаруженные сигнатуры UEFI не соответствуют сигнатурам производителя и диск потерялся…
Топаю в BIOS отключаю проверку подписи, т.е. перевожу в Legacy и снова сплеш-скрин, затем проверка файловой системы BTRFS (какого черта, если по-умолчанию ext4) и черный экран — ничего не происходит.
В итоге, нашел в BIOS еще одну вкладку UEFI keys и сменил HP keys на Custome keys и опять процесс установки. Последняя 9-ая по счету переустановка и наконец все завелось. Угробил на это часа 3.
Проще было бы:
1) разобрать корпус
2) извлечь HDD
3) воткнуть HDD в стыковочную станцию
4) нормально установить Linux
5) вернуть HDD в корпус
Но любая модификация(нарушение гарантийных пломб) лишает стандартной гарантии.
Итак, резюмируя мой опыт с установкой на неттоп.
1) Для попадания в BIOS необходимо зажать ESC на старте, появится меню с кратким описанием функциональных клавиш BIOS:
- F1 System Information
- F2 System Diagnostic
- F9 Boot Device Options
- F10 BIOS Setup
- F11 System Recovery
- ENTER — Continue Startup
2) попав по F10 в BIOS нужно перейти во вкладку UEFI Boot Configuration и выставить следующие настройки:
- Legacy Boot — Disable
- UEFI Boot — Enable
- Keys Ownership — меняем с HP на Custome
3) Сохраняем изменения (F10)
4) Появиться предупреждение об изменении режима с требованием ввести отображаемый код и нажать Enter — следуем этой инструкции.
5) Переходим во вкладку Boot Order — UEFI Source выставляем приоритет загрузки USB Hard Drive
Подключаем загрузочную флешку и Save & Exit
6) Собственно, грузимся с флешки и запускаем графический установщик, на этапе разметки
а) выбираем Стереть весь диск — система сделает разметку сама,
б) выбираем Ручную разметку и удаляем заводские разделы (которые на всякий случай разумно забэкапить на внешний жесткий диск).
При выборе ручной разметки
Важно: Первым системным должен быть раздел размером 300 MB отформатированный FAT32 c точкой монтирования /boot/efi и флагами boot и esp.
Далее все типично корень / в ext4(10-20 GB), можно выделить /home (большую часть диска) в отдельную партицию и выделить раздел подкачки linuxswap (равный 2-х кратному объему RAM)
Выводы:
1) Таким образом, поставить, подписанный UEFI дистрибутив Linux можно и работать он будет, но придется учесть все нюансы и ухищрения производителя.
Дистрибутив не подписанный ключами UEFI можно теоретически поставить лишь предварительно подключив внешний USB привод опческих дисков, либо извлечь жесткий диск, подключить его на другом ПК (с помощью внешнего USB HDD box или стыковочной станции), произвести установку на другом устройстве и затем вернуть в неттоп (универсальный набор драйверов на уровне ядра позволит принять новую конфигурацию).
2) Поставить на данный неттоп неподписаную ключами UEFI Windows 7 не получится от слова совсем:
Во-первых, на борту процессор Intel SkyLake поддержки которого нет в редакциях младше Windows 10,
Во-вторых, даже, если бы драйвера на чипсет были, нужны драйвера на USB 3.0, а их в установщике по-умолчанию нет.
P.S.
Модель, которую мне принесли оказалась полностью проводной, т.е. встроенного беспроводного модуля Wi-Fi / Bluetooth в ней нет, поэтому из 6 USB портов 2 (USB 2.0) порта под клавиатуру и мышь, еще 1 (из четырех USB 3.0) под внешний беспроводной сетевой адаптер, но можно изловчиться и подцепить в Ethernet-порт маршрутизатор в режиме WDS-моста(собственно, что я и сделал).
Купленный хозяйкой беспроводной USB-адаптер TP-Link TL-WN725N — работает крайне нестабильно в Netrunner 1703(беспроводные сети видет, но не подключает, сети постоянно появляются и исчезают) в собрате Maui 1703 тот же адаптер ведет себя корректно(видимо сказывается наличие Диспетчера драйверов автоматически обнаружившего проприетарный драйвер).
Можно сэкономить место, используя беспроводную клавиатуру и мышь, однако, не все Bluetooth-адаптеры стабильно работают в Linux(возможности проверить не было).