commit 5f042075f9a24c0309c8b5f5dce62a588bd3d856 Author: DrHo1y Date: Fri Apr 11 11:33:38 2025 +0700 init diff --git a/README.md b/README.md new file mode 100644 index 0000000..b861043 --- /dev/null +++ b/README.md @@ -0,0 +1,154 @@ +## Метод записи с помощью команды dd + +1. Для начала необходимо подготовить твердотельный накопитель NVMe SSD с интерфейсом PCIe версии 3.0x4 для слота M.2 на плате разработки. + +![image ssd](/img/1.JPG) + +2. Затем вставьте NVMe SSD в интерфейс M.2 PCIe на плате разработки и надёжно закрепите его. + +![sbc opi 5 ](/img/2.JPG) + +3. Расположение SPI Flash на плате разработки показано на следующем рисунке, дополнительные настройки перед началом записи не требуются. + +![sbc opi 5 ](/img/3.JPG) + +4. Для записи образа Linux на SPIFlash+NVMe SSD потребуется использовать карту microSD (TF-карту). Первым шагом нужно записать образ Linux на TF-карту, а затем использовать её для загрузки платы разработки в систему Linux. Метод записи образа Linux на TF-карту описан в двух разделах: "`метод записи образа Linux на TF-карту с использованием Windows PC`" и "`метод записи образа Linux на TF-карту с использованием Ubuntu PC`". + +5. После запуска системы Linux с TF-карты мы начинаем запись образа u-boot в SPI Flash + + 1. Сначала запустите утилиту `nand-sata-install`. Обычным пользователям следует помнить о необходимости предоставления прав `sudo` + ```bash + orangepi@orangepi5ultra:~/$ sudo nand-sata-install + ``` + + 2. Затем выберите пунк `7 Install/Update ther bootloader on SPI Flash`. + +![](/img/4.JPG) + + 3. Далее выберите `Yes`. + +![](/img/5.JPG) + + 4. Пожалуйста, наберитесь терпения и дождитесь завершения записи. После завершения записи в левом нижнем углу появится сообщение `Done`: + +![](/img/6.JPG) + +--- + +## В системе OPi OS Arch отсутствует скрипт nand-sata-install. Пожалуйста, используйте следующую команду для записи u-boot в SPI Flash: + +```bash +orangepi@orangepi5ultra:~/$ sudo dd if=/boot/rkspi_loader.img of=/dev/mtdblock0 +``` + +--- + +6. Затем загрузите файл образа Linux (скачанный с официального сайта как образ Debian, Ubuntu или OpenWRT) на TF-карту. Инструкции по загрузке файлов образа Linux на плату разработки можно найти в соответствующем разделе документации. + + +--- + +Обратите внимание, что если вы скачиваете образ OpenWRT, вы увидите три типа образов по ссылке для скачивания OpenWRT. Пожалуйста, выберите файлы образов из папки `"TF card, eMMC, and NVME SSD boot images"`. + +--- + + +7. После загрузки образа в систему Linux на плате разработки, мы можем перейти к пути хранения файла образа через командную строку Linux на плате разработки. + Например, я сохранил образ Linux в директории `/home/orangepi/Desktop`, а затем перешёл в эту директорию, чтобы увидеть загруженный файл образа.. + ```bash + orangepi@orangepi5ultra:~/ cd /home/orangepi/Desktop + orangepi@orangepi5ultra:~/Desktop$ ls + orangepi5ultra_x.x.x_debian_bullseye_desktop_xfce_linux5.10.160.img + ``` + +--- + +## Как войти в командную строку Linux на плате разработки? +1. Для метода использования последовательного порта для входа в терминал, обратитесь к инструкциям в разделе о том, как использовать отладочный последовательный порт. + +2. Используйте SSH для удалённого входа в систему Linux; обратитесь к инструкциям в разделе о SSH-подключении к плате разработки. + +3. Если подключены HDMI, LCD или другие дисплеи, то можно открыть терминал командной строки на рабочем столе. + +--- + +8. Далее убедимся, что NVMe SSD правильно распознаётся платой разработки под управлением Linux. Если NVMe SSD распознаётся нормально, вы можете использовать команду `sudo fdisk -l`, чтобы увидеть информацию, связанную с NVMe. + ```bash + orangepi@orangepi:~/Desktop$ sudo fdisk -l | grep "nvme0n1" + Disk /dev/nvme0n1: 1.86 TiB, 2048408248320 bytes, 4000797360 sectors + ``` + Используя команду `lspci`, вы можете увидеть устройство PCI, связанное с NVMe. + ```bash + orangepi@orangepi:~/Desktop$ lspci + 0004:40:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01) + 0004:41:00.0 Non-Volatile memory controller: MAXIO Technology (Hangzhou) Ltd. NVMe SSD Controller MAP1202 (rev 01) + ``` + +9. Затем мы можем использовать команду `dd` для очистки NVMe SSD (по желанию). +```bash +orangepi@orangepi5ultra:~/Desktop$ sudo dd bs=1M if=/dev/zero of=/dev/nvme0n1 count=2000 status=progress +orangepi@orangepi5ultra:~/Desktop$ sudo sync +``` + +10. Теперь вы можете использовать команду `dd` для записи образа Linux на NVMe SSD + + 1. Параметр `if=` в следующей команде должен быть дополнен полным путём к образу Linux и именем образа (например, `/home/orangepi/Desktop/Linux image name`). Поскольку мы уже вошли в путь к образу, достаточно указать только имя образа. + + 2. Не копируйте имя образа Linux из следующей команды, замените его фактическим именем образа (так как номер версии может обновляться). + ```bash + sudo dd bs=1M if=orangepi5ultra_x.x.x_debian_bullseye_desktop_xfce_linux5.10.160.img of=/dev/nvme0n1 status=progress + sudo sync + ``` + +--- + +Обратите внимание, что если вы загружаете сжатый файл образа Linux с расширением `.7z`, `.xz` или `.gz`, не забудьте распаковать его перед записью с помощью команды `dd`. Подробное описание и использование всех параметров команды dd можно просмотреть, выполнив команду `man dd` в системе Linux. + +--- + +11. После успешной записи образа Linux на NVMe SSD вы можете использовать команду `poweroff` для выключения системы. Затем отсоедините TF-карту и кратковременно нажмите кнопку питания, чтобы запустить систему Linux с SPIFlash+NVMe SSD. + +12. После запуска системы с NVMe SSD используйте команду `df -h`, чтобы увидеть фактический объём жёсткого диска + + 1. 128GB NVMe SSD. + ```bash + orangepi@orangepi:~$ df -h + Filesystem Size Used Avail Use% Mounted on + udev 3.8G 8.0K 3.8G 1% /dev + tmpfs 769M 1.4M 768M 1% /run + /dev/nvme0n1p2 118G 5.8G 111G 5% / + tmpfs 3.8G 0 3.8G 0% /dev/shm + tmpfs 5.0M 4.0K 5.0M 1% /run/lock + tmpfs 3.8G 16K 3.8G 1% /tmp + /dev/nvme0n1p1 256M 90M 166M 36% /boot + /dev/zram1 194M 9.9M 170M 6% /var/log + tmpfs 769M 60K 769M 1% /run/user/1000 + tmpfs 769M 48K 769M 1% /run/user/0 + ``` + + 2. 2TB NVMe SSD. + ```bash + orangepi@orangepi:~$ df -h + Filesystem Size Used Avail Use% Mounted on + udev 3.8G 8.0K 3.8G 1% /dev + tmpfs 769M 1.4M 768M 1% /run + /dev/nvme0n1p2 1.9T 4.1G 1.8T 1% / + tmpfs 3.8G 0 3.8G 0% /dev/shm + tmpfs 5.0M 4.0K 5.0M 1% /run/lock + /dev/zram2 3.7G 76K 3.5G 1% /tmp + /dev/nvme0n1p1 256M 90M 166M 36% /boot + /dev/zram1 194M 15M 165M 9% /var/log + tmpfs 769M 60K 769M 1% /run/user/1000 + tmpfs 769M 48K 769M 1% /run/user/0 + ``` + +13) Когда на TF-карту и NVMe SSD записана одна и та же система, `если оба устройства (TF-карта и NVMe SSD) вставлены в плату разработки, при включении платы u-boot запустит систему с TF-карты первой`. Однако, поскольку системы на TF-карте и NVMe SSD идентичны, UUID разделов `/boot` и `rootfs` на обоих устройствах также совпадают. Это может привести к тому, что раздел на NVMe SSD будет загружен при старте с TF-карты. Выполнение следующего скрипта решит эту проблему. + ```bash + orangepi@orangepi:~$ sudo fix_mmc_ssd.sh + ``` + +--- + +Одинаковая система означает, что имя образа полностью совпадает. Даже в случае с Debian11 разные версии считаются разными системами. Скрипт fix_mmc_ssd.sh недоступен в системе OPi OS Arch. + +--- diff --git a/img/1.JPG b/img/1.JPG new file mode 100644 index 0000000..b781d4a Binary files /dev/null and b/img/1.JPG differ diff --git a/img/2.JPG b/img/2.JPG new file mode 100644 index 0000000..b5c58a5 Binary files /dev/null and b/img/2.JPG differ diff --git a/img/3.JPG b/img/3.JPG new file mode 100644 index 0000000..c2d5003 Binary files /dev/null and b/img/3.JPG differ diff --git a/img/4.JPG b/img/4.JPG new file mode 100644 index 0000000..0de89b7 Binary files /dev/null and b/img/4.JPG differ diff --git a/img/5.JPG b/img/5.JPG new file mode 100644 index 0000000..5277ce7 Binary files /dev/null and b/img/5.JPG differ diff --git a/img/6.JPG b/img/6.JPG new file mode 100644 index 0000000..6826fec Binary files /dev/null and b/img/6.JPG differ