= Старое железо. Заметка №2: OpenBSD 6.8
51t.ru
2020-10-17
== OpenBSD 6.8
=== Зачем нужен новый OpenBSD на старом компьютере
Ну, можно поставить что-нибудь старое. Только потом попробуешь сделать ssh
на свой хост, а он скажет, что нет поддерживаемого алгоритма. Захочешь
опеннет или лор через линкс или дилло почитать... а он скажет, что https
не https-ит. А уж отсутствие в Юникоде символа афро-лесбиянка-трансгендер это
вообще по сегодняшним меркам страшное преступление.
У меня есть две wifi карты для таких компьютеров - pcmcia-карта на malo(4)
и относительно современный wifi на urtwn(4). В старых дебианах добиться
их работоспособности не получилось - ни драйверов, ни прошивок (кстати, в
OpenBSD прошивки ставятся автоматически, но если нужно сразу, лучше позаботиться
об этом заранее и скачать прошивку вместе с установкой). Для Windows XP я
нашёл, пусть и не с первого раза, драйвер на PCMCIA-карту, и он даже видит
все сети. Но подключиться к роутеру с WPA2 оно просто не может.
Вообще, как выглядит подключение к сети wifi с wpa в OpenBSD?
iwconfig malo0 nwid MyNet wpakey MyNetKey dhclient malo0
либо похожие две строчки в hostname.malo0
Как это выглядит в Linux, хоть современном, хоть более старом, без
тяжеловесных сред для network manager? "Ну, это надо настраивать
wpa_supplicant...". Кто-то вообще знает, как его настраивать?
Другой пример - запись CD. В разных версиях debian - оно разное, то wodim,
то cdrecord, то xorriso, то кто-нибудь ещё. И у всех разные наборы ключей.
Поэтому я никогда не писал диски из консоли, всегда использовал xfburn. Но
последние 3 раза оно мне просто испортило болванку: по-моему, там что-то
безнадёжно сломано, но поскольку диски мало кто пишет, никто на это не обращает
внимание.
И ещё аргумент в пользу новых версий - это такой немаловажный аспект, как
настройка иксов в старых версиях хоть Linux, хоть OpenBSD. С Windows это
упирается в поиск старых драйверов.
Ещё пример. Как записать диск в OpenBSD, хоть сегодняшней, хоть версии
многолетней давности?
cdio tao file.iso
если это rw-диск, то перед этим ещё cdio blank. Всё.
В общем, установка современного OpenBSD имеет немалое практическое применение:
имеем какой-никакой веб, почту, rss и даже современный вариант fido под
названием IDEC, и всё это через WiFi и без проблем с https.
Раньше модно было себе делать "компьютер под фидошку". Вот и сейчас тоже можно.
Я себе сделал. Пишу с Celeron P2/400mhz. И закидываю этот текст и в фидошку,
и себе на сайт через ssh. Ни в Windows XP, ни в Debian 4.0 я бы так сделать
не смог.
Теперь, когда я объяснил, зачем, можно посмотреть, как.
=== Трудный путь OpenBSD 6.8 на старые компьютеры
Казалось бы, это так просто - поставить OpenBSD на старые компьютеры. Но если
вы когда-то ставили ленни, этчи и сквизы на такие компьютеры, и подумали,
что сейчас можно будет поставить это дело на поток, и давай разливать
свежайший OpenBSD, только компьютеры подноси, то вы ошибаетесь.
Нет, конечно есть большое преимущество между старыми ОС, где надо вручную
ставить драйверы - это тот самый поиск этих драйверов. Например, на отличную
PCMCIA-карту Psion 10Mbit + V90, которая 16-битная и работает даже на самых
древних ноутбуках, я не нашёл драйвер ни для одной версии Windows. В то же
время, все версии Debian этого века (привет тем, кто читает это в XXII) и
все версии OpenBSD этого века эту карту видят из-коробки. И так со многим
старым оборудованием. Осложняет ситуацию и то, что сейчас, сделав запрос
"поиск драйвера", вылазит какое-то несметное количество полуспамных ссылок,
которые вместо самого драйвера предлагают скачать "утилиту для скачивания
драйвера". Боюсь представить, что именно там скачивается, не пробовал.
А если надо найти драйвер не на 1 ноутбук, а на 20... тут или OpenBSD спасёт,
или уже никто не спасёт.
Но всё равно, поддержка железа, даже старого, в OpenBSD... прихрамывает.
=== Наш первый враг видеокарта
Большинство ноутбуков класса P2-P3 идут с видеокартой ATI Rage Mobility, или
просто ATI M1. С этой видеокартой проблем в OpenBSD нет, всё будет работать.
У меня самого лет 10 был такой ноутбук, он видел и Саржа, и Ленина, и Сквизина,
и многое другое, включая OpenBSD. На текущем ноутбуке такая же видеокарта.
Однако часто встречаются видеокарты, с которыми у OpenBSD не так хорошо. Тут
отмечу SiliconMotion LynxEM+ (и другие модели Lynx). На ноутбуке IBM 1200
Type 1161 эта видеокарта не работает до OpenBSD 4.6, а после 4.6 постоянно
выдаёт на экран разный мусор и ядовитые палитры. Что несомненный прогресс,
поскольку Type 1171 с такой же видеокартой вообще не работал.
Плохо себя зарекомендовали карты CyberBlade. А вот в Neomagic всё зависит от
модели, NM220 работала отлично, а вот другие модели с 3D в названии - дико
тормозили.
Про десктопные компьютеры ничего сказать не могу, но полагаю, что с S3 Trio
разных моделей проблем не будет - я вообще никогда не видел никаких проблем
ни с чем на этой видеокарте.
Для владельцев более новых компьютеров дополню, что из 4х моих более серьёзных
ноутбуков: (1)Asus с Ryzen2500 и видео Vega 8 (там есть еще nvidia gtx 1050,
но nvidia в принципе не поддерживается в OpenBSD) 1920x1080, (2)Asus с N4200 и
видео Intel 1600x900, (3)13" DEXP с видео Intel 1920x1080 и (4)11" кто-то ещё с
Intel 1366x768 второй и третий ноутбуки в принципе перестали загружаться в
OpenBSD 6.8. Судя по моему анализу коммитов - из-за некорректного видеорежима.
Ждём исправлений когда-нибудь.
=== Наш второй враг - звуковая карта
Есть некоторые звуковые карты, которые требуют прошивки. Например, популярная
в ноутбуках ESS Maestro 3 (там несколько похожих звуковых карт в этом модельном
ряду). Отличить эти карты очень просто: мы не добьёмся от них никакого звука
в Debian, пока не сходим на сайт alsa, не скачаем там исходники прошивок, не
скомпилируем их и не разместим вручную в lib/firmware. В отличие от других
устройств, чьи прошивки есть в non-free, этих прошивок в Debian нет.
Что мы делали в OpenBSD до 5.7 включительно? Просто включали и слушали звук.
Что мы делали после 5.7? А ничего, эти карты были просто сломаны, и вместо
звука выдавали хрюканье и скрипение. Но. Недавно я проверял одну такую карту в
6.7, и она там работала! Означает ли это исправление ошибок, или это просто
конкретное исключение на конкретном устройстве, покажет время и дополнительное
тестирование.
В общем, если проблемы со старыми звуковыми картами действительно исправлены,
тогда звук можно из списка врагов вычёркивать. Враг разбит, пал жертвою
коммитов.
=== Наш третий враг - PCMCIA
Тут вообще никакой закономерности нет. Одна карта на одном ноутбуке видится в
Debian, но не видится в OpenBSD. Другая на другом - видится в OpenBSD, но не
видится ни в Debian, не в винде. Что это, как это и что с этим делать - я
понятия не имею. Я с этим просто живу.
=== И не друг, и не враг, а так - KARL
Вы прошли почти весь этап установки, пробежали циферки "устанавливается
пакет такой-то 100%, такой-то 100%". И тут висит клавиша [done], на которую
можно нажать, чтобы сделать завершение установки. НЕ ДЕЛАЙТЕ ЭТОГО!
Тут в дело вступает KARL. То есть, перелинковка ядра. Даже на 256 мб с неплохим
свопом оно может рухнуть, а если не рухнет - компилироваться будет очень
долго. И потом будет так же компилироваться при каждой загрузке. На 128
встанет сразу, особенно если своп небольшой или его нет (сегодняшние версии
на 128 без свопа уже чувствуют себя плохо, но несколько версий назад это
был нормальный способ использования системы), и после перезагрузки система
будет неработоспособна.
Вместо нажатия Enter, чтобы подтвердить это [done], введите ! и нажмите Enter.
В появившемся приглашении консоли введите команду
rm -r /mnt/usr/share/relink
Затем введите exit, и только сейчас можно делать [done]
=== Что дальше
Если загрузка в установленную систему была удачной (что бывает не всегда),
чем нас порадует современный OpenBSD на Pentium 2 или 3?
Лично я сразу ставлю mc, neovim, neofetch, htop, icewm и awesome, затем
links+ с gui (командой pkg_add links+--), dillo, mplayer, youtube-dl,
cmus-ffmpeg.
Консольный Newsboat для RSS. Scrot для снятия скриншотов и feh для их просмотра.
Люблю рогалики, поэтому ставлю (в вариантах no_x11): angband, nethack обе
версии, stone-soup, cataclysm-dda. SDL версии на p2/p3 можно даже не пытаться
запустить.
rsync, unrar, xpdf и прочее - по вкусу.
Для впн-инга есть такая вещь, как dsvpn, deadly simple vpn, которая
элементарнейшим образом настраивается и на клиенте, и на сервере.
txt2tags и asciidoc (есть ещё asciidoctor) позволяют оформлять документы из
текста. Я пишу тексты на своём 400 мгц Celeron в neovim или mcedit (mc
любит крашиться в OpenBSD, осторожнее!) в формате txt2tags. После чего
перевожу в asciidoc. И уже asciidoc оформляю в html. Все три файла выкладываю
на сервер, а asciidoc немного правлю и отправляю в сеть IDEC.
Для контроля версий использую mercurial.
В качестве клиентов idec использую текстовый iitxt (который работает даже
с python 2.4) и caesium (golded-like редактор на python3).
Относительно же youtube и прочих видеосервисов сложно сказать, что можно
легко и просто с них качать. Да, youtube-dl работает, и mplayer вполне может
прожевать видео в низком качестве на pentium 2. Вот только есть маленький,
но в то же время большой вопрос с поиском ссылок: youtube ни в links, ни в
dillo не открывается.
Вот так и живём.
Теперь, когда мы доказали, что OpenBSD 6.8 очень нужен на старых компьютерах,
в следующих выпусках мы докажем, что он там не больно-то и нужен, есть вещи
и поинтереснее. Но не сразу. Сначала будут выпуски про IDEC и про сетевую
загрузку (ну и про прочее использование старых систем в качестве серверов для
полезняшек, облегчающих жизнь). Определённо, к OpenBSD 6.8 я ещё вернусь.