9F.Sphynkx.Org.Ua: In GNU We Trust

Наиболее благополучная ситуация с оборудованием сейчас у средств виртуализации - 9front поддерживает эмулируемое оборудование. По крайней мере такова ситуация с LibVirt.

Настройка WiFi-карточек

У 9front пока нет поддержки WiFi-карточек Broadcom, распространенных на старых ноутбуках. Проблема осложняется еще и несовместимостью - не всегда получится поменять карточки между разными ноутбуками, они могут отказаться грузиться на стадии БИОСа.

Наилучшая поддержка у карточек Intel. Для некоторых понадобится доустановить в систему firmware, которое с 9front не поставляется по лицензионным обстоятельствам. По каждой модели конкретно надо выяснять особенности установки. Также надо посмотреть вывод /dev/kmesg - в случае если карточка ожидает дополнительное firmware, там об этом будет упомянуто. Далее на примере карточки iwl. Вывод /dev/kmesg показывает строку:

#l1: '/lib/firmware/iwm-7260-17' does not exist

Поиск в Гугле приводит к репозиторию OpenBSD в котором имеются прошивки в подходящем формате. Скачиваем архив прошивки, распаковываем и помещаем файл прошивки в /lib/firmware. Далее необходимо перекомпилировать ядро. Переходим в /sys/src/9/pc64, запускаем mk install и перезагружаемся (возможно несколько раз), проверяя отсутствие вышеуказанной строки о ненайденной прошивке. Если включение не произошло - сперва проверяем, собрался ли образ корневой системы /boot/bootfs.paq. Можно сверить дату создания и размер имеющегося /boot/bootfs.paq с только что собранным /sys/src/9/pc64/bootfs.paq. Можно и посмотреть содержимое актуального образа:

cd /boot
paqfs bootfs.paq
ls -l /n/paq/lib/firmware

Также возможно придется обновить ядро в загрузочном разделе:

9fs 9fat
mv /n/9fat/9pc64 /n/9fat/9pc64_bkp
cp /amd64/9p64 /n/9fat

Проверяем командой:

ls '#l1'

'#l1/ether1'

Если вывод такой, то все получилось. Теперь в загрузочном скрипте (можно и в lib/profile) добавляем строку:

bind -a '#l1' /dev

После перезагрузки должен присутствовать каталог /net/ether1, а cat /net/ether1/ifstats должен показывать список найденных сетей.

Теперь надо настроить для карточки сетевую конфигурацию и подключение.