Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

Введение

В некоторых случаях в результате некорректных действий при обновлении ПО на сервисных маршрутизаторах ESR может возникнуть проблемы с загрузкой ПО (firmware), вторичного загрузчика (u-boot) или даже первичного загрузчика (x-loader). Именно для таких случаев будет необходимо подготовить и использовать загрузочную SD-карту по инструкции описанной в данной статье.

Ограничения

Данная инструкция актуальна для следующих моделей ESR:

  • ESR-100
  • ESR-200
  • ESR-1000
  • ESR-1200
  • ESR-1500
  • ESR-1511

Якорь
UsedFiles
UsedFiles
Необходимые файлы

Для подготовки загрузочной SD-карты потребуются следующие файлы в зависимости от модели маршрутизатора:

...

"Продукты" ---> "Сервисные маршрутизаторы" ---> <Выбрать необходимую модель> ---> Вкладка "Документы и файлы" ---> Столбец "Программное обеспечение"

Необходимое программное обеспечение на персональном компьютере (ПК)

Для подготовки загрузочной SD-карты по данной инструкции потребуется:

  • Операционная система Linux любой сборки
  • Терминальная программа (встроенный терминал, terminator или любая аналогичная)
  • Утилита для разметки диска в терминале: fdisk 
  • Утилита для форматирования разделов: mkfs.vfat из пакета dosfstools
  • Утилита для побитного копирования файлов: dd

Алгоритм создания образа

1. Подключить SD-карту к ПК

Для этого можно использовать либо штатный разём для SD-карт либо Card-reader подключаемый к USB-разъёму ПК.

Якорь
P2
P2
2. Определить идентификатор подключенной SD-карты

Для выполнения данного шага необходимо в терминальной программе запустить утилиту fdisk с ключём "-l"

...

В примере выше, подключенная SD-карта определена как  /dev/sdc

3. Создать необходимые разделы на SD-карте

3.1. В терминальной программе запустить утилиту fdisk в  качестве ключа используя идентификатор подключенной SD-карты. Проверить текущие разметку и разделы на SD-карте.

...

панель

Команда (m для справки): w
Таблица разделов была изменена.
Вызывается ioctl() для перечитывания таблицы разделов.
Синхронизируются диски.

user@PC:~$

4. Отформатировать второй раздел носителя в FAT32

панель

user@PC:~$ sudo mkfs.vfat -F 32 /dev/sdc2
[sudo] пароль для user: password
mkfs.fat 4.1 (2017-01-24)
user@PC:~$

Вместо /dev/sdc необходимо использовать идентификатора подключенной SD-карты определенный в п.2 данной инструкции.

5. Записать первичный загрузчик в первый раздел SD-карты

панель

user@PC:~$ sudo dd if=<xload-file> of=/dev/sdc bs=512 seek=2 && sync
[sudo] пароль для user: password
244+1 записей получено

244+1 записей отправлено
124976 bytes (125 kB, 122 KiB) copied, 0,0753591 s, 1,7 MB/s
user@PC:~$ 

Вместо /dev/sdc необходимо использовать идентификатора подключенной SD-карты определенный в п.2 данной инструкции.
Вместо переменной <xload-file> необходимо использовать путь и имя файла актуального первичного загрузчика для той модели ESR, для которой создается данная загрузочная SD-карта. Имена файлов соответствующие переменным указаны в таблице в разделе Необходимые файлы.

6. Создать во втором разделе директорию с названием модели ESR и скопировать в неё загрузчики и образ основного ПО

панель

user@PC:~$ mkdir temp
user@PC:~$ sudo mount /dev/sdc2 temp
user@PC:~$ sudo mkdir temp/<DIR>
user@PC:~$ sudo cp <xload-file> temp/<DIR>/xload.bin
user@PC:~$ sudo cp <uboot-file> temp/<DIR>/u-boot.bin
user@PC:~$ sudo cp <firmware-file> temp/<DIR>/firmware
user@PC:~$ sudo ls -lh temp/<DIR>
итого 57M
-rwxr-xr-x 1 root root 56M мая 28 11:36 firmware
-rwxr-xr-x 1 root root 824K мая 28 11:36 u-boot.bin
-rwxr-xr-x 1 root root 123K мая 28 11:36 xload.bin

Вместо /dev/sdc необходимо использовать идентификатора подключенной SD-карты определенный в п.2 данной инструкции.
Вместо переменной <DIR> необходимо использовать имя папки указанное в таблице Необходимые файлы в соответствии с моделью ESR, для которой создается данная загрузочная SD-карта.
Вместо переменной <xload-file> необходимо использовать путь и имя файла актуального первичного загрузчика для той модели ESR, для которой создается данная загрузочная SD-карта. 
Вместо переменной <uboot-file> необходимо использовать путь и имя файла актуального вторичного загрузчика для той модели ESR, для которой создается данная загрузочная SD-карта. 
Вместо переменной <firmware-file> необходимо использовать путь и имя файла актуального ПО для той модели ESR, для которой создается данная загрузочная SD-карта.
Имена файлов соответствующие переменным указаны в таблице в разделе Необходимые файлы.

7. Отмонтировать второй раздел и удалим временную директорию

панель

user@PC:~$ sudo umount temp
user@PC:~$ sudo rm -r temp

Получившуюся SD-карту можно использовать для загрузки сервисного маршрутизатора ESR и обновления/восстановления загрузчиков и основного ПО. 

Инструкция по восстановлению загрузчиков описана в статье: Восстановление программного обеспечения на сервисных маршрутизаторах ESR-100/200/1000/1200/1500/1511 с загрузкой с SD-карты

Алгоритм копирования загрузочной SD-карты в файл

После создания загрузочной SD-карты есть возможность сохранить её образ в файл на ПК. Это может потребоваться для передачи образа другим сотрудникам или для быстрого разворачивания образа на SD-карту в случае повторения проблемы с загрузкой маршрутизатора.

1. Подключить SD-карту к ПК

Для этого можно использовать либо штатный разём для SD-карт либо Card-reader подключаемый к USB-разъёму ПК.

Якорь
P2_2
P2_2
2. Определить идентификатор подключенной SD-карты

Для выполнения данного шага необходимо в терминальной программе запустить утилиту fdisk с ключём "-l"

...

В примере выше, подключенная SD-карта определена как  /dev/sdc

3. Произвести побитное копирование содержимого всей SD-карты в файл на ПК

панель

user@PC:~$ sudo dd if=/dev/sdc of=<file-name>.iso bs=1M count=102 status=progress; sync
81788928 bytes (82 MB, 78 MiB) copied, 2 s, 40,5 MB/s
102+0 записей получено
102+0 записей отправлено
106954752 bytes (107 MB, 102 MiB) copied, 2,66469 s, 40,1 MB/s
user@PC:~$ 

...

Необходимо учитывать, что в примере выше использованы параметры для сохранения образа SD-карты размер второго раздела которой не превышает 100МБ. 
Если второй раздел созданной SD-карты более 100МБ, необходимо в качестве аргумента ключа "count" указывать количество мегабайт во втором разделе и приплюсовать еще 2 блока по 1МБ (указано в качестве аргумента ключа "bs").

Алгоритм загрузки образа загрузочной SD-карты на носитель

1. Подключить SD-карту к ПК

Для этого можно использовать либо штатный разъём для SD-карт либо Card-reader подключаемый к USB-разъему ПК.

Якорь
P2_3
P2_3
2. Определить идентификатор подключенной SD-карты

Для выполнения данного шага необходимо в терминальной программе запустить утилиту fdisk с ключём "-l"

...

В примере выше, подключенная SD-карта определена как  /dev/sdc

3. Распаковать образ на подключенную SD-карту

Без форматирования
user@PC:~$ sudo dd if=<file-name>.img of=/dev/sdc status=progress; sync
103690752 bytes (104 MB, 99 MiB) copied, 18 s, 5,8 MB/s
208896+0 записей получено
208896+0 записей отправлено
106954752 bytes (107 MB, 102 MiB) copied, 22,4274 s, 4,8 MB/s
user@PC:~$

...