Бесплатный прокси к Docker Hub
Сегодня ночью Docker Hub закрыл доступ к своему сервису пользователям из России.
Мы подготовили бесплатный прокси, который возобновляет этот доступ.
Инструкция по ссылке ←
Сегодня ночью Docker Hub закрыл доступ к своему сервису пользователям из России.
Мы подготовили бесплатный прокси, который возобновляет этот доступ.
Инструкция по ссылке ←
Автор текста: Cheapskate
Автор перевода: Albert_Wesker
Некоторое время назад я написал статью, в которой критически высказался о Linux-разработчиках, не желающих поддерживать дистрибутив, если он предназначен для работы на компьютерах, которым более 15 лет. За это я получил немало критики от читателей с Hacker News. Кто-то указывал, что я не понимаю, насколько же это сложно – создать и поддерживать дистрибутив Linux. Были и такие, кто советовали мне просто накатить на старый компьютер старую версию Windows. Я же начал пользоваться Linux в первую очередь для избегания Windows, так как считал её монструозным порождением Билла Гейтса. Фактически, разработчики операционной системы, ранее обещавшие освободить меня от Windows, теперь склоняют меня вернуться к Windows, как только мой компьютер настолько состарится, что им станет неудобно его поддерживать. Ответы, которые я получаю от Linux-разработчиков, явно свидетельствуют, что Linux больше не является операционной системы для технарей-компьютерщиков, желающих сохранить на ходу свои любимые винтажные машины. Напротив, Linux превратился в операционную систему, которую разработчик рассматривает как средство для прокачки карьеры. Те, кому интересно подробнее разобраться в нарастающей дисфункциональности Linux и узнать, почему сложилась такая ситуация, могут посмотреть это видео на YouTube.
Некоторые разработчики советовали мне собрать собственный дистрибутив Linux. Хотел бы я! К сожалению, по паре причин этот вопрос не обсуждается. Во-первых, у меня просто нет на это времени. Слишком много времени у меня уходит на работу по поддержке моих сообществ Cheapskate's Guide и Blue Dwarf. Во-вторых, даже если бы я взялся за создание собственного дистрибутива, то получился бы ISO-образ размером более 1 гигабайта и с репозиторием на десятки гигабайт, а такой крупный софт я просто не мог бы выложить в общее пользование, так как мне было бы слишком дорого передать все эти данные.
Учитывая, что немного найдётся Linux-разработчиков, готовых поддерживать старые версии своих дистрибутивов в рабочем состоянии, единственный разумный с моей точки зрения выход – сохранить мои любимые дистрибутивы на будущее. К счастью, я сохраняю ISO-образы Linux, которым более 15 лет. Сейчас у меня есть резервные жёсткие диски с самыми разнообразными дистрибутивами. Вот неполный список: AntiX 19.4, AntiX 22, AntiX 23, Arch Linux 2020.09.01, Debian 11.3, Debian 11.1.0 Server, DSL 4.4.10, версии 1.2 и 4.4.9 со встроенными DSL, Kali Linux 2022.2, Kodachi Linux 8.15, LibreELEC 8.2, Mint 9, Mint 13, Mint 17, Lubuntu 22.04, MV Linux 21.1, Nano Linux 1.3, OpenElec 8.0.4, OpenWRT 19.07.7 обобщённый, Parrot OS 4.11.3, Parrot OS 5.3, PirateBox, Noobs v2_4_5, OSMC_TGT_rbp2_20190424, Raspberry Pi Buster 2020-05-27, Raspberry Pi Buster Lite 2020-05-27, Raspios Bullseye 2023-5-03, Raspian Buster 2019-07-10, Raspbian Jessie 2017-07-05, Raspbian Stretch 2017-11-29, TAILS 2.2.1, TAILS 4.5, Zenlive Linux 7.0 и Zorin 9 Lite. Большинство из этих версий в Интернете уже не найти. Если бы не моя предусмотрительность, то и у меня не было бы к ним доступа. Для большинства пользователей кроме меня они навсегда утрачены.
Со всеми вышеупомянутыми ISO-образами Linux существует важная проблема: в них содержатся только такие приложения, которые поставляются в виде ISO-файлов. Зачастую в них нет программ для чтения RSS-лент, браузера Lynx, PHP, веб-серверов, nmap, bleachbit, cowsay и fortune, truecrypt или Veracrypt, Unetbootin, macchanger, espeak, hwinfo, cpulimit, thermald, calibre, fbreader, браузера Dillo, браузера Vivaldi, libdvdread4, libdvd-pkg, libdvdnav4, загрузчика yt (теперь yt-dlp), почтового клиента Alpine, pulseaudio и многих других, от которых бы я не отказался. Многие из этих пакетов и сопутствующие им зависимости содержатся в репозиториях вышеупомянутых дистрибутивов. К сожалению, по прошествии многих лет установить их нельзя, поскольку многие репозитории теперь просто не существуют! Также можете не рассчитывать найти многие из библиотек, от которых зависят старые версии этих приложений для Linux.
Очевидное решение – скачивать и сохранять не только ISO-образ каждого дистрибутива Linux, но и его репозитории. Да, это осуществимо, и в Интернете можно найти множество статей, в которых объясняется, как скопировать репозиторий. Но сам процесс скачивания и хранения файлов на десятки гигабайт на множестве резервных жёстких дисков для каждого дистрибутива порой утомляет, особенно, если приходится делать это годами и учитывать такие факторы, как гниение бит и плановые обновления винчестеров.
Теперь, когда многие из моих старых ПК слишком устарели для современного Linux, мне приходится серьёзнее относиться к информации и сохранять не только базовые ISO-образы Linux, но и дополнительные файлы. Немного поразмыслив, я решил пойти по компромиссному пути, между двумя крайностями «сохранять только ISO-образ» и «сохранять ISO и все связанные с ним репозитории». Итак, пока такая возможность ещё не утрачена, я решил сохранять хотя бы по одной версии дистрибутива Linux плюс дополнительные пакеты к нему. Очевидный вариант – а в настоящее время, вероятно, и единственный – работать с AntiX Linux. Я не особенно переживаю за AntiX, поскольку багов в нём хватает. Кроме того, он работает несколько иначе, нежели другие Debian-подобные дистрибутивы. Вероятно, дело в том, что он использует легковесные среды для рабочего стола, в частности, IceWm. Они довольно старые и никогда не стандартизировались до такой степени, до какой принято доводить более современные окружения. К сожалению, не знаю ни одного другого до сих пор поддерживаемого дистрибутива, который бы нормально работал на компьютерах от двадцати лет и старше. Я пробовал несколько «легковесных» дистрибутивов и убеждался, что они просто кишат багами, и пользоваться ими на компьютерах старше 15 лет решительно невозможно.
Я скачал ISO-образ AntiX-23_386_full.iso современной версии AntiX со страницы загрузки AntiX. Это самая «полная» версия, в которой содержится больше всего приложений для работы на ПК. Это 32-битная версия. Кстати, немного найдётся таких Linux-разработчиков, которые до сих пор предоставляют 32-битные версии своих дистрибутивов. Пожалуйста, не надо мне доказывать, что 32-битную версию любого дистрибутива Linux вполне можно скомпилировать из исходного кода. Я не раз безуспешно пытался скомпилировать таким образом хотя бы единичное приложение, поэтому на собственном опыте знаю, насколько маловероятно преуспеть с таким подходом.
Попытался установить AntiX из скачанного ISO-файла на мой компьютер fDell Precision M20, 2004 года выпуска. Эта машина может похвастаться ЦП Pentium M (Centrino) с частотой 1,86 ГГц и 2 ГБ ОЗУ (это для неё максимум). Этот компьютер я купил в 2019 году на барахолке за 20 долларов. Даже если вы совсем новичок в Linux, вам не составит труда установить AntiX, так как установщик в нём включён. К сожалению, я неоднократно и безуспешно пытался поставить его на «жёсткий диск» Precision M20 (за громким названием скрывается карта памяти microSD с адаптером IDE-to-microSD). Всякий раз казалось, будто установка прошла успешно. Я даже проверял систему при помощи Gparted, убеждаясь, что раздел диска действительно создан, с него можно загрузиться, и в него записываются данные. Потом перезагружаюсь – и никакого раздела нет! Короче говоря, мне не удавалось установить на этот компьютер ни одну из версий AntiX, ни 19.4, ни 23, ни через установщик с GUI, ни через командную строку. Теряюсь в догадках, но, возможно, что-то не так с самой microSD-картой или адаптером, поэтому установка и не выходит. Ранее я уже поднимал проблему некачественных установщиков Linux, поэтому здесь не стану снова в неё углубляться.
Поскольку мои первые попытки установить AntiX на Precision M20 успехом не увенчались, я решил повторить попытку на ноутбуке с обычным твердотельным жёстким диском SATA. Для начала установил компактный твердотельный диск SATA в мой ноутбук Lenovo Thinkpad T500, модель 2008 года, воспользовался при этом утилитой для установки AntiX через командную строку. AntiX установился! К сожалению, по-видимому, мне не удалось бы таким способом установить сверх одного-двух дополнительных пакетов при помощи команды «apt-get install» (уверен, что сначала я выполнил «sudo apt-get update»). В AntiX на этой машине проявлялись и другие неприятные баги, поэтому я подумал, что лучше воспользуюсь другим дистрибутивом Linux.
Несмотря на все эти неудачи, я не отступал. Попытался установить AntiX 23 на ноутбук Dell Inspiron 5100, модель 2002 года, с жёстким диском IDE на 40 ГБ и с 256 МБ ОЗУ. Это самый старый из имеющихся у меня действующих компьютеров. Установщик потребовал, чтобы я выделил ему весь жёсткий диск, но AntiX всё-таки встал. Затем, чтобы сэкономить место, я ужал сегмент с AntiX до 14 ГБ. Для этого я воспользовался Gparted на загрузочной флешке с AntiX, так как Gparted не может ужать сегмент, используемый в настоящий момент. Держал в уме, что нужно сделать перманентную резервную копию этого сегмента и потом попробовать устанавливать её на другие старые компьютеры. Непосредственно после установки дистрибутив занимал около 5 ГБ дискового пространства. Я обновил получившуюся конфигурацию при помощи «sudo apt-get update», а потом приступил к установке дополнительных пакетов.
Как решить, какие именно пакеты Linux устанавливать? Если у вас есть рассчитанные на работу под Linux копии приложений, не содержащие зависимостей, то, теоретически, их можно установить в любой момент (хотя, чтобы максимально перестраховаться, можете поставить их сразу же). Важно установить именно те пакеты Linux, у которых есть по несколько зависимостей, ведущих в репозитории. В данном случае у вас возникает такая дилемма: требуется установить те приложения, которые могут вам понадобиться не только в ближайшем будущем, но, вероятно, и через 10, и через 20 лет. Конечно, непросто сходу определить, что это за приложения. Но можете попробовать установить по одному-два приложения всех основных типов: браузер, читалка для электронных книг, агрегатор новостных лент, офисный пакет, утилиты, т.д.
В качестве первой попытки я установил при помощи «sudo apt-get install» следующие дополнительные пакеты себе на Inspiron 5100:
nmap
ftp
tcpdump
iotop
nethogs
cowsay
fortune
macchanger
bleachbit
lynx
liferea
gedit
thermald
goldendict
mplayer
smplayer
aspell
fbi
w3m
seamonkey
Установив вышеперечисленные пакеты, я убедился, что все они сохранены на жёстком диске в каталоге /var/cache/apt/archives в формате ".deb". Кроме того, посмотрел с DVD кино через Smplayer. Шло медленно, но работало. С огромными проблемами установил библиотеки, необходимые для просмотра DVD-фильма в ОС Parrot 4.11 и выше. Очевидно, разработчик Parrot OS считает, что больше никто уже не смотрит фильмы с DVD.
Всякий раз при установке дополнительных пакетов в любой дистрибутив Linux, вы рискуете его дестабилизировать. Я не обнаружил никакой явной рассогласованности в работе того AntiX, который сам и установил, но, чтобы с уверенностью полагать, что всё прошло нормально, дистрибутив нужно тестировать неделю или более. Чтобы сохранить эту вполне работоспособную конфигурацию AntiX, я сделал резервную копию 14-гигабайтного сегмента и сохранил её на внешнем диске.
Затем я попытался установить следующие приложения, входящие в оборудованный графическим интерфейсом установщик пакетов для AntiX:
pulseaudio
Audacious
GIMP Basic
ImageMagick
Handbrake
Adobe Reader
xfce4-screenshot
VLC
Adobe Reader не установился, предположительно, потому, что для него не выполнялись две зависимости, которые мне не удалось подтянуть. Audacious не заработал. Когда я попытался проиграть в Smplayer и VLC фильм с DVD и MP4-файл, ни в одном из четырёх вариантов не было звука, в обеих программах ролики шли очень медленно, а в конце концов зависали. Позже мне удалось заставить VLC зазвучать, но всё равно ни одно из двух этих приложений не стало работать хотя бы так же гладко, как работал Smplayer до установки последнего набора программ. Я даже пытался нарастить ОЗУ на 750 МБ, но это проблем не решило. Я решил перенести резервную 14-гигабайтную копию AntiX на Inspiron 5100, вернувшись таким образом на более работоспособную машину. Пока мне кажется, что чем меньше приложений установлено, тем стабильнее работает вся система, а мне было бы предпочтительнее рассчитывать на уверенное воспроизведение видео, пусть и ценой отказа от некоторых приложений.
Есть два способа перенести файлы ".deb" в каталог /var/cache/apt/archives на другой компьютер, где установлен новый экземпляр AntiX. Первым делом нужно сделать резервные копии всех файлов ".deb", дополнительно к ISO-образу системы AntiX. Затем можно попытаться установить ISO на новый компьютер, скопировав файлы ".deb" в каталог /var/cache/apt/archives на новом компьютере, а затем установив их при помощи «apt-get install». Второй вариант – просто создать файл ".img" и записать в него весь сегмент с AntiX плюс дополнительные пакеты, а затем всё это скопировать на новый компьютер.
Как только я пошёл по первому пути, нарисовалась очевидная проблема. По какой-то причине «apt-get install» не понимала, какие ".deb"-файлы из каталога /var/cache/apt/archives от каких зависят. Не знала, в каком порядке их нужно устанавливать, если только они не лежат в репозитории. Подозреваю, что команда «gdebi -i» может устанавливать отдельно взятые пакеты с зависимостями, а команда «dpkg --unpack» – устанавливать пакеты безотносительно их зависимостей. Но у меня ни с одной ничего не получилось. Путь, на первый взгляд показавшийся простым как с точки зрения установки, так и относительно хранения дополнительных пакетов, не входящих в ISO-образ AntiX, на практике вышел более тернистым.
Таким образом, немного потрепав себе нервы за исследованием первого подхода, я осознал, что не представляю, как методично устанавливать файлы ".deb" в каталог /var/cache/apt/archives. Поэтому решил попробовать второй подход.
Второй подход выглядел так:
Установить AntiX в небольшой сегмент на жёстком диске компьютера (напомню, после установки этот сегмент можно ужать при помощи Gparted);
При помощи «sudo apt-get install» установить любые дополнительные пакеты на мой вкус;
Сделать файл-образ небольшого сегмента (допустим, 14 ГБ) и вынести его на флешку командой «sudo dd if=/dev/sda of=/media/user/usb/AntiX_installed_with_extra_packages.img bs=1M count=14812 conv=notrunc, noerror» (обратите внимание: здесь используется /dev/sda, а не /dev/sda1);
Запустить другой компьютер с загрузочной флешки с Linux, а уже в него вставить флешку, на которой содержится копия только что изготовленного мною образа AntiX;
Скопировать образ AntiX на жёсткий диск нового компьютера при помощи «sudo dd if=/media/user/usb/AntiX_installed_with_extra_packages.img of=/dev/sda bs=1M conv=notrunc,noerror», и, наконец;
Молиться, чтобы конфигурационный файл grub заработал на новом компьютере.
На этапе 3 я воспользовался «count=14812», чтобы скопировать первые 14,5 ГБ с жёсткого диска. Это я сделал лишь чтобы удостовериться, что у меня будет скопирована и главная загрузочная запись, на случай, если её не окажется в сегменте sda1. Если конфигурационный файл grub не заработает на новом компьютере, то придётся поразмыслить, как изменить его, чтобы загрузка прошла. Обратите внимание: я скопировал на новый компьютер лишь 14-гигабайтный сегмент sda1, но в какой-то момент его загрузочная последовательность оборвалась, поэтому и потребовалось указать «count=14812».
Именно вторым способом мне удалось перенести установленный AntiX с компьютера Dell Inspiron 5100 на модели Emachines KAV60 и Compaq Presario V5000. Оба раза всё получилось, даже не пришлось вносить изменений в файл grub.cfg. После того, какую огромную фрустрацию доставил мне первый способ, успех в данном случае практически сподобил меня простить разработчиков Linux и AntiX в частности, хотя, согласитесь, они сделали очень хрупкую операционную систему. Как говорится, осадочек остался.
Если кому-то из вас придётся работать со старым дистрибутивом, обязательно учитывайте эти риски. Конечно же, может быть опасно бороздить Интернет на таком старом софте. Может быть, воспользуйтесь Gemini или другой оверлейной сетью, которая пока не кишит подозрительными личностями (интересно, а существуют ли ещё такие сети?). Может быть, отключите JavaScript в браузере, и такой защиты будет достаточно? Ещё лучше было бы выделить старый компьютер строго для путешествий по Интернету, а на другом компьютере хранить исключительно личные данные. Также работает подход с использованием нескольких загрузочных USB-флешек на одном старом компьютере. Любая старая версия любого дистрибутива Linux отлично подойдёт для оффлайновой работы. В самом деле, а есть ли более удобные варианты для старого компьютера, на котором современный дистрибутив Linux? Может быть, Windows? Нет, я не враг моим старым компьютерам!
Ни в коем случае не утверждаю, что вышеописанный метод спасения старых версий любимых дистрибутивов Linux идеален (то же касается любых других операционных систем, которые вы хотели бы запустить на старом компьютере). Может быть, читатели предложат способ получше. Но я думаю, так лучше, чем довольствоваться лишь теми приложениями, которые оказались в конкретном образе, либо пробовать копировать целые репозитории (и эти резервные копии тоже копировать), а затем пытаться хранить их десятилетиями. Если бы мы только могли рассчитывать, что разработчики Linux сделают это за нас. Но они не сделают.
Облачные сервисы Timeweb Cloud — это реферальная ссылка, которая может помочь поддержать наши проекты.
Подпишись на наш блог на Пикабу и Хабре, чтобы не пропустить новые интересные статьи.
Автор: wilelf
Клавиатура Суры ПК8000
Первый компьютер появился у меня дома в 6 лет. Это была Сура ПК8000 с черно-белым телевизором. Затем я попробовал игры на MSX-2 с цветным монитором, различные модели БК, PC и ZX Spectrum.
Последний был моим любимцем на протяжении нескольких лет. Он достался мне в корпусе от “Суры”, которую собирали на заводе в Пензе, с черно-белым монитором “Корвет” и двумя дисководами. Естественно, что в начале 90-х я понятия не имел, как выглядит настоящий “Спектрум”. Важнее было, что софта для него, в отличие от “Суры” и БК, было навалом, а клоны были во многих семьях и проблем с обменом коллекциями не существовало.
Что бесило, так это кривые сочетания клавиш управления во многих играх. Какой синклер-джойстик? Почему OPQAM? Есть же нормальные курсорные стрелки на клавиатуре?
Скриншот выбора управления в игре Rolling Thunder (Keyboard ― те самые OPQAM)
Что еще хуже, при написании программ приходилось либо долго втыкать в мелкие наклейки на клавишах, либо заучивать сочетания. Отдельных кнопок для управления курсором или того же backspace не было.
Почитав историю Синклера, я решил, что это было сделано в угоду дешевизне, минитюаризации, а еще потому, что многие использовали в играх джойстик.
Но после того, как я посмотрел на клавиатуры популярных компьютеров конца 70-х и начала 80-х, я решил, что создатели ПК не особенно заморачивались, и взяли за базу печатные машинки. Действительно, кому могут понадобиться курсорные клавиши, расположение которых будет одинаковым на всех клавиатурах, которые можно нажимать одной рукой, да еще вслепую?
Хотя нет, в Apple настолько заморочились, что на Apple Lisa и Macintosh курсорных клавиш не было вообще. Так покупателей приучали пользоваться мышкой.
Клавиатура Apple M0110
Пожалуй, все неудобства и “боль” пользователей при переходе с модели на модель можно понять только показав, как это было.
На печатных машинках курсорные клавиши не были нужны, но на компьютерах для перемещения по листингам, меню, управлению в играх вроде бы необходимы?
Однако, возникает ощущение, что создатели компьютеров просто не пользовались своими творениями, т.к. на некоторых моделях типа Атари 400, 800 и 800XL клавиатура в неизменном виде существовала несколько лет.
Про Apple Lisa и Macintosh я написал в самом начале. На Apple II курсорные клавиши появились. Но… только влево и вправо. Было бы интересно понять логику.
Клавиатура Apple II
Неудобство проявлялось еще и в том, что в играх управление было совершенно разным. Например, в Ms.Pac-Man клавиши A и Z отвечали за вверх-вниз, а в Lode Runner управление было вообще без курсорных клавиш ― IJKL.
Скриншот игры Ms.Pac-Man
Полноценный блок был добавлен в модели Apple IIc и IIe
В Apple III разработчики снова учудили, и расположили клавиши, как получилось (три клавиши в ряд, а одна сверху).
Пользоваться любым из решений одной рукой неудобно. Но хуже всего, что пересесть с ПК одного производителя на на другой было реальным кошмаром.
Для управления курсором приходилось удерживать Control, а в младшей модели еще и мириться с мембранной клавиатурой.
Раскладка уже в ряд, и без CTRL.
То есть, если вы работали на Атари, а потом вдруг решили перейти на BBC, нужно переучиваться заново пользоваться клавиатурой.
Маленькие клавиши в верхней части корпуса размещены так, что положить руки, ничего не задев, не получится.
Кстати, порядок клавиш отличается и от Атари и от BBC Micro.
Есть вверх, вниз, влево, вправо, но на разных частях клавиатуры.
Надо отметить, что в Японии дела обстояли ничуть не лучше.
Портативный ПК Casio FX 9000p
Очень странным мне показалось решение в Commodore 64, который получил огромную популярность и репутацию игрового ПК. Обратите внимание — за вверх-вниз и влево-вправо отвечают по одной клавише. Хорошо, хоть кнопку shift разместили так, чтобы можно было управлять одной рукой.
Commodore 128 получил уже рядную раскладку:
А вот в Commodore Plus/4, на мой взгляд, вышло совсем неудачное решение. Блок с курсорными кнопками слишком мал и подойдет только для редактирования текста.
Ближе к привычному нам расположению, но средний палец должен совершать менее удобное движение для перемещения вниз-вверх.
Клавиатура Amiga 1000
А вот Amiga 500 и 2000 уже получили Т-образное расположение.
Я был убежден, что изобретение стандарта принадлежит IBM, но оказалось, что еще раньше появления клавиатуры IBM Modem M (1985) по-крайней мере, две компании использовали Т-образное расположение курсорных клавиш. Но, надо отдать должное, IBM повлияла на широкое распространение этого варианта.
Я специально потратил время на поиск картинок старых компьютеров и терминалов. Первые клавиатуры с привычным нам расположением появились еще в 1970 или раньше.
Терминал ADDS Consul 880
А более современный вариант появился в 1982 году благодаря Digital Equipment.
Клавиатура LK201
Плохих примеров реализации курсорных клавиш очень много. Во время подготовки статьи я не раз мысленно говорил “спасибо” дизайнерам и разработчикам, благодаря которым можно легко пересесть за другой компьютер, и продолжить редактировать свой пост, не спотыкаясь, на чужой клавиатуре.
Если у вас есть предположения, почему так долго не было единого стандарта, или у вас есть объяснение логики производителей, поделитесь в комментариях!
Автор: MechNIX
Оригинальный материал
Представляю Вашему вниманию записку восстановлении терминала Tandberg TDV 2215 S (он же, согласно шильдику на задней части корпуса, TDV 2200 S)
Интерес к подобному терминалу вспыхнул после давнего воспоминания о венгерском терминале Videoton 52100. К сожалению такой терминал приобрести не удалось, но вот когда я увидел в продаже норвежский терминал Tandberg, сразу приобрёл. С покупкой повезло, терминал оказался НОВЫМ, совершенно не использованным с 1983 года (ориентируюсь на шильдик на задней части монитора).
За большой пластиковой заглушкой обнаружился ряд интерфейсов, в том числе и стандартный V.24 (RS-232) в формате разъема db25.
Подтверждение наличия и описание других интерфейсов нашел в интернете.
Терминал комплектовался следующей клавиатурой, которая подключалась разъемом db9.
После включения на экране, красивым зеленым цветом, отобразилась ошибка, которая меняла свой код, по мере подключения и отключения клавиатуры.
Коды этих ошибок требовали расшифровки, поискав, обнаружил в интернете, подробнейшую документацию, в отсканированном виде, включающую в себя мануал по использованию и электрическую принципиальную схему.
Ошибка вела к микросхеме энергонезависимой памяти ER3400.
Изучив свойства и назначение микросхемы, выяснил, что это энергонезависимая память, в которой хранятся настройки терминала после его выключения. Согласно спецификации выяснил, что срок хранения информации составляет 10 лет. Было принято решение замены микросхемы.
Ничего подобного не найдя на Алиэкспресс, я обнаружил лот на интернет-аукционе и сделал заказ. Параллельно, аккуратно открыл корпус, и обнаружил идеальнейшее состояние компонентов.
Вид сзади:
Вид сверху:
Для полноты восприятия заглянул и в клавиатуру.
Производство клавиатуры датируется 1978 годом.
Требуемая микросхема, оказалась заботливо установленной в "кроватке", что в дальнейшем облегчило замену.
Подоспевшие с аукциона микросхемы выглядели, как мечта аффинажника, ну красота-ведь?
Заменив микросхему и прочитав документацию обнаружил кнопку «RESET». Кнопка расположена на нижней части терминала и с первого взгляда была незаметна.
После включения терминал и нажатия кнопки «RESET» ошибка исчезла и пришло воодушевление, всё идёт правильно.
Настало время обнаружить конфигурационное меню. Согласно мануалу, оно должно было появиться, при нажатии сочетания кнопок CTRL и дважды HELP, но проблема заключалась в том, что на клавиатуре отсутствовали, как сама кнопка HELP, так и намёк на неё. Методом «научного тыка» в настроечное меню удалось зайти совершенно другим сочетанием SHIFT и два раза MODE.
Вот так выглядят экраны настроечных меню.
Общие настройки, относящиеся к формату курсора, частоте мерцания, bell (гудку) и типу экрана: зеленые символы на черном фоне (как в Матрице), либо инверсия моно-цвета.
В этом меню специфичные настройки, с которыми предстоит поэкспериментировать детально и самое интересное, в рамках цели: настройки интерфейсов, для связи с внешним миром.
Для связи с внешним миром, был выбран COM-порт, V.24, он-же RS-232. Дефолтные настройки 8 bit, без паритета и одним стоп-битом (8N1). Настройки принтера и модема тоже присутствуют, но ввиду отсутствия этого оборудования, оставлены без изменения.
Настроечное меню, для задания пресетов, аппаратных кнопок клавиатуры.
Собственно для чего всё делалось? Мне было интересно получить в использование настоящую аппаратную консоль, подключить к подобию сервера и поуправлять им, ощущения 1983 года.
В качестве серверной OS была выбрана OpenBSD 3.6, но вместо неё может быть любая OS, будь-то: Windows, Linux, либо xBSD - семейство.
Шелл OpenBSD, был настроен на управление через аппаратный COM - порт, с соответствующими настройками 8N1, ровно такие-же были выставлены в настройках терминала Tandberg. Для соединения был использован нуль-модемный кабель db9 to db25. И получилось то, чего добивался.
На скриншотах отражены этапы загрузки OpenBSD.
Результатом явилось приглашение авторизации... Дальше можно администрировать, управлять современным сервером, будто из далекого 1983 года.
Такая вот получилась распечатанная "капсула времени". Если есть идеи по дальнейшему интересному применению терминала, пожалуйста, пишите.
Спасибо за уделённое внимание:)
Подпишись на наш блог, чтобы не пропустить новые интересные посты!
Автор: dlinyj
Оригинальный материал
Дополнительные фото и видео в источнике материала.
Терминал VT520 c клавиатурой LK46W-A2
После моего предыдущего поста с подключением советской клавиатуры к современному ПК, я как-то заразился оригинальными клавиатурами от DEC, и уж больно хотелось их испытать в деле. И на удивление, на досках удалось найти даже клавиатуру LK201, однако для меня показалась не очень уж интересной. А вот клавиатуру Wyse 85 со свичами Cherry MX нашёл намного более стильной и крутой. Однако смущал вопрос, как же её использовать с современным железом, удобно ли будет такое расположение клавиш?
И тут мне на глаза попадается объявление с ещё одной терминальной клавиатурой LK46W-A2 которую можно подключить к обычному компьютеру по стандартному интерфейсу PS/2, но с количеством клавиш и расположением, как у LK201 с небольшими дополнениями. После того как ознакомился с информацией, принял волевое решение купить кота в мешке и попробовать эту клавиатуру с обычным ПК, а также понять, что же делают все остальные «нестандартные клавиши». Этакий реверс-инжиниринг клавиатуры.
Итак, спустя пару недель мне пришла посылка с этой удивительной клавиатурой. Терминал найти невозможно, а вот клавиатуру – пожалуйста.
Клавиатура LK46W-A2 собственной персоной
Удивительно хорошая сохранность, белый пластик, что редкость для таких старых устройств. Немного потёртая из-за неправильного хранения, и отсутствует одна выдвижная ножка. Наклейка сзади гласит, что это за клавиатура.
Наклейка модели
С большим трудом удалось установить, что использовалась с моделями терминалов DEC VT520 (см КДПВ). Терминал не найти, а клаву – вот, пожалуйста.
Вид снизу
Предварительное включение показало, что клавиатура рабочая, но требует водных процедур. Поэтому принял решение её разобрать. Само устройство разбирается не так просто: требуется отогнуть большое количество пластиковых защёлок, благо на корпусе изделия есть специальные технологические отверстия для отвёртки. После нескольких пассов две половинки клавиатуры разделились.
Внутри стандартная плёночная клавиатура, с резиновыми «давилками».
Что приятно удивило, что все длинные клавиши имеют металлические поддерживающие клипсы от перекоса. И все места трения смазаны густой смазкой.
Металлические клипсы
Плёнка клавиатуры прижимается к контроллеру специальной резинкой, вмонтированною в корпус клавиатуры.
Резинка для прижима контактов
Контроллер – обычная капля, 4 стандартных контакта для ps/2: Data, Clock, +5, GND.
Контроллер
После разборки, корпус клавиатуры ждала процедура купания. Не стал фотографировать, как я мою клавиатуру в ванной с мылом. Грязи вышло достаточно много.
Когда омовение прошло, прежде чем окончательно закрыть клавиатуру в корпусе, сделал тестирование работоспособности всех клавиш на резинке.
Тестирование перед закрытием
Не забываю смазать все движущие части, и окончательно собираю клавиатуру.
Если взглянуть на фотографию, и сравнить две клавиатуры, то можно заметить, что, во-первых, клавиш намного больше, а во-вторых, непонятно что эти клавиши делают. Сравните, для примера, расположение клавиш вокруг кнопки «Z».
В чём прикол?
На самом деле вас немного разыгрываю, нижняя клавиатура имеет сербскую латинскую раскладку, у которой «Y» и «Z» поменяны местами:
Если тут есть сербы, объясните мне, что за спецсимволы нанесены на клавиши и где они используются?
Главный вопрос, который меня волнует: как понять какая клавиша за что отвечает?
Изначально пытался найти хоть какую-то внятную документацию по теме, но в результате пришлось действовать методом научного тыка. Для этого пошёл на сайт en.key-test.ru и начал нажимать все клавиши, перебирая их последовательно. В результате получилась такая картинка:
Вы видите нажатую левую кнопку мыши? Это тоже реакция на нажатие одной кнопки, и, как можно заметить, практически все клавиши присутствуют на этой клавиатуре. PrtScr у меня под линуксом просто вызывало создание скриншота и не перехватывалось этим сайтом, то есть и она тоже работает.
Для своего удобства на клавиатуре расположил бумажки, с подписями, где и чего находится. Вопросами обозначены те клавиши, на которые реакции никакой не было.
На самом деле Right Ctrl
Итак, что же тут интересного:
Клавиши F13, F14, Help, Do, F17, левый Compose Character – не определены. Назначение и функциональность пока неясны.
Клавиша ESC расположена, где находится тильда "~" на обычной клавиатуре, а тильда рядом с клавишей «Z».
Функциональные клавиши типа Home, End, PageUp, PageDown, Isert и т.д. находятся в других местах, но достаточно логично. Не стал их подписывать, потому что и так можно догадаться (например, Re-move = Del, Prev = PageUp). Часть функциональных клавиш расположена на клавишах F18-F20.
Цифровой блок достаточно стандартен, кроме одной клавиши – это клавиша «минуса», она даёт странный код: "±". Да, символ «плюс-минус», который можно набрать прямо с клавиатуры, с одной клавиши (Linux Mint).
Согласно стандарту, клавиатура при нажатии передаёт скан-код нажатия клавиши и скан-код «отжатия» клавиши.
Примеры скан-кодов стандартной клавиатуры
Как можно заметить, что добавление новых клавиш клавиатуры осуществляется с помощью код расширения 0xE0, и, можно предположить, что необычные клавиши этого устройства тоже будут идти через дополнительный код.
Для начала попробовал получить скан-коды неизвестных клавиш через утилиту showkey. Для этого нужно полноправно завладеть устройством ввода, без иксов. Поэтому переключаюсь на консоль комбинацией клавиш ctrl-alt-F1 и ввожу:
showkey -scancodes
И начинаю радостно жать на неизвестные клавиши, но удивительно: ничего не происходит! Те клавиши, которые мне удалось перехватить, дают корректный скан-код, а вот «тайные» — «молчат». То есть либо эти клавиши вообще не работают, либо фильтруются на уровне драйвера ядра.
Начал думаю, что же мне проще: подключить логический анализатор, либо найти другой способ получения скан-кодов нажатых клавиш? И тут я вспомнил, что у меня есть тестовая машина с DOS.
Синей пеленой экран заполнил чистый DOS
Мышь…
Стала вдруг квадратной, потеряла форму мышь…
Я разбил окно,
девяностопятое мастдайное окно,
И поставил DOS, и тогда увидел:
Это счастье, — вот оно.
Итак, для того чтобы получать скан-коды клавиш, нужно иметь какую-то программу, которая бы читала их из BIOS. Контроллер клавиатуры позволяет читать коды набранных клавиш из порта 0x60, осталось только это всё аккуратно написать. Для того чтобы понять, о чём я говорю, вы можете посмотреть пример на ассемблере.
Поскольку я человек ленивый, знаю, что всё давно придумано за нас, решил погуглить. У меня как раз в системе есть qbasic, значит, можно сходу найти пример приложения для него. И беглым гуглением, после нескольких тестов нашёл приложение, которое наиболее полно меня устраивает.
Не буду описывать весь код, главное, что оно читает скан-коды из порта, и в удобоваримом для меня виде выводит на экран. Вот, пример чтения кода из порта.
После того как протестировал в Dosbox, пришла пора проверить на реальном железе.
Тестовая машина с ДОС
Для своего удобства делал фотографии с именованием «неизвестной» клавиши и её кодом. Так получилось, что после запуска приложения, из буфера читается «мусорный код». Его я прикрывал бумажкой, важно, что ниже. Вот, например, нажатие левой клавиши «Compose Character».
Как я и предполагал, все они идут через код расширения 0xE0. То есть, код клавиши получается: 0xE00F. Вторая пара байт 0xE08F – это код отпускания этой клавиши (на это действие тоже есть отдельный код).
Ну и по аналогии, остальные клавиши.
Из забавного, что в ДОС даже есть какая-то скромная попытка обрабатывать нажатия на клавиши, например, реагирует на них, запуская копирование (хотя это ошибка).
Ложное срабатывание
В общем, ДОС хоть и стар, но оказывается местами даже очень полезен.
Явно найти документацию на клавиатуру модели LK46W-A2 мне не удалось. Но, когда я искал документацию на стандарт ps/2, то наткнулся на сайт Keyboard scancodes, в котором есть раздел, посвящённый клавиатурам LK411 и LK450. Нашёл это уже после прохождения всех моих мытарств, но они лишь подтвердили результаты моих экспериментов:
То есть, фактически мне это удалось подтвердить эмпирическим путём, хотя у меня немного другая модель клавиатуры.
Сравнение Wise 85 и LK46W-A2
Наверное, буду лукавить, если скажу, что текст набран именно на этой клавиатуре. Клавиши мне показались очень тугими. Но попробовал работать с ней, и достаточно быстро привык к такому вот нестандартному расположению клавиш, даже нахожу их весьма удобным и комфортным. Особенно стрелочная часть. Даже не испытывал проблем с набором текста и запуском программ. Поначалу ищешь ESC не там, где он есть. А вот расположение тильды я нахожу очень удобным.
Единственный вопрос, который остался за кадром: почему Linux фильтровал нажатия этих клавиш? Возможно ли поправить dts-файл так, чтобы ядро корректно отрабатывала нажатия этих клавиш? Добавить ими дополнительную, необходимую для комфортной работы функциональность? В общем, вопросов пока больше, чем ответов. Если опытные драйверисты есть, буду рад обсудить этот момент.
Из личного опыта такое расположение нахожу весьма удобным, и резюмируя, могу сказать что клоны клавиатур lk201, в том числе советский клон может быть использован для набора текста. Разве что потребуется программирование некоторых клавиш под свои нужды, и придётся отказаться от правого Alt и Ctrl.
Полезные ссылки:
P.S. Если вам интересно моё творчество, вы можете следить за мной ещё в телеграмме.
Подпишись на наш блог, чтобы не пропустить новые интересные посты!
Сегодня исполняется 53 года человеку, имя которого знакомо каждому айтишнику. Наверное, в заслугу Линуса Бенедикта Торвальдса можно записать не только создание ядра Linux, но и то обстоятельство, что, несмотря на публичность и широкую известность, он сумел не «забронзоветь» и не превратился в живую икону.
Мы уже пересказывали краткую историю появления Linux, изложенную институтским приятелем и соратником Торвальдса Ларсом Вирзениусом. Основные факты биографии автора ядра Linux хорошо известны — родился в столице Финляндии, городе Хельсинки, в семье журналистов. В возрасте восемнадцати лет поступил в Хельсинкский университет, который окончил в 1996 году со степенью магистра в области кибернетики. В 1991-м, еще будучи студентом, начал разработку собственной операционной системы, которая «выросла» из простого терминала — его Торвальдс писал, чтобы подключаться к университетской машине для чтения новостей USENET. В общем, все это не является секретом и растиражировано множеством различных источников. А подробности частной жизни Торвальдса известны только его близким друзьям.
27 апреля 1998 года Ларс Вирзениус выступил с докладом на конференции Linux Expo, где поделился воспоминаниями о годах совместной учебы с Линусом в университете Хельсинки и работы над ядром Linux. Некоторые отрывки из этих воспоминаний настолько любопытны, что вполне заслуживают отдельного поста. А день рождения Торвальдса — на мой взгляд, отличный повод поделиться ими с читателями Хабра.
Ларс Вирзениус
«Я стал другом Линуса еще до того, как появился Linux», — рассказывал на конференции Ларс Вирзениус, — «мы познакомились на первом курсе в 1988 году. Когда он начал писать Linux, я, естественно, с интересом и некоторой ревностью следил за происходящим. Вы все знаете Линуса, по крайней мере, вам хорошо известна его репутация. Чудо-ребенок. Мастер программирования. Хакерский бог. Ну, так было не всегда. То, что я собираюсь рассказать дальше, может шокировать самых преданных линуксоидов в этой аудитории, но ничего страшного. Это свободная страна, и в любом случае мне пообещали защиту полиции».
Этими словами Ларс начал свое выступление — и, судя по реакции притихшего зала, продолжения истории все ждали с нетерпением. По словам Вирзениуса, незадолго до того, как Торвальдс начал работу над своим судьбоносным проектом, он знал далеко не все о языке С, и почти ничего — об архитектуре IBM PC. До «трешки» у Линуса был Sinclair QL, однако, по словам Ларса, «как и все британские компьютеры, эта машина была по-своему гениальна, но в то же время непригодна для чего-то по-настоящему серьезного». Линус написал несколько собственных инструментов для разработки софта на этой машине, как минимум, редактор ассемблерного кода. Он также немного модифицировал оборудование QL, заменив сломанную клавиатуру и добавив дисковод для гибких дисков. Когда он купил 386-й компьютер, то первым делом написал драйвер для файловой системы своего QL, чтобы переместить данные на дискетах с «синклера» на PC.
Первые несколько месяцев после покупки IBM-совместимой персоналки Линус посвятил игре Prince of Persia. «Этого я понять не мог», — говорил Вирзениус, — «я имею в виду, что мне до сих пор неясно, зачем вообще нужны компьютерные игры, если это не пасьянс Косынка? Даже несколько лет спустя, когда Linux уже имел успех, у Линуса не прошло странное увлечение такими играми, как Doom и Quake. Он мог гонять монстров часами. Правда, к тому времени он уже овладел некоторыми социальными навыками и знал, что после 12 лет не стоит вслух признаваться в любви к компьютерным играм. Поэтому, когда его спрашивали, чем он занят, Линус обычно отвечал, что занимается отладкой и стресс-тестированием управления памятью в X-сервере, гоняя на своем компе в Doom».
Одно из важнейших свойств характера Торвальдса, которое подметил Вирзениус — это способность впитывать новые знания буквально на ходу и быстро принимать решения. «Когда Линус решает чему-то научиться, он действительно учится этому, и довольно быстро», — рассказывал Ларс. — «Я помню, как в универе нас однажды спросили о каком-то домашнем задании по математике. Я случайно узнал, что Линус забил на домашку и не сделал ее. Но из свойственного ему упрямства в ответ на вопрос преподавателя он все равно заявил, что сделал эту злосчастную работу. Как назло, преподаватель пожелал, чтобы Линус представил свое решение всей группе. По пути к доске тот прочитал задачу, затем постоял перед доской секунду или две, и написал верное решение. В общем, Торвальдс может быть довольно раздражающим».
Еще одна черта его характера — весьма своеобразное чувство юмора. Вот что об этом рассказывал Вирзениус: «однажды мы вместе с Торвальдсом отправились за границу на какую-то конференцию. Когда я отвлекся, Линус изменил настройки командной оболочки на моей машине таким образом, что, когда я входил в систему, это выглядело так, как будто я использую MS-DOS. Получилось очень весело и забавно, но эта шутка требовала мести.
Когда Линус вышел выпить чего-нибудь покрепче, я создал на его машине псевдоним для startx. Мой alias сначала запускал настоящий startx, а затем выводил сообщение о краше ядра Linux. В первый раз, когда Линус заметил это, он немного забеспокоился, однако сразу вышел из системы и экран очистился слишком быстро, чтобы он успел вдумчиво прочитать сообщение. После второго раза он забеспокоился уже всерьез. На самом деле, я выводил сообщение, которое совершенно не подходило для текущей версии ядра. Он дошел до того, что после третьей перезагрузки все-таки прочитал текст на экране и пробормотал что-то вроде: «Почему оно падает? Оно не может так падать!». Тогда я расхохотался и рассказал ему о своей выходке. Линус почувствовал явное облегчение, но с этого момента больше никогда не шутил со мной».
Когда речь заходит о том, приносил ли Linux доход своему создателю, Ларс Вирзениус вспоминает историю о виртуальном пиве. «Дела шли своим чередом, и настало время процветания Linux. Успех принес славу, а также материальное вознаграждение, в том числе, денежное. Однако самой первой наградой были не деньги, а виртуальное пиво. Сейчас это расхожее выражение — просто общая фраза, но тогда оно имело вполне конкретный, материальный смысл. Два парня из Оксфорда, Англия, называющие себя Оксфордскими пивными троллями, начали использовать Linux и решили проставиться Линусу пивом. Однако они посчитали нецелесообразным перемещать себя из Оксфорда в Хельсинки, или, наоборот, Линуса в Оксфорд. Поэтому они попросили меня получить деньги по почте, купить на них пива и передать его Линусу. Так что виртуальное пиво – это на самом деле вполне реальные деньги, причем деньги, присланные лично мне.
Линус также получал по почте разные полезные вещицы. Например, пару жестких дисков по 40 мегабайт. Это было очень приятным подарком, который означал, что Линус наконец сможет сохранить несколько резервных копий ядра Linux на всякий случай. Не то, чтобы он этого не делал раньше… В общем, да, не делал. Одна из его известных цитат: «Резервные копии — для слабаков. Настоящие мужчины загружают свои данные на FTP-сервер, и все остальные ребята в интернете копируют их оттуда». В какой-то момент Линус переместил все файлы устройств в /dev и решил снова подключиться к университетскому компьютеру, чтобы отладить свой код эмуляции терминала. Он запустил терминал и велел ему использовать /dev/hda… хотя теперь это должен был быть /dev/ttyS1. Упс! С этого радостного момента главная загрузочная запись на его винчестере начиналась с команды «ATDT» и номера телефона университетского модемного пула. На следующий день он написал код для проверки разрешений в Linux, а подаренные ему жесткие диски наконец-то стали использоваться по назначению».
Кстати, насчет пива. Нельзя сказать, что этот напиток был у Линуса самым любимым, но он им никогда не пренебрегал. Вирзениус вспоминал: «У одного из студентов, который был на несколько лет старше нас с Линусом, Патрика, имелась сауна в доме, в котором он жил. Он заказывал ее раз в неделю для нашей группы. Вы, извращенцы, которые думаете, что слово «сауна» является синонимом публичного дома, можете перестать воображать оргии: в Финляндии сауны предназначены для купания, лечения, даже медитации, а не для секса. Есть известная фотография Линуса, выглядящего голым и пьющего пиво. Фотография была сделана у Патрика однокурсницей Стиной, а Линус был на самом деле в брюках. Но тогда стоял жаркий летний день, поэтому на нем не было рубашки. Никаких оргий!»
Когда Ларса Вирзениуса спросили, чему он научился за время дружбы с Линусом Торвальдсом, тот ответил: «Самое главное, что я вынес из нашего общения – что буквально каждый человек может изменить ситуацию. Большое, важное достижение состоит из очень длинной серии маленьких шагов. У нас в финском языке есть специальное слово «sisu», оно означает решимость, целеустремленность, твердость духа, храбрость, стойкость. Сами финны считают его выражением своего национального характера. Вот это словечко очень помогает, если вы умны и знаете, что делаете. Помните того 20-летнего парня, который порой нес всякую чепуху в пьяном виде, а также позировал полуголым для фотографий с пивом в сауне? Он не то, чтобы был умнее всех остальных, просто решил не пасовать перед сложностями. Sisu помогает быть глупым и невежественным в правильном смысле, то есть, думать: «эй, я могу это сделать» вместо «это должно быть очень трудно или невозможно сделать».
И самое главное, независимо от того, насколько вы настойчивы и насколько вы умны, — нужно, чтобы другие помогали вам. На революцию уходит как минимум десятилетие, но в одиночку ее вообще не сделаешь. Свобода — тоже самое главное. Свобода использовать, изучать, модифицировать и делиться программным обеспечением, и, в первую очередь, свобода писать софт. Они необходимы не только для Linux, но и для благополучия всех людей в современном мире».
Подпишись на наш блог, чтобы не пропустить новые интересные посты!