В этой статье речь пойдет о доработке тонкого клиента HP для установки на него Debian 8.
Тонкий клиент HP t5325 самый маленький в своем семействе и единственный построен на архитектуре ARM. Ниже приведу его основные характеристики:
- Прцессор Marvell ARM 88F6281 1.2 GHz.
- Видеокарта XGI VOLARI-Z11-A2CB-HF 64MB.
- RAM 512MB DDR2.
- Flash memory 512MB.
Подготовка
Данный клиент работает под управлением HP ThinPro, которая построена на базе Debian. Проблема заключается в том, что система установлена на внутреннюю Flash память объемом 512MB. По современным меркам этого объема недостаточно для комфортной работы, да и ресурс циклов перезаписи встроенной Flash мал. Поэтому было решено установить ОС на внешний жесткий диск.
На печатной плате видно, что есть место под установку вертикального разъема SATA, но габариты корпуса не позволяют этого сделать. Так же при более детальном изучении выяснилось, что на плате не распаяны некоторые элементы, а в частности, фильтрующие конденсаторы на выводах Rx,Tx разъема SATA0: C80, C81, C82, C83. На фото ниже показаны места их установки.
Эти конденсаторы можно позаимствовать из платы от старого жесткого диска:
После монтажа конденсаторов и изучения разводки платы в области SATA разъема, была определена следующая схема подключения:
Из-за отсутствия места внутри корпуса, было принято решение установить жесткий диск снаружи, на верхней крышке. Это обеспечило удобный доступ к диску и лучшее охлаждение. Для этих целей был куплен SATA кабель от ноутбука HP DV5, подойдет так же от DV6 и DV7-1000, он имеет достаточную длину и подходящий диаметр для того, чтобы пролезть в отверстия в верхней крышке.
Далее удаляем разъем, определяем распиновку и паяем согласно схеме.
Для увеличения механической прочности соединения, фиксируем все термоклеем.
В данном тонком клиенте отсутствует BIOS, для загрузки ОС используется U-Boot. Чтобы настроить загрузку с внешнего диска необходимо получить доступ к консоли U-Boot- это можно сделать подключившись к соответствующим выводам на плате, USB — UART преобразователем.
Открываем Putty и выбираем COM порт, который закрепился за преобразователем. Подаем питание и быстро нажимаем кнопку «пробел», пока не увидим приглашение на ввод команд.
В консоли U-Boot необходимо ввести следующие команды:
setenv hdd_bootargs 'console=ttyS0,115200 root=/dev/sdb1 rw rootwait video=xgifb'
setenv boot_hdd 'ext2load ide 1:1 0x800000 /uImage; ext2load ide 1:1 0x1100000 /uInitrd'
setenv hdd 'ide reset; wol; setenv bootargs $(hdd_bootargs); run boot_hdd; bootm 0x800000 0x1100000'
setenv mainlineLinux yes
setenv arcNumber 2846
setenv bootcmd 'run hdd'
saveenv
Здесь мы выставляем загрузку с жесткого диска (ide 1:1), загружаться будут uImage и uInitrd. Команда saveenv означает запись конфигурации в энергонезависимую память. Более подробно о доступных командах можно узнать набрав знак вопроса в консоли.
Установка системы
В качестве ОС был выбран Debian 8, как максимально совместимый и не требующий дополнительного «допиливания». Перед началом установки необходимо подготовить жесткий диск. На диске нужно создать один раздел и отформатировать его в файловую систему ext2, после чего скопировать, в корень, uImage и uInitrd. Далее подключить жесткий диск к тонкому клиенту и подать питание. Если все сделано правильно, то в консоли должен отображаться лог загрузки системы и начаться установка.
После успешной установки, необходимо войти в консоль U-Boot и внести небольшие изменения в конфиг. Если при установке системы было выбрано разбитие диска по умолчанию и для папки boot создан отдельный раздел диска вводим следующие команды:
setenv hdd_bootargs 'console=ttyS0,115200 root=/dev/sdb1 rw rootwait video=xgifb'
setenv boot_hdd 'ide reset; ext2load ide 1:1 0x800000 /uImage; bootm 0x800000'
setenv hdd 'setenv bootargs $(hdd_bootargs); run boot_hdd; bootm 0x800000'
saveenv
Если все установлено в один раздел:
setenv hdd_bootargs 'console=ttyS0,115200 root=/dev/sdb1 rw rootwait video=xgifb'
setenv boot_hdd 'ide reset; ext2load ide 1:1 0x800000 /boot/uImage; bootm 0x800000'
setenv hdd 'setenv bootargs $(hdd_bootargs); run boot_hdd; bootm 0x800000'
saveenv
Все! Теперь у вас есть миниатюрный сервер под управлением Debian, которому можно найти массу применений на работе и дома. Ниже показаны фотографии того, что получилось в итоге. Жесткий диск установлен на болты от VGA разъема.
Автор: wmlex