Метод записи с помощью команды dd
- Для начала необходимо подготовить твердотельный накопитель NVMe SSD с интерфейсом PCIe версии 3.0x4 для слота M.2 на плате разработки.
- Затем вставьте NVMe SSD в интерфейс M.2 PCIe на плате разработки и надёжно закрепите его.
- Расположение SPI Flash на плате разработки показано на следующем рисунке, дополнительные настройки перед началом записи не требуются.
-
Для записи образа Linux на SPIFlash+NVMe SSD потребуется использовать карту microSD (TF-карту). Первым шагом нужно записать образ Linux на TF-карту, а затем использовать её для загрузки платы разработки в систему Linux. Метод записи образа Linux на TF-карту описан в двух разделах: "
метод записи образа Linux на TF-карту с использованием Windows PC" и "метод записи образа Linux на TF-карту с использованием Ubuntu PC". -
После запуска системы Linux с TF-карты мы начинаем запись образа u-boot в SPI Flash
- Сначала запустите утилиту
nand-sata-install. Обычным пользователям следует помнить о необходимости предоставления правsudo
orangepi@orangepi5ultra:~/$ sudo nand-sata-install- Затем выберите пунк
7 Install/Update ther bootloader on SPI Flash.
- Сначала запустите утилиту
3. Далее выберите `Yes`.
4. Пожалуйста, наберитесь терпения и дождитесь завершения записи. После завершения записи в левом нижнем углу появится сообщение `Done`:
В системе OPi OS Arch отсутствует скрипт nand-sata-install. Пожалуйста, используйте следующую команду для записи u-boot в SPI Flash:
orangepi@orangepi5ultra:~/$ sudo dd if=/boot/rkspi_loader.img of=/dev/mtdblock0
- Затем загрузите файл образа Linux (скачанный с официального сайта как образ Debian, Ubuntu или OpenWRT) на TF-карту. Инструкции по загрузке файлов образа Linux на плату разработки можно найти в соответствующем разделе документации.
Обратите внимание, что если вы скачиваете образ OpenWRT, вы увидите три типа образов по ссылке для скачивания OpenWRT. Пожалуйста, выберите файлы образов из папки "TF card, eMMC, and NVME SSD boot images".
- После загрузки образа в систему Linux на плате разработки, мы можем перейти к пути хранения файла образа через командную строку Linux на плате разработки.
Например, я сохранил образ Linux в директории
/home/orangepi/Desktop, а затем перешёл в эту директорию, чтобы увидеть загруженный файл образа..orangepi@orangepi5ultra:~/ cd /home/orangepi/Desktop orangepi@orangepi5ultra:~/Desktop$ ls orangepi5ultra_x.x.x_debian_bullseye_desktop_xfce_linux5.10.160.img
Как войти в командную строку Linux на плате разработки?
-
Для метода использования последовательного порта для входа в терминал, обратитесь к инструкциям в разделе о том, как использовать отладочный последовательный порт.
-
Используйте SSH для удалённого входа в систему Linux; обратитесь к инструкциям в разделе о SSH-подключении к плате разработки.
-
Если подключены HDMI, LCD или другие дисплеи, то можно открыть терминал командной строки на рабочем столе.
-
Далее убедимся, что NVMe SSD правильно распознаётся платой разработки под управлением Linux. Если NVMe SSD распознаётся нормально, вы можете использовать команду
sudo fdisk -l, чтобы увидеть информацию, связанную с NVMe.orangepi@orangepi:~/Desktop$ sudo fdisk -l | grep "nvme0n1" Disk /dev/nvme0n1: 1.86 TiB, 2048408248320 bytes, 4000797360 sectorsИспользуя команду
lspci, вы можете увидеть устройство PCI, связанное с NVMe.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) -
Затем мы можем использовать команду
ddдля очистки NVMe SSD (по желанию).
orangepi@orangepi5ultra:~/Desktop$ sudo dd bs=1M if=/dev/zero of=/dev/nvme0n1 count=2000 status=progress
orangepi@orangepi5ultra:~/Desktop$ sudo sync
-
Теперь вы можете использовать команду
ddдля записи образа Linux на NVMe SSD-
Параметр
if=в следующей команде должен быть дополнен полным путём к образу Linux и именем образа (например,/home/orangepi/Desktop/Linux image name). Поскольку мы уже вошли в путь к образу, достаточно указать только имя образа. -
Не копируйте имя образа Linux из следующей команды, замените его фактическим именем образа (так как номер версии может обновляться).
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.
-
После успешной записи образа Linux на NVMe SSD вы можете использовать команду
poweroffдля выключения системы. Затем отсоедините TF-карту и кратковременно нажмите кнопку питания, чтобы запустить систему Linux с SPIFlash+NVMe SSD. -
После запуска системы с NVMe SSD используйте команду
df -h, чтобы увидеть фактический объём жёсткого диска- 128GB NVMe SSD.
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- 2TB NVMe SSD.
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
- Когда на TF-карту и NVMe SSD записана одна и та же система,
если оба устройства (TF-карта и NVMe SSD) вставлены в плату разработки, при включении платы u-boot запустит систему с TF-карты первой. Однако, поскольку системы на TF-карте и NVMe SSD идентичны, UUID разделов/bootиrootfsна обоих устройствах также совпадают. Это может привести к тому, что раздел на NVMe SSD будет загружен при старте с TF-карты. Выполнение следующего скрипта решит эту проблему.orangepi@orangepi:~$ sudo fix_mmc_ssd.sh
Одинаковая система означает, что имя образа полностью совпадает. Даже в случае с Debian11 разные версии считаются разными системами. Скрипт fix_mmc_ssd.sh недоступен в системе OPi OS Arch.