# Общие инструкции

# Подключение к облачной платформе RESDS

Получить доступ к Dashboard можно из браузера. Для этого нужно перейти по адресу:

```url
https://cloud.resds.ru/

```

В поле `Domain` выбрать `AD`, и ввести свой логин и пароль.  
Будет отображена общая информация по проекту. [![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/fiNeV1xV4hErBz5O-image-1645721727327.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/fiNeV1xV4hErBz5O-image-1645721727327.png)

Выбрать нужный проект можно в верхней панели.

[![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/dR8LnLukoqyutmyv-image-1645721759220.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/dR8LnLukoqyutmyv-image-1645721759220.png)

Необходимо перейти во вкладку Инстансы. Нужно включить инстанс, если он выключен.

[![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/qjfmgacvpEqqeVPI-image-1645721783162.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/qjfmgacvpEqqeVPI-image-1645721783162.png)

Здесь находятся виртуальные машины. Необходимо нажать на имя виртуальной машины. Откроется более подробная информация о ней.

[![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/Ro6O6F2KURzykJ89-image-1645721811854.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/Ro6O6F2KURzykJ89-image-1645721811854.png)

Для того чтобы получить доступ к ВМ, нужно перейти во вкладку Консоль. Здесь видно консоль виртуальной машины (если не работает клавиатура в ВМ, нажмите правой кнопкой мыши на синюю рамку сверху). Для того чтобы открыть консоль в отдельной вкладке, требуется нажать `Нажмите сюда для показа только консоли.`

[![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/ECekfQts8QHsIbTw-image-1645722373942.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/ECekfQts8QHsIbTw-image-1645722373942.png)

# Подключение к платформе для выполнения лабораторных работ

Получить доступ к Dashboard можно из браузера. Для этого нужно перейти по адресу:

```url
https://panel.resds.ru/

```

В поле `Domain` выбрать `AD`, и ввести свой логин и пароль.  
В правой части экрана, будут отображены под вашим логином будут отображены все доступные вам проекты

[![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/Xd514s6NSmMRkOtT-image-1645723080055.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/Xd514s6NSmMRkOtT-image-1645723080055.png)

Вам необходимо нажать на необходимый проект и в появившемся меню выбрать пункт `Инстансы`

[![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/OJKkQ2NRagc5NLQy-image-1645723165320.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/OJKkQ2NRagc5NLQy-image-1645723165320.png)

У вас появится новая информация в основном окне веб-приложения [![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/UxHOCzqCCcCCpXxq-image-1645723229477.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/UxHOCzqCCcCCpXxq-image-1645723229477.png)

Далее вам необходимо нажать на вкладку `CONSOLE`

В верхнем меню рядом с вкладкой Dashboard, появится новая вкладка в которой будет отображено название инстанса [![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/yLBOr7n9WlNYdP2X-image-1645723350630.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/yLBOr7n9WlNYdP2X-image-1645723350630.png)

Вам необходимо нажать на эту вкладку, и перед вами появится консоль для работы с виртуальной машинной [![](https://docs.resds.ru/uploads/images/gallery/2022-02/scaled-1680-/ZiZ7bPrYZtHW4A8U-image-1645723407873.png)](https://docs.resds.ru/uploads/images/gallery/2022-02/ZiZ7bPrYZtHW4A8U-image-1645723407873.png)

# Полезные команды linux

### Работа с редактором vi

***vimtutor*** - встроенная обучающая программа по работе с **vi** (`vimtutor ru`–для отображения на русском языке)

Есть два основных режима - ***Normal*** и ***Insert***. для перехода в режим ***insert*** нужно нажать **i** на клавиатуре, для возврата в режим ***Normal*** -нажать **ESC**

**Normal** – режим навигации по тексту и управление им(удаление строк, символов и проч). В этом режиме:кнопки стрелок, или символы h,j, k, l для навигации по тексту

**p** - вставка текстаx - удаление символа над курсором

**dd** - удаление текущей строки

**:**- режим выбора режима работы(все введённые символы отображаться в самой нижней строке консоли)

***Insert*** –режим для добавления текста(вход из режима normal нажатием кнопки i, выход -ESC)

***Visual*** –режим выделения текста(вход из режима normal нажатием кнопки v, выход -ESC)

### Навигация по файловой системе

**pwd** показать текущую директорию  
**ls** отобразить список файлов и папок  
**cd** сменить текущую папку

### Специальные символы для навигации по файловой системе

**~** домашняя папка текущего пользователя  
**.** Текущая директория  
**..** Родительская директория  
**\*** маска для любого имени файла или папки  
**?** Маска для любого символа в имени файла или папки  
**TAB** попытка автодополнения

#### Примеры навигации по файловой системе

**cd /usr/local/lib** сменить директорию на */usr/local/libcd*   
**cd ~** сменить директорию на домашнюю директорию текущего пользователя   
**pwd** показать рабочую (текущую) директорию  
**cd ..** перейти в директорию на уровень вверх  
**cd /** перейти в корневую директорию  
**ls –d pro**\* отобразить директории, имя которых начинается с pro

### Просмотри истории команд

**history** -вся история

стрелки ↑ и ↓ клавиатуры для навигации по прошлым командам

### Помощь по командам:

```sh
date –-help
man date
info date

```

### Перенаправления через pipe(|)

***W*** Показать всех пользователей, которые в данный момент вошли в систему

***w | less*** показать всех пользователей, которые зашли в формате страниц

***w | grep ‘tema’*** выбрать всех пользователей, которые были авторизованы, и показать только тех, в имени которых содержится «tema»

### обработка текста

***cat*** Отобразить содержимое файла  
***grep*** поиск по шаблону  
***tail*** вывести последние 10 строк файла  
***awk*** язык поиска по шаблонам  
***cut*** обрезать конкретные поля в каждой строке файла  
***diff*** сравнить два файла  
***head*** показать первую часть файла  
***less*** показать файл постранично  
***od*** сделать дамп файлов в различных форматах  
***sed*** потоковый редактор  
***sort*** отсортировать текстовые файлы  
***split*** разделить файлы  
***tail*** показать последнюю часть файла  
***tr*** транслитерировать символы  
***uniq*** отбросить повторяющиеся строки в файле  
***wc*** посчитать количество строк или слов, или символов

### Отображение содержимого в файловой системе

***ls -a*** показать все файлы, в том числе скрытые “.”  
***ls -ld \**** показать информацию о папке, а не о содержимом  
***ls -F*** поместить индикатор в конец каждого имени файла  
***ls –l*** простой длинный вывод  
***ls –lR*** рекурсивный длинный вывод(с учетом вывода содержимого под папок)  
***ls –lh*** отображение размера файлов в читаемом виде  
***ls –lS*** отсортировать файлы по размеру  
***ls –lt*** отсортировать файлы по времени создания

### Набор полезных команд

***cp \[file1\] \[file2\]*** скопировать файлы  
***mkdir \[name\]*** создать папку  
***rmdir \[name\]*** удалить пустую папку(если не пустая, то не удалится)  
***mv \[file\] \[destination\]*** переместить (переименовать файл)   
***rm \[file\]*** удалить (-r рекурсивно)  
***file \[file\]*** идентифицировать тип файлы  
***less \[file\]*** вывести файл в постраничном виде  
***head -n \[file\]*** показать первые n строк файла  
***tail -n \[file\]*** показать последние n строк файла  
***ln –s \[file\] \[new\]*** создать символьную ссылку на файл  
***tac \[file\]*** вывести содержимое файла в обратном порядке, в сравнении с cat  
***touch \[file\]*** создать файл(если создан, изменить время создания)

# Создание новой виртуальной машины в проекте.

#### Создание виртуальной машины в новом проекте

##### Подготовка к созданию

###### 1. Подключение к облачной инфраструктуре

Перейти по [ссылке](https://cloud.resds.ru). Для подключения использовать домен AD, а также учётную запись пользователя, используемую для подключения к WiFi СПбГУТ

[![Screenshot from 2022-05-12 16-15-31.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/VYKPYiXIGaHl7qw9-screenshot-from-2022-05-12-16-15-31.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/VYKPYiXIGaHl7qw9-screenshot-from-2022-05-12-16-15-31.png)

###### 2. Открыть: `проект` -&gt; `сеть` -&gt; `сети`, и убедиться, что там есть сеть `external-direct-net` или `external-net`

[![cr.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/j2amS9Pze7KNcduo-cr.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/j2amS9Pze7KNcduo-cr.png)

> `external-direct-net` - сеть маршрутизируема в сети бонча

###### 3. Генерация ключевой пары.  


При первом входе сгенерировать ключевую пару, для доступа к Linux виртуальным машинам.

> Ключевая пара - это взаимосвязанная пара, состоящая из открытого и закрытого асимметричного ключа. Используется для подключение к виртуальной машине, без использования пароля

Открыть: `Проект` -&gt; `ключевая пара` -&gt; `создать ключевую пару`

[![Создание виртуальной машины, генерация ключевой пары.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/bu9tQxYH0QLqaeBC-sozdanie-virtaulnoy-mashiny-generatsiya-klyuchevoy-pary.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/bu9tQxYH0QLqaeBC-sozdanie-virtaulnoy-mashiny-generatsiya-klyuchevoy-pary.png)

В открывшемся окне ввести имя ключевой пары и тип ключа(ssh-key)

[![Окно создание ключевой пары.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/LOXMz2Kynyf61t49-okno-sozdanie-klyuchevoy-pary.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/LOXMz2Kynyf61t49-okno-sozdanie-klyuchevoy-pary.png)

> Имя ключевой пары может быть любым

Ключ будет сохранен на ваш компьютер, он понадобится в дальнейшем.

##### Создание виртуальной машины

###### 4. Создать виртуальную машину.  


Открыть меню `Проект` &gt; `вычислительные ресурсы` &gt; `инстансы` &gt; `запустить инстанс`

[![запустить инстанс.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/Hgj2K9paxcJN3lQM-zapustit-instans.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/Hgj2K9paxcJN3lQM-zapustit-instans.png)

В открывшемся окне, во вкладке подробности ввести имя инстанса и нажать `Следующая` &gt; внизу страницы.

[![создание инстанса.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/4DTK8hNzsIwnOMg5-sozdanie-instansa.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/4DTK8hNzsIwnOMg5-sozdanie-instansa.png)

> Имя инстанса может быть любым

В следующем меню (Источник) выбрать источник – `образ`, указать размер тома данных, выбрать `удаление диска при удалении инстанса`, выбрать `необходимый вам образ из доступных` (например Ubuntu-server-20.04:docker), и нажать справа от него стрелку вверх

[![Создание инстанса 2.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/0lDbQ6H6Lp5vzwQh-sozdanie-instansa-2.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/0lDbQ6H6Lp5vzwQh-sozdanie-instansa-2.png)

В следующем меню (тип инстанса) определить объем выделяемых виртуальной машине вычислительных ресурсов. Для этого нужно выбрать `один из предопределённых типов инстансов` (например `small`), и нажать справа от него стрелку вверх.

[![тип инстанса.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/K8JgAv00YijsfRub-tip-instansa.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/K8JgAv00YijsfRub-tip-instansa.png)

В меню сети выбрать нужную вам сеть, к которой будет подключена виртуальная машина (наличие сети было проверено в п.1). Если в инфраструктуре доступна только одна сеть, она будет выбрана автоматически, и выбирать ничего не нужно.

[![Сеть.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/rxdxZ1mXXVt1Hxtj-set.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/rxdxZ1mXXVt1Hxtj-set.png)

Затем перейти к меню Ключевая пара, выбрать созданную ключевую пару, и нажать справа от неё стрелку вверх.

[![Выбор ключа.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/NMueGYxsw1Cw3evt-vybor-klyucha.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/NMueGYxsw1Cw3evt-vybor-klyucha.png)

После выполнения всех действий - нажать справа снизу кнопку `запустить инстанс` для создания и запуска виртуальной машины.

###### 5. Настройка правил безопасности.   


Для работы с инстансом необходимо разрешить ему сетевое взаимодействие (например 80/TCP – HTTP, 22/TCP – SSH, 51820/UDP - other): Для этого нужно открыть `Проект` &gt; `Сеть` &gt; `Группы безопасности` &gt; выбрать группу безопасности `default` и нажать – `управление правилами`

[![группы безопасности.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/94LXrHkHp6C1hUqG-gruppy-bezopasnosti.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/94LXrHkHp6C1hUqG-gruppy-bezopasnosti.png)

В открывшемся меню добавить правило для входящего трафика

[![правила безопасности 2.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/4Fmq6RInLJ9QpKSO-pravila-bezopasnosti-2.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/4Fmq6RInLJ9QpKSO-pravila-bezopasnosti-2.png)

В открывшемся меню добавления правил, добавить правило для порта 80(tcp)  
Для этого выбрать:  
Правило: «Настраиваемое правило TCP»  
Направление: Входящий трафик  
Порт: 80   
Формат записи подключаемого диапазона адресов: CIDR  
Сам подключаемый диапазон адресов: 0.0.0.0/0  
Последняя запись означает разрешение подключения с любого адреса.  
После заполнения всех полей нажать кнопку `Добавить` в правом нижнем углу.

 [![80-tcp.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/L7hVBKVenRHZRJXe-80-tcp.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/L7hVBKVenRHZRJXe-80-tcp.png)

То же самое необходимо сделать для всех остальных портов.

###### 6. Узнать адрес виртуальной машины   


Для этого вернуться во вкладку инстансы и в поле ip адрес будет ip адрес вашего виртуального инстанса. Этот адрес понадобится в дальнейшем, для подключения к нему и его настройки.

[![find ip.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/pDfr5Ssq9tSugV9l-find-ip.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/pDfr5Ssq9tSugV9l-find-ip.png)

##### Подключение к VM

###### 7. Putty  


Сделать это можно, например, с помощью `putty`. Для этого необходимо перейти на [страницу загрузки](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html), выбрать msi установщик, так как понадобятся дополнительные компоненты Открыть `puttygen`, нажать кнопку `load` и выбрать скачанный в п.2 ключ с расширением .pem Puttygen автоматически подставит все поля из ключа. Далее необходимо нажать кнопку save private key, и выбрать место, куда ключ будет сохранен

[![putty.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/Ame1RiiixC4Y3biG-putty.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/Ame1RiiixC4Y3biG-putty.png)

Открыть расположение сохраненного ключа, и два раза нажать на него, для запуска помощника авторизации pagent (pagent откроется в трее рабочего стола, пользователь не увидит запуск никаких приложений на рабочем столе) Запустить putty Открыть меню connection -&gt; SSH -&gt; Auth и в открывшемся меню в поле private key for authentication выбрать путь к сгенерированному ключу

[![putty2.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/vMTq7qwxxOsNtgcG-putty2.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/vMTq7qwxxOsNtgcG-putty2.png)

Открыть заново вкладку `session`, ввести адрес нашей ВМ и нажать `Open`В открывшемся окне терминала ввести имя пользователя cloudadmin. Это позволит получить удалённый доступ к вашей виртуальной машине.

###### 8. Linux   


Для подключения в большинстве дистрибутивов уже установлены SSH-агенты и для подключения используя ключ достаточно добавить его в агент.

Для этого нужно выполнить команду, где pemkey.pem, это файл полученный вами на 3 пункте данной инструкции

```bash
ssh-add pemkey.pem

```

Для подключения в данном случае в терминале достаточно ввести команду:

```bash
ssh cloudadmin@172.17.5.1

```

> адрес 172.17.5.1 необходимо заменить на ваш адрес полученный из пункта 6 инструкции

###### 9. Windows 10 OpenSSH   


В Windows 10 c версии 1809 включен пакет OpenSSH, проверить это можно с помощью команды (выполняется с правами администратора):

> Дальнейшие действия выполняются в PowerShell

```powershell
Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Client*'

```

[![Screenshot from 2022-05-12 17-40-45.png](https://docs.resds.ru/uploads/images/gallery/2022-05/scaled-1680-/2C2fpUjF63J3a87b-screenshot-from-2022-05-12-17-40-45.png)](https://docs.resds.ru/uploads/images/gallery/2022-05/2C2fpUjF63J3a87b-screenshot-from-2022-05-12-17-40-45.png)

Если SSH клиент отсутствует (State: Not Present), его можно установить:

```powershell
Add-WindowsCapability -Online -Name OpenSSH.Client*

```

Далее необходимо включить SSH-агент:

```powershell
Start-Service ssh-agent

```

Добавить ключ можно с помощью команды:

```powershell
ssh-add "C:\Users\username\.ssh\id_rsa"

```

Теперь вы можете подключиться используя команду:

```powershell
ssh cloudadmin@172.17.5.1

```

> адрес 172.17.5.1 необходимо заменить на ваш адрес полученный из пункта 6 инструкции

# Включение SSH-сервера windows 10

1. Открыть Power shell с правами администратора и внести команды

```powershell
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'

```

2. Проверка, что сервер запущен и ждет подключение на 22 порту c помощью CMD

```powershell
netstat -na | find ":22"

```

# vitastor

# Vitastor on ecrypted volume

#### Настройка OSD на зашифрованном томе

##### Конфигурация OSD для хранения данных на зашифрованном томе

зашифровать том с помощью luks

настроить osd для хранения с помощью утилиты vitastor-disk

```vitastor-disk prepare --data_device /dev/mapper/osd02_1 --force --disable_data_fsync off```

Где:

`--data_device` -  устройство, появившееся после расшифровки LUKS


##### Конфигурация udev для обнаружения и инициализации OSD
в файле

`/usr/lib/udev/rules.d/90-vitastor.rules`

изменить первую строку на:

`SUBSYSTEM=="block", ENV{DM_NAME}=="osd*", \`

Где: 

`ENV{DM_NAME}=="osd*"` будет указывать на то, что данное правило стоит применять тогда, когда в системе появится устройство с именем, начинающимся на `osd`. 

При применении этого правила в системе будет появляться файл /dev/vitastor, в котором будет появляться симлинк на нужное дисковое устройство, и может быть запущен сервис для osd.

После изменения правила udev необходимо применить изменения:

`udevadm control --reload-rules`

Так же для проверки можно выполнить:`udevadm trigger`, что заставит эмулировать запуск правила udev

# orange pi

# Установка uefi на orangepi 5

### Загрузка нужных утилит

1) Необходимо загрузить утилиту RKdevTools для процессора RK3588, было найдено на сайте [radaxa](https://dl.radxa.com/rock_pro/tools/windows/), по документации orangepi обязательно версии 2.96 (файл RKDevTool_Release_v2.96-20221121.rar)

2) Необходимо загрузить прошивальщик, тоже у radaxa для версии [rock-5a](https://dl.radxa.com/rock5/sw/images/loader/rock-5a/) подошло, так как там тоже процессор rk3588s

3) Необходимо загрузить uefi(выбрал edk2), подходящий найден был [тут](https://github.com/edk2-porting/edk2-rk3588/releases), искать по релизам для orangepi 5, например релиз v0.12.1

4) необходимо загрузить драйвера для rockchip, было найдено на сайте [radaxa](https://dl.radxa.com/rock_pro/tools/windows/), файл DriverAssitant_v5.0.zip


### Прошивка устройства
Перейдите в папку RKDevTool и откройте файл config.ini. По умолчанию язык инструмента - китайский, а если вы читаете этот блог, то, скорее всего, вы предпочитаете английский. Поменяйте местами файлы Lang1file и Lang2file.

[![image-34.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/PJofsaJwEZJvmKIl-image-34.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/PJofsaJwEZJvmKIl-image-34.png)

Теперь откройте RKDevTool, и он должен выдать сообщение о том, что устройство не подключено.

[![Screenshot_3.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/swjBO5pJnQVHAztE-screenshot-3.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/swjBO5pJnQVHAztE-screenshot-3.png)

Нужно все отключить от девайса. И питание.

Подключить только один usb порт. Причем строго определенный, к компу (см инструкцию пользователя стр. 41). Тот, который НЕ подает питания.

[![55fe28614b38061a7f07d4c367678a28.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/bIbzvyAX1bSsmnbE-55fe28614b38061a7f07d4c367678a28.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/bIbzvyAX1bSsmnbE-55fe28614b38061a7f07d4c367678a28.png)

Нажать спец кнопку на нем недалеко от порта (см инструкцию пользователя стр. 41)

[![03c03b99b8655aa208a8b532452d901a.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/Vs3lZFnlbKDWz5mx-03c03b99b8655aa208a8b532452d901a.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/Vs3lZFnlbKDWz5mx-03c03b99b8655aa208a8b532452d901a.png)

Далее подключить питание, у меня это тоже usb порт.

Отпустить спец кнопку.

Щелкните правой кнопкой мыши в области таблицы и выберите пункт load config

Перейдите в папку miniloader и выберите файл config.cfg. Затем нажмите кнопку открыть.

[![image-38.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/PzvnUV2ndxc5aQB2-image-38.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/PzvnUV2ndxc5aQB2-image-38.png)

[![image-39.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/tJfLnzoXTTA4lHEl-image-39.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/tJfLnzoXTTA4lHEl-image-39.png)

После успешной записи конфига необходимо прописать соответствующие файлы в нужных полях из недавно скачанных.

[![image-40.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/AW5gnEcgHxYtGCb4-image-40.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/AW5gnEcgHxYtGCb4-image-40.png)

[![image-41.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/Pww5u8XK0seGG1hx-image-41.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/Pww5u8XK0seGG1hx-image-41.png)

Убедитесь, что поставили галочку напротив ```Write By Address```, затем нажмите Run. Прогресс можно наблюдать в меню справа.

[![image-42.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/FBs3UZWM4JEKJVFB-image-42.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/FBs3UZWM4JEKJVFB-image-42.png)

В окне состояния справа будут появляться обновления по мере установки, но на этапе загрузки образа уйдет довольно много времени. Если все прошло успешно, в последней строке должно появиться сообщение «Download image OK», и плата больше не будет подключена.

[![Screenshot_1.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/ACOde3TTn8l1t7ao-screenshot-1.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/ACOde3TTn8l1t7ao-screenshot-1.png)

Все, можно подключать все обратно к устройству и наблюдать за загрузкой, в том числе и UEFI интерфейс.


### источники

[статья с утсновкой из linux на orangepi 5b](https://habr.com/ru/articles/789654/)

[статья с работой в интерфейсе rkdevtool](https://3dpandme.com/2023/04/29/tutorial-orange-pi-5b-klipper-install/)

[образ uefi](https://github.com/edk2-porting/edk2-rk3588/releases/tag/v0.12.1)

[необходимые утилиты для windows](https://dl.radxa.com/rock_pro/tools/windows/)

[spi для rk3588s](https://dl.radxa.com/rock5/sw/images/loader/rock-5a/)

# Установка uefi на orangepi 5 plus

### Загрузка нужных утилит

1) Необходимо загрузить утилиту RKdevTools для процессора RK3588, было найдено на сайте [radaxa](https://dl.radxa.com/rock_pro/tools/windows/), по документации orangepi обязательно версии 2.96 (файл RKDevTool_Release_v2.96-20221121.rar)

2) Необходимо загрузить прошивальщик, тоже у radaxa для версии [rock-5b](https://dl.radxa.com/rock5/sw/images/loader/rock-5b/release/) подошло, так как там тоже процессор rk3588

3) Необходимо загрузить uefi(выбрал edk2), подходящий найден был [тут](https://github.com/edk2-porting/edk2-rk3588/releases), искать по релизам для orangepi 5, например релиз v0.12.2

4) необходимо загрузить драйвера для rockchip, было найдено на сайте [radaxa](https://dl.radxa.com/rock_pro/tools/windows/), файл DriverAssitant_v5.0.zip


### Прошивка устройства
Перейдите в папку RKDevTool и откройте файл config.ini. По умолчанию язык инструмента - китайский, а если вы читаете этот блог, то, скорее всего, вы предпочитаете английский. Поменяйте местами файлы Lang1file и Lang2file.

[![image-34.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/PJofsaJwEZJvmKIl-image-34.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/PJofsaJwEZJvmKIl-image-34.png)

Теперь откройте RKDevTool, и он должен выдать сообщение о том, что устройство не подключено.

[![Screenshot_3.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/swjBO5pJnQVHAztE-screenshot-3.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/swjBO5pJnQVHAztE-screenshot-3.png)

Нужно все отключить от девайса. И питание.

Подключить только один usb порт. Причем строго определенный, к компу (см инструкцию пользователя стр. 41). Тот, который НЕ подает питания.

[![55fe28614b38061a7f07d4c367678a28.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/bIbzvyAX1bSsmnbE-55fe28614b38061a7f07d4c367678a28.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/bIbzvyAX1bSsmnbE-55fe28614b38061a7f07d4c367678a28.png)

Нажать спец кнопку на нем недалеко от порта (см инструкцию пользователя стр. 41)

[![03c03b99b8655aa208a8b532452d901a.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/Vs3lZFnlbKDWz5mx-03c03b99b8655aa208a8b532452d901a.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/Vs3lZFnlbKDWz5mx-03c03b99b8655aa208a8b532452d901a.png)

Далее подключить питание, у меня это тоже usb порт.

Отпустить спец кнопку.

Щелкните правой кнопкой мыши в области таблицы и выберите пункт load config

Перейдите в папку miniloader и выберите файл config.cfg. Затем нажмите кнопку открыть.

[![image-38.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/PzvnUV2ndxc5aQB2-image-38.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/PzvnUV2ndxc5aQB2-image-38.png)

[![image-39.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/tJfLnzoXTTA4lHEl-image-39.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/tJfLnzoXTTA4lHEl-image-39.png)

После успешной записи конфига необходимо прописать соответствующие файлы в нужных полях из недавно скачанных.

[![image-40.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/AW5gnEcgHxYtGCb4-image-40.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/AW5gnEcgHxYtGCb4-image-40.png)

[![image-41.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/Pww5u8XK0seGG1hx-image-41.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/Pww5u8XK0seGG1hx-image-41.png)

Убедитесь, что поставили галочку напротив ```Write By Address```, затем нажмите Run. Прогресс можно наблюдать в меню справа.

[![image-42.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/FBs3UZWM4JEKJVFB-image-42.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/FBs3UZWM4JEKJVFB-image-42.png)

В окне состояния справа будут появляться обновления по мере установки, но на этапе загрузки образа уйдет довольно много времени. Если все прошло успешно, в последней строке должно появиться сообщение «Download image OK», и плата больше не будет подключена.

[![Screenshot_1.png](https://docs.resds.ru/uploads/images/gallery/2025-02/scaled-1680-/ACOde3TTn8l1t7ao-screenshot-1.png)](https://docs.resds.ru/uploads/images/gallery/2025-02/ACOde3TTn8l1t7ao-screenshot-1.png)

Все, можно подключать все обратно к устройству и наблюдать за загрузкой, в том числе и UEFI интерфейс.


### источники

[статья с утсновкой из linux на orangepi 5b](https://habr.com/ru/articles/789654/)

[статья с работой в интерфейсе rkdevtool](https://3dpandme.com/2023/04/29/tutorial-orange-pi-5b-klipper-install/)

[образ uefi](https://github.com/edk2-porting/edk2-rk3588/releases/tag/v0.12.2)

[необходимые утилиты для windows](https://dl.radxa.com/rock_pro/tools/windows/)

[spi для rk3588](https://dl.radxa.com/rock5/sw/images/loader/rock-5b/releases)

# Установка Armbian c grub

Установка Armbian с grub на систему с UEFI возможна на любой тип ностиеля, что избавляет от проблемы прошивки SPI для каждого из типа дисков, и возможные проблемы совместимости с другими дисками. <b>Возможно путь в данном руководстве не самый оптимальный но рабочий.</b>

В случае установки в данном примере понадобится:
1) SD карточка
2) образ Armbian
3) Микрокомпьютер с arm
4) Установленный целевой диск на микрокомпьютере(в моем случае это NVMe на 256gb)
5) интернет на миникомпьютере

### Подготовка SD карты
загрузить последний [образ Armbian](https://www.armbian.com/orangepi-5/) на компьютер для своей системы. В данном случае это образ Armbian для Orangepi 5

С помощью [BalenaEther](https://etcher.balena.io/) или любой удобной утилиты как Rufus или dd(можно и dc3dd, ставится через apt) записать образ на sd карту

Вставить эту карту в миникомпьютер, включить его

### Запись образа на диск
Подключиться к операционной системе миникомпьютера. Пройти первоначальный wizard для настройки пользователей и сети

Удобней будет по SSH подключиться к этому миникомпьютеру, и все дальнейшие действия выполнять по <b>SSH</b>

Первым делом на сам миникомпьютер скачать требуемый образ Armbian. В данном случае всегда будет скачиваться последний образ Armbian

Пофиксить проблему с DNS. Разбираться не стал, просто удаляю симлинк  /etc/resolv.conf```rm -rf /etc/resolv.conf``` и создаю новый с указанием своего DNS например: ```echo nameserver 192.168.1.1 > /etc/resolv.conf```

```
curl -o armbian_bookworm_minimal.img.xz -L https://dl.armbian.com/orangepi5/Bookworm_vendor_minimal
```
Установить dc3dd (работает сильно быстрее dd с дефолтными настройками, вероятно сам подбирает размер блока и параметры работы с кэшами)
```
apt install -y dc3dd
```
распаковать скачанный образ armbian:
```
xz -d armbian_bookworm_minimal.img.xz
```
раcпакованный образ записать на NVMe(полностью диск без разделов) с помощью dc3dd
```
dc3dd if=armbian_bookworm_minimal.img of=/dev/nvme0n1
```
Теперь на диске появился раздел /dev/nvme0n1p1. Надо заново записать его в образ(но теперь это будет образ партиции и не всего диска)
```
dc3dd if=/dev/nvme0n1p1 of=armbian_bookworm_minimal-part.img
```
Разбить диск с помощью fdisk(```fdisk /dev/nvme0n1```)
- 1 раздел - 512mb c типом раздела vfat. Он будет использован для uefi
- 2 раздел - все остальное, будет использовано для всего остального, в том числе и boot

Отформатировать первый раздел под vfat:
```
mkfs.vfat -F 32 /dev/nvme0n1p1
```
На второй раздел записать образ раздела armbian:
```
dc3dd if=armbian_bookworm_minimal-part.img of=/dev/nvme0n1p2
```
### Настройка Armbian для загрузки Grub
Можно сказать что образ Armbian установлен на диск, но его ещё надо настроить для корректной загрузки из grub
Для этого надо сделать chroot в этот диск:
```
mount /dev/nvme0n1p2 /mnt
mkdir /mnt/EFI
mount /dev/nvme0n1p1 /mnt/EFI
mount -t proc /proc /mnt/proc
mount -o bind /sys /mnt/sys
mount -o bind /dev /mnt/dev
chroot /mnt
```
Внутри новой системы тоже пофиксить проблему с DNS. Разбираться не стал, просто удаляю симлинк  /etc/resolv.conf```rm
-rf /etc/resolv.conf``` и создаю новый с указанием своего DNS например: ```echo nameserver 192.168.1.1 > /etc/resolv.conf```

установить необходимые пакеты
```
apt update
apt install -y vim grub2-common grub-efi
```
Установить GRUB
```
grub-install --target=arm64-efi --efi-directory=/EFI --boot-directory=/boot --removable
```
В файле /etc/default/grub привести строку GRUB_CMDLINE_LINUX_DEFAULT к следующему виду:
```
GRUB_CMDLINE_LINUX_DEFAULT="rootwait rootfstype=ext4"
```
сохранить файл и создать файл grub:
```
grub-mkconfig -o /boot/grub/grub.cfg
```
Так как данная версия grub-mkconfig не поддерживает автоматическое создание devicetree, вписать это в grub самому. для этого открыть ```/boot/grub/grub.cfg``` и в нем добавить строку ```devicetree /boot/dtb/rockchip/rk3588s-orangepi-5.dtb``` в меню загрузки для orangepi 5, приведя его к виду как на изображении (<b>uuid разделов не менять, добавить только строку с devicetree</b>):
[![Screenshot_2.png](https://docs.resds.ru/uploads/images/gallery/2025-03/scaled-1680-/REOCxEvniJEhr2Jd-screenshot-2.png)](https://docs.resds.ru/uploads/images/gallery/2025-03/REOCxEvniJEhr2Jd-screenshot-2.png)

После этого необходимо выйти из chroot и отмонтировать все разделы:
```
exit
```
```
umount /mnt/EFI
umount /mnt/proc
umount /mnt/sys
umount /mnt/dev
umount /mnt
sync
```
Всё, теперь систему можно перезагружать, обязательно вынув sd карту и она загрузится в новую установленную систему.