Передісторія
Днями перестав віщати один з NetUP стримеров. «Завис», подумав я (є у них така «особливість»), і пішов перезавантажувати його. Оскільки у цих стримеров не передбачено кнопки включення-виключення живлення, або кнопки Reset, перезавантажуються вони тільки висмикуванням шнура харчування.
Через деякий час, після того, як я повернув йому харчування, стример вивів напис на LCD панелі: «Checking HDD filesystem. ». Залишив його в такому стані з думкою, що перевірить диск і запуститься. Однак ні через годину, ні через два цього не сталося. На СТРИМЕР продовжувала показуватися напис про перевірку HDD. Через консольний кабель підключитися не вдалося. Так само ні до чого не привели наступні перезавантаження. Вирішив дістати жорсткий диск і перевірити його на bad block'і. Знайшлося не мала кількість секторів, для яких не вдалося зробити Remap або Erase.
Висновок простий: потрібно міняти жорсткий диск. З самої заміною проблем немає, не робітник витяг, робочий поставив. Але тепер у нас на руках гола залізяка без ОС (прошивки).
Про те, як встановити прошивку «з нуля» і піде подальша розповідь.
Особисто я бачу тільки 3-й варіант як це зробити:
- Звернутися в техпідтримку NETUP
- Клонувати HDD з іншого стримера
- Розібратися з прошивкою, що вона з себе представляє, і як її встановити
Перший варіант підійде тим, хто купив цю продукцію менше року тому, тому що техпідтримка надається протягом року після покупки. А так же тим, хто оплачує техпідтримку NetUP. Мене цей варіант не влаштовує, тому що купували більше року назад, а оплачувати рік техпідтримки заради години роботи не бачу сенсу.
Другий варіант цілком прийнятний. Потрібно тільки погасити один з робітників стримеров, клонувати його диск якою-небудь програмою. Але мені не хотілося демонтувати зі стійки інший стример, а по-друге, не хотів зупиняти мовлення інших каналів (абонентам це не подобається).
Третій варіант мені цілком підходив по всіх вище перелічуваних критеріям. Плюс, це просто цікаво і пізнавально.
підготовка
Для привиди стримера до робочого стану, нам буде потрібно:
- USB флешка
- консольний кабель
- роутер
- образ прошивки
- образ LiveFlash
Тепер по кожному пункту окремо.
USB флешка підійде будь-якого розміру, починаючи від 128 Мб, тому що образ LiveFlash, займає близько 100 Мб.
Стример потрібно підключити до роутера, щоб після завантаження з флешки можна було підключитися до нього по SSH для подальшої роботи.
Образ прошивки завантажується з сайту netup.tv, розділ «Особистий кабінет> Файли> Стабільна версія». Я використовував версію firmware-streamer-standalone.1.11.117.
Образ LiveFlash так само з сайту. Розділ «Особистий кабінет> Файли> Загальнодоступні файли». Там два образи, LiveFlash і LiveCD, але CD приводу у стримера немає. Загалом, я думаю підійде будь-який дистрибутив Linux, який здатний завантажитися з флешки. В образі від NetUP я не побачив нічого особливого, чого не було б в інших дистрибутивах. Але я користувався ним.
Як виявилося, образ прошивки - це tar.gz архів. Тому розпаковуємо архів.
В архіві чотири файли: filesystem, info, initrd.img і vmlinuz.
filesystem - це, як можна здогадатися з назви, образ файлової системи, упакований в Squashfs.
info - тут міститься інформація про прошивці: контрольні суми, версія, ревізія, тип і дата створення.
initrd.img і vmlinuz - це RAM диск і ядро.
Всі ці файли нам потім знадобляться.
Тут все просто. Записуємо скачаний образ на флешку. Я зробила це через dd:
Потрібно підключити консольний кабель, патч-корд до роутера, вставити флешку в стример і запустити його.
Тепер потрібно зробити те, чого немає в документації. Нам потрібно завантажитися з USB Flash, для це в BIOS потрібно вказати її першою в черзі завантаження. Щоб побачити процес завантаження і в потрібний момент натиснути клавішу «Del», підключаємося через консольний кабель до стримеру. Це можна зробити через HyperTerminal, putty і т.д. Особисто я використовував minicom. В параметрах з'єднання крім номера COM порту потрібно вказати швидкість / парність / біти 115200 8N1, а також відключити апаратне і програмне керування потоком. У документації це немає, точніше є підключення консольним кабелем на швидкості 19200 8N1, але при таких налаштуваннях порту повідомлень POST і самого BIOS ми не побачимо. Так можна підключитися тільки до робочого стримеру, наприклад якщо у нього немає підключення до мережі для доступу по SSH.
Після того, як ми потрапили в BIOS і виставили завантаження з USB Flash, виходимо з BIOS'а зі збереженням параметрів. F4, якщо не помиляюся, або через пункт меню «Save Exit ». Тепер стример буде завантажуватися з флешки. Але тут є один нюанс: справа в тому, що в меню завантажувача LiveFlash за замовчуванням обраний пункт «Boot from local harddrive», що звичайно нас не влаштовує, тому що диск у нас поки порожній. При швидкості послідовного порту в 115200 меню завантажувача не видно. Тому відразу після того, як стример пішов в перезавантаження, міняємо швидкість на 19200 і бачимо завантажувач флешки. Вибираємо самий верхній пункт «Boot LiveFlash» і натискаємо «Enter».
Ось ми і підключені до нашого стримеру по SSH, а точніше - до Live системі, яка запущена на нашому СТРИМЕР.
Перше, що нам потрібно зробити, це розбити жорсткий диск на розділи, відформатувати і змонтувати їх в потрібні каталоги.
Розбивати наступним чином: перший розділ 5 Гб. другий все інше (якщо чесно, то для мене залишилося загадкою, для чого NetUP використовує диски об'ємом в 1 Тб, якщо використовується максимум 15 Гб дискового простору). Розбити на розділи, можна за допомогою утиліти fdisk, яка присутня в системі.
Користуватися fdisk'ом досить просто, тут я цього описувати не буду, тому що це виходить за рамки статті.
Поле того, як розділи створені і нова таблиця розділів записана на диск, їх потрібно відформатувати:
Все, ми готові приступити до установки прошивки на ці диски.
На стримерах використовується GRUB. Встановлювати його необхідно з опцією --root-directory = / mnt / flash, тому що необхідно, щоб каталог / boot і конфігураційні файли завантажувача були на sda1:
default 0
timeout 3
title NetUP IPTV
root (hd0,0)
kernel / boot / vmlinuz root = / dev / ram0 selinux = 0 init = / linuxrc vmalloc = 256m ro netup_flash = sda1 netup_hdd = sda2
initrd /boot/initrd.img
title Recovery
root (hd0,0)
kernel / boot / vmlinuz root = / dev / ram0 selinux = 0 init = / recovery ro
initrd /boot/initrd.img
файли прошивки
Фали filesystem і info, раніше витягнуті з прошивки, потрібно завантажити на стример в директорію в директорію / mnt / flash. А файли vmlinuz і initrd.img в / mnt / flash / boot. Для цього можна використовувати scp наприклад, особисто я використовував SFTP в Midnight Commander.
Власне, на цьому і все. Можна набрати «reboot» в консолі стримера, витягти флешку і чекати, коли завантажиться наш стример. Він розпакує файлову систему, створить собі файл підкачки і т.д. Це буде стандартна прошивка, зі стандартними настройками. Якщо є бажання змінити налаштування за замовчуванням, то нижче я розповім, як це зробити.
Створимо директорію, в яку помістимо наші файли конфігурації:
Файл network.cfg. Запис в ньому має вигляд:
eth0 10.4.4.176 255.255.255.0 main
eth3 172.16.0.9 255.255.255.0
маршрутизація
Файл routes.cfg. Має вигляд:
route add -net «0.0.0.0» gw «172.16.0.1» netmask «0.0.0.0» dev «eth3»
Так само можна прописувати кілька маршрутів, по одному в кожному рядку.
Файл password.cfg. Тут записується пароль, який буде використовуватися для доступу по WEB, SSH і FTP. Пароль записується у відкритому вигляді.
Часовий пояс
Файл timezone. Приклад запису:
На цьому все. Як видно, немає не чого складного в тому, щоб встановити прошивку на «голий» стример. Часу це займає дуже мало, і якщо робити це через службу техпідтримки, то піде пів дня переговорів в hotline.
Так що, зробити це самому цікаво, швидко і, що не менш важливо, безкоштовно.