Замена загрузочной флешки Synology (Synology USB flash module transplant)

Однажды, столкнулись мы с не простой как оказалось проблемой
Synology 918+ с постоянно мигающим синим индикатором включения.
Хранилище не подавало ни каких признаков работоспособности и загрузки в частности.
Как оказалось в момент обновления с DSM 6.* на DSM 7.* отказала внутренняя загрузочная флешка, унеся в момент сбоя с собой прошивку BIOS.

Нами был снят с платы и прошит BIOS но это не помогло, Synology начала загружаться но падала в ошибку при попытке загрузить образ Synology_2, в итоге Synology загружала резервный образ Synology_1.

В этот момент Synology становилась доступна по сети с помощью find.synology.com.
Она делала вид что исправна, просила установить DSM, форматировала диски но в определенный момент падала в ошибку “не удалось установить DSM” примерно на 56-60%.

не удалось установить DSM

Мы перепробовали все рекомендации из интернета, меняли память, меняли диски, брали разные образы DSM, на тот момент Флешка выглядела полностью исправной и казалось что с ней все хорошо, мы сняли с неё дамп и т.д. проблема выглядела как внутренняя, не связанная с flash. Мы даже купили еще одну 918+ для диагностики данного устройства.
Какого было наше удивление когда при взаимной замене флешек старая Synology заработала а новая нет.
Так мы приговорили родную флешку.

По факту Bios Synology устроен таким образом, что он готов загрузиться с абсолютно любого flash устройства, у которого будет пара VID/PID F400, Synology безразлично как и куда подключена флешка с таким VID/PID, это может быть внутренний разъем 10 pin или внешний USB порт, она в любом случае будет грузиться с этой флешки.

VID/PID F400

При чем сама Synology и OS DSM игнорируют всю остальную информацию им важен только VID/PID F400

Для загрузки нашей DS мы использовали первую попавшуюся флешку на контроллере Phison (он хорошо прошивается и ПО доступно), заменили ему VID/PID на значение F400, залили наш дамп с неисправным разделом Synology_2 и установили её в передний usb 3.0 разьем.
Synology загрузилась и установила DSM, починив раздел Synology_2 самостоятельно.

загружено с внешнего usb

Сообщество так же использует флешки A-DATA C802 у меня такой под рукой не оказалось, не могу сказать чем она лучше или хуже любой другой.

Метод с заменой загрузочной флешки позволяет установить на Synology с видео выводом любую ОС совместимую с Аппаратной начинкой, но вопрос -“зачем?”

Для полноценной установки замены во внутрь можно поискать flash аналог 10 pin USB DOM (Disk-on-module) вам подойдет любой более 128 мб, следите за контроллером, что бы вы могли его прошить под необходимый VID/PID.

Или вы можете сделать немного колхозинга и сделать ваш внутренний порт 10 pin usb в обычный usb 2.0.

распиновка есть тут

Я для этого использовал старый OTG кабель от смартфона, еще можно использовать USB удлинитель.
Выглядит не очень эстетично, но при выходе из строя flash меняется быстрее.

Прикладываю официальные bios.ROM, rd.gz, zImage от synology, которые могут вам пригодиться для ремонта вашей 918+

Read more

Git: работа с ветками, конфликтами и Pull Request

Git: работа с ветками, конфликтами и Pull Request

Введение Git позволяет работать с ветками, безопасно вносить изменения и объединять их через Pull Request. В этой инструкции — базовые сценарии для повседневной работы. Работа с ветками Создание ветки git checkout -b feature/task-name Создаёт новую ветку и сразу переключает на неё. Переключение между ветками git checkout main git checkout feature/

By Evgeny Shmelev
Инструкция по работе с Git (базовая памятка)

Инструкция по работе с Git (базовая памятка)

Введение Git — система контроля версий для отслеживания изменений в файлах и совместной работы. Ниже — краткая практическая инструкция для повседневного использования. Основные команды Проверка состояния git status Показывает: * есть ли изменения * синхронизацию с сервером * новые файлы Получение изменений git pull Забирает изменения и объединяет их с текущей веткой. Обновление через rebase

By Evgeny Shmelev
Git показывает странные символы (\320\277...), файл удалён и появился заново — как исправить

Git показывает странные символы (\320\277...), файл удалён и появился заново — как исправить

Проблема При выполнении: git status можно увидеть: deleted: "\320\277\320\276..." untracked: "\320\277\320\276....txt" modified: .DS_Store При этом: * имя файла отображается непонятными символами * Git показывает удаление одного файла и появление другого * появляется файл .DS_Store Причина 1. Файл был переименован или

By Evgeny Shmelev