OpenWRT в QEMU

встраиваемые модели

Модераторы: Olej, vikos

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 10:36

Интересная возможность для отработки софта - работать с OpenWRT на не x86 платформах (ARM, MIPS, ...) в QEMU.

1). Под великое множество платформ OpenWRT - Targets - не набегаешься искать реальных железок для сборки и проверки софта...

2). Часто в минимальных ресурсах можно закачать и использовать софт, но на минимуме сборку и компиляцию не развернёшь - Supported devices:
SoC / target supported by OpenWrt
Sufficient Flash to accommodate OpenWrt firmware image
4MB min (won't be able to install GUI (LuCI))
8MB better (will fit GUI and some other applications)
Sufficient RAM for stable operation
32MB min, 64MB better
DO NOT BUY DEVICES WITH 4MB FLASH / 32MB RAM if you intend to flash an up-to-date and secure OpenWrt version onto it! See 4/32 warning for details.

1) 4/32 devices do not have sufficient resources (flash and/or RAM) to provide secure and reliable operation. See OpenWrt on 4/32 devices what you can do now.

2) OpenWrt support for 4/32 devices has ended in 2022. 19.07.10 was the last official build for 4/32 devices.
В QEMU можно произвольно варьировать ресурсы.

3). OpenWRT ориентированные железки имеют очень низкую производительность при компиляции-сборке. А на QEMU мы можем настроить систему сборки производительнее реальной железки и в 10 и в 100 раз более.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 12:33

Olej писал(а):
19 авг 2023, 10:36
OpenWRT на не x86 платформах (ARM, MIPS, ...) в QEMU.
OpenWrt in QEMU
OpenWrt in QEMU arm
The platform is available in the downloads.
https://downloads.openwrt.org/snapshots/targets/armsr/

Код: Выделить всё

armv7/	-	Sat Aug 19 05:33:44 2023
armv8/	-	Fri Aug 18 23:19:02 2023
OpenWrt in QEMU aarch64
The target is armvirt 64 variant.
https://downloads.openwrt.org/releases/ ... rmvirt/64/

Код: Выделить всё

Image for your Device	sha256sum	File Size	Date
Image	377258e6725ce32a9d102033479f578f94048ab4dc3a2a01c5153e9648084255	6680.0 KB	Sun May 17 09:36:42 2020
Image-initramfs	8417adc97bcc8e29d93987a0c1576693acc9ec59d6e04603e9afad2ffef65188	12184.0 KB	Sun May 17 09:36:43 2020
default-rootfs.tar.gz	9e2eb2ca0970ad04b558fb18f48fb3915b461db711bcc72f37bbfe7321618af3	2102.5 KB	Sun May 17 09:36:42 2020
root.ext4.gz	9800357f90f99b2decff431cf0d8641ce3048896af37e76d66f6a5716b6a4530	2375.0 KB	Sun May 17 09:36:49 2020
root.squashfs.gz	56b3f88150549632961a04f3266525c27320d358546daf5753ad1be8a1f236d7	1688.7 KB	Sun May 17 09:36:45 2020
rootfs.cpio.gz	f61f27bd17de546264aa58f40f3aafaac7021e0ef69c17f6b1b4cd7664a037ec	0.0 KB	Sun May 17 09:36:42 2020
OpenWrt in QEMU MIPS
The “malta” platform is meant for use with QEMU for emulating a MIPS system.
... но с MIPS всё весьма старое и нужно разбираться ...

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 12:57

Olej писал(а):
19 авг 2023, 10:36
в QEMU
Инструментарий QEMU ... пока по памяти прежних работ, потом что нужно доставлю...

Код: Выделить всё

olej@R420:~$ sudo apt install qemu
[sudo] пароль для olej:       
Чтение списков пакетов… Готово
Построение дерева зависимостей… Готово
Чтение информации о состоянии… Готово         
Следующие НОВЫЕ пакеты будут установлены:
  qemu
Обновлено 0 пакетов, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 14,0 kB архивов.
После данной операции объём занятого дискового пространства возрастёт на 140 kB.
Пол:1 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/universe amd64 qemu amd64 1:6.2+dfsg-2ubuntu6.12 [14,0 kB]
Получено 14,0 kB за 0с (60,8 kB/s)
Выбор ранее не выбранного пакета qemu.
(Чтение базы данных … на данный момент установлен 568751 файл и каталог.)
Подготовка к распаковке …/qemu_1%3a6.2+dfsg-2ubuntu6.12_amd64.deb …
Распаковывается qemu (1:6.2+dfsg-2ubuntu6.12) …
Настраивается пакет qemu (1:6.2+dfsg-2ubuntu6.12) …

Код: Выделить всё

olej@R420:~$ sudo apt install qemu-system-arm qemu-system-mips
Чтение списков пакетов… Готово
Построение дерева зависимостей… Готово
Чтение информации о состоянии… Готово         
Будут установлены следующие дополнительные пакеты:
  ipxe-qemu ipxe-qemu-256k-compat-efi-roms libcacard0 libdaxctl1 libfdt1 libgfapi0 libgfrpc0 libgfxdr0 libglusterfs0 libiscsi7 libndctl6 libpmem1
  libpmemobj1 librados2 librbd1 libslirp0 libspice-server1 libusbredirparser1 libvirglrenderer1 qemu-block-extra qemu-efi-aarch64 qemu-efi-arm
  qemu-system-common qemu-system-data qemu-system-gui qemu-utils seabios
Предлагаемые пакеты:
  samba vde2 debootstrap
Следующие НОВЫЕ пакеты будут установлены:
  ipxe-qemu ipxe-qemu-256k-compat-efi-roms libcacard0 libdaxctl1 libfdt1 libgfapi0 libgfrpc0 libgfxdr0 libglusterfs0 libiscsi7 libndctl6 libpmem1
  libpmemobj1 librados2 librbd1 libslirp0 libspice-server1 libusbredirparser1 libvirglrenderer1 qemu-block-extra qemu-efi-aarch64 qemu-efi-arm
  qemu-system-arm qemu-system-common qemu-system-data qemu-system-gui qemu-system-mips qemu-utils seabios
Обновлено 0 пакетов, установлено 29 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 45,3 MB архивов.
После данной операции объём занятого дискового пространства возрастёт на 572 MB.
Хотите продолжить? [Д/н] y
Пол:1 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 ipxe-qemu all 1.21.1+git-20220113.fbbdc3926-0ubuntu1 [1.569 kB]
Пол:2 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 ipxe-qemu-256k-compat-efi-roms all 1.0.0+git-20150424.a25a16d-0ubuntu4 [552 kB]
Пол:3 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libcacard0 amd64 1:2.8.0-3build2 [38,0 kB]
Пол:4 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libdaxctl1 amd64 72.1-1 [19,8 kB]
Пол:5 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 libgfxdr0 amd64 10.1-1ubuntu0.1 [22,2 kB]
Пол:6 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 libglusterfs0 amd64 10.1-1ubuntu0.1 [286 kB]
Пол:7 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 libgfrpc0 amd64 10.1-1ubuntu0.1 [47,1 kB]
Пол:8 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 libgfapi0 amd64 10.1-1ubuntu0.1 [77,3 kB]
Пол:9 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libiscsi7 amd64 1.19.0-3build2 [70,6 kB]
Пол:10 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libndctl6 amd64 72.1-1 [57,7 kB]
Пол:11 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libpmem1 amd64 1.11.1-3build1 [81,4 kB]
Пол:12 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libpmemobj1 amd64 1.11.1-3build1 [124 kB]
Пол:13 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 librados2 amd64 17.2.6-0ubuntu0.22.04.1 [3.582 kB]
Пол:14 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 librbd1 amd64 17.2.6-0ubuntu0.22.04.1 [3.551 kB]
Пол:15 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libslirp0 amd64 4.6.1-1build1 [61,5 kB]
Пол:16 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libspice-server1 amd64 0.15.0-2ubuntu4 [351 kB]
Пол:17 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libusbredirparser1 amd64 0.11.0-2build1 [15,9 kB]
Пол:18 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libvirglrenderer1 amd64 0.9.1-1~exp1ubuntu2 [188 kB]
Пол:19 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 libfdt1 amd64 1.6.1-1 [20,0 kB]
Пол:20 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-system-common amd64 1:6.2+dfsg-2ubuntu6.12 [2.047 kB]
Пол:21 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-system-data all 1:6.2+dfsg-2ubuntu6.12 [1.431 kB]
Пол:22 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-system-arm amd64 1:6.2+dfsg-2ubuntu6.12 [10,1 MB]
Пол:23 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-system-mips amd64 1:6.2+dfsg-2ubuntu6.12 [15,2 MB]
Пол:24 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-utils amd64 1:6.2+dfsg-2ubuntu6.12 [1.525 kB]                     
Пол:25 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-block-extra amd64 1:6.2+dfsg-2ubuntu6.12 [68,1 kB]                
Пол:26 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-system-gui amd64 1:6.2+dfsg-2ubuntu6.12 [220 kB]                  
Пол:27 http://ubuntu.mirrors.omnilance.com/ubuntu jammy/main amd64 seabios all 1.15.0-1 [174 kB]                                                  
Пол:28 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-efi-aarch64 all 2022.02-3ubuntu0.22.04.1 [2.567 kB]               
Пол:29 http://ubuntu.mirrors.omnilance.com/ubuntu jammy-updates/main amd64 qemu-efi-arm all 2022.02-3ubuntu0.22.04.1 [1.287 kB]                   
Получено 45,3 MB за 11с (4.047 kB/s)                                                                                                              
Выбор ранее не выбранного пакета ipxe-qemu.
(Чтение базы данных … на данный момент установлено 568755 файлов и каталогов.)
Подготовка к распаковке …/00-ipxe-qemu_1.21.1+git-20220113.fbbdc3926-0ubuntu1_all.deb …
Распаковывается ipxe-qemu (1.21.1+git-20220113.fbbdc3926-0ubuntu1) …
Выбор ранее не выбранного пакета ipxe-qemu-256k-compat-efi-roms.
Подготовка к распаковке …/01-ipxe-qemu-256k-compat-efi-roms_1.0.0+git-20150424.a25a16d-0ubuntu4_all.deb …
Распаковывается ipxe-qemu-256k-compat-efi-roms (1.0.0+git-20150424.a25a16d-0ubuntu4) …
Выбор ранее не выбранного пакета libcacard0:amd64.
Подготовка к распаковке …/02-libcacard0_1%3a2.8.0-3build2_amd64.deb …
Распаковывается libcacard0:amd64 (1:2.8.0-3build2) …
Выбор ранее не выбранного пакета libdaxctl1:amd64.
Подготовка к распаковке …/03-libdaxctl1_72.1-1_amd64.deb …
Распаковывается libdaxctl1:amd64 (72.1-1) …
Выбор ранее не выбранного пакета libgfxdr0:amd64.
Подготовка к распаковке …/04-libgfxdr0_10.1-1ubuntu0.1_amd64.deb …
Распаковывается libgfxdr0:amd64 (10.1-1ubuntu0.1) …
Выбор ранее не выбранного пакета libglusterfs0:amd64.
Подготовка к распаковке …/05-libglusterfs0_10.1-1ubuntu0.1_amd64.deb …
Распаковывается libglusterfs0:amd64 (10.1-1ubuntu0.1) …
Выбор ранее не выбранного пакета libgfrpc0:amd64.
Подготовка к распаковке …/06-libgfrpc0_10.1-1ubuntu0.1_amd64.deb …
Распаковывается libgfrpc0:amd64 (10.1-1ubuntu0.1) …
Выбор ранее не выбранного пакета libgfapi0:amd64.
Подготовка к распаковке …/07-libgfapi0_10.1-1ubuntu0.1_amd64.deb …
Распаковывается libgfapi0:amd64 (10.1-1ubuntu0.1) …
Выбор ранее не выбранного пакета libiscsi7:amd64.
Подготовка к распаковке …/08-libiscsi7_1.19.0-3build2_amd64.deb …
Распаковывается libiscsi7:amd64 (1.19.0-3build2) …
Выбор ранее не выбранного пакета libndctl6:amd64.
Подготовка к распаковке …/09-libndctl6_72.1-1_amd64.deb …
Распаковывается libndctl6:amd64 (72.1-1) …
Выбор ранее не выбранного пакета libpmem1:amd64.
Подготовка к распаковке …/10-libpmem1_1.11.1-3build1_amd64.deb …
Распаковывается libpmem1:amd64 (1.11.1-3build1) …
Выбор ранее не выбранного пакета libpmemobj1:amd64.
Подготовка к распаковке …/11-libpmemobj1_1.11.1-3build1_amd64.deb …
Распаковывается libpmemobj1:amd64 (1.11.1-3build1) …
Выбор ранее не выбранного пакета librados2.
Подготовка к распаковке …/12-librados2_17.2.6-0ubuntu0.22.04.1_amd64.deb …
Распаковывается librados2 (17.2.6-0ubuntu0.22.04.1) …
Выбор ранее не выбранного пакета librbd1.
Подготовка к распаковке …/13-librbd1_17.2.6-0ubuntu0.22.04.1_amd64.deb …
Распаковывается librbd1 (17.2.6-0ubuntu0.22.04.1) …
Выбор ранее не выбранного пакета libslirp0:amd64.
Подготовка к распаковке …/14-libslirp0_4.6.1-1build1_amd64.deb …
Распаковывается libslirp0:amd64 (4.6.1-1build1) …
Выбор ранее не выбранного пакета libspice-server1:amd64.
Подготовка к распаковке …/15-libspice-server1_0.15.0-2ubuntu4_amd64.deb …
Распаковывается libspice-server1:amd64 (0.15.0-2ubuntu4) …
Выбор ранее не выбранного пакета libusbredirparser1:amd64.
Подготовка к распаковке …/16-libusbredirparser1_0.11.0-2build1_amd64.deb …
Распаковывается libusbredirparser1:amd64 (0.11.0-2build1) …
Выбор ранее не выбранного пакета libvirglrenderer1:amd64.
Подготовка к распаковке …/17-libvirglrenderer1_0.9.1-1~exp1ubuntu2_amd64.deb …
Распаковывается libvirglrenderer1:amd64 (0.9.1-1~exp1ubuntu2) …
Выбор ранее не выбранного пакета libfdt1:amd64.
Подготовка к распаковке …/18-libfdt1_1.6.1-1_amd64.deb …
Распаковывается libfdt1:amd64 (1.6.1-1) …
Выбор ранее не выбранного пакета qemu-system-common.
Подготовка к распаковке …/19-qemu-system-common_1%3a6.2+dfsg-2ubuntu6.12_amd64.deb …
Распаковывается qemu-system-common (1:6.2+dfsg-2ubuntu6.12) …
Выбор ранее не выбранного пакета qemu-system-data.
Подготовка к распаковке …/20-qemu-system-data_1%3a6.2+dfsg-2ubuntu6.12_all.deb …
Распаковывается qemu-system-data (1:6.2+dfsg-2ubuntu6.12) …
Выбор ранее не выбранного пакета qemu-system-arm.
Подготовка к распаковке …/21-qemu-system-arm_1%3a6.2+dfsg-2ubuntu6.12_amd64.deb …
Распаковывается qemu-system-arm (1:6.2+dfsg-2ubuntu6.12) …
Выбор ранее не выбранного пакета qemu-system-mips.
Подготовка к распаковке …/22-qemu-system-mips_1%3a6.2+dfsg-2ubuntu6.12_amd64.deb …
Распаковывается qemu-system-mips (1:6.2+dfsg-2ubuntu6.12) …
Выбор ранее не выбранного пакета qemu-utils.
Подготовка к распаковке …/23-qemu-utils_1%3a6.2+dfsg-2ubuntu6.12_amd64.deb …
Распаковывается qemu-utils (1:6.2+dfsg-2ubuntu6.12) …
Выбор ранее не выбранного пакета qemu-block-extra.
Подготовка к распаковке …/24-qemu-block-extra_1%3a6.2+dfsg-2ubuntu6.12_amd64.deb …
Распаковывается qemu-block-extra (1:6.2+dfsg-2ubuntu6.12) …
Выбор ранее не выбранного пакета qemu-system-gui.
Подготовка к распаковке …/25-qemu-system-gui_1%3a6.2+dfsg-2ubuntu6.12_amd64.deb …
Распаковывается qemu-system-gui (1:6.2+dfsg-2ubuntu6.12) …
Выбор ранее не выбранного пакета seabios.
Подготовка к распаковке …/26-seabios_1.15.0-1_all.deb …
Распаковывается seabios (1.15.0-1) …
Выбор ранее не выбранного пакета qemu-efi-aarch64.
Подготовка к распаковке …/27-qemu-efi-aarch64_2022.02-3ubuntu0.22.04.1_all.deb …
Распаковывается qemu-efi-aarch64 (2022.02-3ubuntu0.22.04.1) …
Выбор ранее не выбранного пакета qemu-efi-arm.
Подготовка к распаковке …/28-qemu-efi-arm_2022.02-3ubuntu0.22.04.1_all.deb …
Распаковывается qemu-efi-arm (2022.02-3ubuntu0.22.04.1) …
Настраивается пакет librados2 (17.2.6-0ubuntu0.22.04.1) …
Настраивается пакет libspice-server1:amd64 (0.15.0-2ubuntu4) …
Настраивается пакет libfdt1:amd64 (1.6.1-1) …
Настраивается пакет qemu-efi-aarch64 (2022.02-3ubuntu0.22.04.1) …
Настраивается пакет libusbredirparser1:amd64 (0.11.0-2build1) …
Настраивается пакет libcacard0:amd64 (1:2.8.0-3build2) …
Настраивается пакет libglusterfs0:amd64 (10.1-1ubuntu0.1) …
Настраивается пакет libvirglrenderer1:amd64 (0.9.1-1~exp1ubuntu2) …
Настраивается пакет libdaxctl1:amd64 (72.1-1) …
Настраивается пакет qemu-system-data (1:6.2+dfsg-2ubuntu6.12) …
Настраивается пакет seabios (1.15.0-1) …
Настраивается пакет libslirp0:amd64 (4.6.1-1build1) …
Настраивается пакет ipxe-qemu (1.21.1+git-20220113.fbbdc3926-0ubuntu1) …
Настраивается пакет qemu-efi-arm (2022.02-3ubuntu0.22.04.1) …
Настраивается пакет libndctl6:amd64 (72.1-1) …
Настраивается пакет ipxe-qemu-256k-compat-efi-roms (1.0.0+git-20150424.a25a16d-0ubuntu4) …
Настраивается пакет qemu-utils (1:6.2+dfsg-2ubuntu6.12) …
Настраивается пакет libiscsi7:amd64 (1.19.0-3build2) …
Настраивается пакет libpmem1:amd64 (1.11.1-3build1) …
Настраивается пакет libgfxdr0:amd64 (10.1-1ubuntu0.1) …
Настраивается пакет qemu-system-common (1:6.2+dfsg-2ubuntu6.12) …
Created symlink /etc/systemd/system/multi-user.target.wants/qemu-kvm.service → /lib/systemd/system/qemu-kvm.service.
Настраивается пакет qemu-system-mips (1:6.2+dfsg-2ubuntu6.12) …
Настраивается пакет libpmemobj1:amd64 (1.11.1-3build1) …
Настраивается пакет librbd1 (17.2.6-0ubuntu0.22.04.1) …
Настраивается пакет qemu-system-arm (1:6.2+dfsg-2ubuntu6.12) …
Настраивается пакет libgfrpc0:amd64 (10.1-1ubuntu0.1) …
Настраивается пакет qemu-system-gui (1:6.2+dfsg-2ubuntu6.12) …
Настраивается пакет libgfapi0:amd64 (10.1-1ubuntu0.1) …
Настраивается пакет qemu-block-extra (1:6.2+dfsg-2ubuntu6.12) …
Created symlink /etc/systemd/system/multi-user.target.wants/run-qemu.mount → /lib/systemd/system/run-qemu.mount.
Обрабатываются триггеры для doc-base (0.11.1) …
Обработка 1 добавленный файл doc-base...
Обрабатываются триггеры для libc-bin (2.35-0ubuntu3.1) …
Обрабатываются триггеры для man-db (2.10.2-1) …
Обрабатываются триггеры для hicolor-icon-theme (0.17-2) …

Код: Выделить всё

olej@R420:~$ sudo aptitude search qemu | grep ^i
i A ipxe-qemu - PXE boot firmware - ROM images for qemu
i A ipxe-qemu-256k-compat-efi-roms - PXE boot firmware - Compat EFI ROM images for qemu
i  qemu - fast processor emulator, dummy package
i A qemu-block-extra - extra block backend modules for qemu-system and qemu-utils
i A qemu-efi-aarch64 - UEFI firmware for 64-bit ARM virtual machines
i A qemu-efi-arm - UEFI firmware for 32-bit ARM virtual machines
i  qemu-system-arm - QEMU full system emulation binaries (arm)
i A qemu-system-common - QEMU full system emulation binaries (common files)
i A qemu-system-data - QEMU full system emulation (data files)
i A qemu-system-gui - QEMU full system emulation binaries (user interface and audio support)
i  qemu-system-mips - QEMU full system emulation binaries (mips)
i  qemu-utils - QEMU utilities

Код: Выделить всё

olej@R420:~$ ls /usr/bin/qemu*
/usr/bin/qemu-img  /usr/bin/qemu-pr-helper       /usr/bin/qemu-system-arm     /usr/bin/qemu-system-mips64el
/usr/bin/qemu-io   /usr/bin/qemu-storage-daemon  /usr/bin/qemu-system-mips    /usr/bin/qemu-system-mipsel
/usr/bin/qemu-nbd  /usr/bin/qemu-system-aarch64  /usr/bin/qemu-system-mips64

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 13:04

Olej писал(а):
19 авг 2023, 12:33
OpenWrt in QEMU arm

Код: Выделить всё

olej@R420:~/2023/own.WORK/OpenWRT/ARM$ ls -l
итого 34960
-rw-rw-r-- 1 olej olej  5730816 авг 19 12:27 openwrt-armsr-armv7-generic-initramfs-kernel.bin
-rw-rw-r-- 1 olej olej 30061056 авг 19 12:28 openwrt-armsr-armv8-generic-initramfs-kernel.bin
To use this boot method, here with 64 MB of RAM, run:

Код: Выделить всё

qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armvirt-zImage-initramfs

Код: Выделить всё

olej@R420:~/2023/own.WORK/OpenWRT/ARM$ qemu-system-arm -nographic -M virt -m 64 -kernel openwrt-armsr-armv7-generic-initramfs-kernel.bin 
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 6.1.46 (builder@buildhost) (arm-openwrt-linux-muslgnueabi-gcc (OpenWrt GCC 12.3.0 r23769-324673914d) 12.3.0, GNU ld (GNU Binutils) 2.40.0) #0 SMP Fri Aug 18 21:45:16 2023
[    0.000000] CPU: ARMv7 Processor [412fc0f1] revision 1 (ARMv7), cr=30c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
[    0.000000] OF: fdt: Machine model: linux,dummy-virt
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] efi: UEFI not found.
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000040000000-0x0000000043ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x0000000043ffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x0000000043ffffff]
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv0.2 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: Trusted OS migration not required
[    0.000000] percpu: Embedded 11 pages/cpu s14868 r8192 d21996 u45056
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 16240
[    0.000000] Kernel command line: 
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes, linear)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 44476K/65536K available (7137K kernel code, 633K rwdata, 1888K rodata, 8192K init, 231K bss, 21060K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] GICv2m: range[mem 0x08020000-0x08020fff], SPI[80:143]
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 62.50MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0x1ffffffffffffff max_cycles: 0x1cd42e208c, max_idle_ns: 881590405314 ns
[    0.000173] sched_clock: 57 bits at 63MHz, resolution 16ns, wraps every 4398046511096ns
[    0.000366] Switching to timer-based delay loop, resolution 16ns
[    0.003645] Console: colour dummy device 80x30
[    0.006470] printk: console [tty0] enabled
[    0.007906] Calibrating delay loop (skipped), value calculated using timer frequency.. 125.00 BogoMIPS (lpj=625000)
[    0.008123] CPU: Testing write buffer coherency: ok
[    0.014079] CPU0: Spectre v2: firmware did not set auxiliary control register IBE bit, system vulnerable
[    0.014322] CPU0: Spectre BHB: enabling loop workaround for all CPUs
[    0.014471] pid_max: default: 32768 minimum: 301
[    0.018470] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.018582] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.050614] /cpus/cpu@0 missing clock-frequency property
[    0.051030] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.058675] cblist_init_generic: Setting adjustable number of callback queues.
[    0.058834] cblist_init_generic: Setting shift to 0 and lim to 1.
[    0.060476] Setting up static identity map for 0x40200000 - 0x40200060
[    0.061770] rcu: Hierarchical SRCU implementation.
[    0.061864] rcu: 	Max phase no-delay instances is 1000.
[    0.065134] EFI services will not be available.
[    0.066245] smp: Bringing up secondary CPUs ...
[    0.066400] smp: Brought up 1 node, 1 CPU
[    0.066530] SMP: Total of 1 processors activated (125.00 BogoMIPS).
[    0.066652] CPU: All CPU(s) started in SVC mode.
[    0.084852] VFP support v0.3: implementor 41 architecture 4 part 30 variant f rev 0
[    0.106289] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.107281] futex hash table entries: 256 (order: 2, 16384 bytes, linear)
[    0.121449] DMI not present or invalid.
[    0.135452] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.139984] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.145528] thermal_sys: Registered thermal governor 'step_wise'
[    0.157467] cpuidle: using governor ladder
[    0.159560] Serial: AMBA PL011 UART driver
[    0.192460] 9000000.pl011: ttyAMA0 at MMIO 0x9000000 (irq = 28, base_baud = 0) is a PL011 rev1
[    0.208331] printk: console [ttyAMA0] enabled
[    0.254118] SCSI subsystem initialized
[    0.256901] usbcore: registered new interface driver usbfs
[    0.257481] usbcore: registered new interface driver hub
[    0.257928] usbcore: registered new device driver usb
[    0.278969] clocksource: Switched to clocksource arch_sys_counter
[    0.298078] NET: Registered PF_INET protocol family
[    0.299765] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.307938] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[    0.308379] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.308780] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear)
[    0.309329] TCP bind hash table entries: 1024 (order: 2, 16384 bytes, linear)
[    0.309800] TCP: Hash tables configured (established 1024 bind 1024)
[    0.311421] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.311996] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)
[    0.315146] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.316362] PCI: CLS 0 bytes, default 64
[    0.376648] workingset: timestamp_bits=14 max_order=14 bucket_order=0
[    0.394993] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.395308] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.418752] 9p: Installing v9fs 9p2000 file system support
[    0.424663] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[    0.442744] pl061_gpio 9030000.pl061: PL061 GPIO chip registered
[    0.444429] pci-host-generic 4010000000.pcie: host bridge /pcie@10000000 ranges:
[    0.445664] pci-host-generic 4010000000.pcie:       IO 0x003eff0000..0x003effffff -> 0x0000000000
[    0.447018] pci-host-generic 4010000000.pcie:      MEM 0x0010000000..0x003efeffff -> 0x0010000000
[    0.447507] pci-host-generic 4010000000.pcie:      MEM 0x8000000000..0xffffffffff -> 0x8000000000
[    0.448481] pci-host-generic 4010000000.pcie: Memory resource size exceeds max for 32 bits
[    0.449338] pci-host-generic 4010000000.pcie: ECAM at [mem 0x4010000000-0x401fffffff] for [bus 00-ff]
[    0.451332] pci-host-generic 4010000000.pcie: PCI host bridge to bus 0000:00
[    0.452036] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.452383] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    0.452707] pci_bus 0000:00: root bus resource [mem 0x10000000-0x3efeffff]
[    0.452987] pci_bus 0000:00: root bus resource [mem 0x8000000000-0xffffffffff]
[    0.454871] pci 0000:00:00.0: [1b36:0008] type 00 class 0x060000
[    0.459261] pci 0000:00:01.0: [1af4:1000] type 00 class 0x020000
[    0.459968] pci 0000:00:01.0: reg 0x10: [io  0x0000-0x001f]
[    0.460344] pci 0000:00:01.0: reg 0x14: [mem 0x00000000-0x00000fff]
[    0.460692] pci 0000:00:01.0: reg 0x20: [mem 0x00000000-0x00003fff 64bit pref]
[    0.461142] pci 0000:00:01.0: reg 0x30: [mem 0x00000000-0x0007ffff pref]
[    0.463221] PCI: bus0: Fast back to back transfers disabled
[    0.465180] pci 0000:00:01.0: BAR 6: assigned [mem 0x10000000-0x1007ffff pref]
[    0.466062] pci 0000:00:01.0: BAR 4: assigned [mem 0x8000000000-0x8000003fff 64bit pref]
[    0.466543] pci 0000:00:01.0: BAR 1: assigned [mem 0x10080000-0x10080fff]
[    0.466851] pci 0000:00:01.0: BAR 0: assigned [io  0x1000-0x101f]
[    0.511513] virtio-pci 0000:00:01.0: enabling device (0100 -> 0103)
[    0.516627] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.574523] loop: module loaded
[    0.575109] Loading iSCSI transport class v2.0-870.
[    0.606342] usbcore: registered new interface driver usb-storage
[    0.610770] rtc-pl031 9010000.pl031: registered as rtc0
[    0.612103] rtc-pl031 9010000.pl031: setting system clock to 2023-08-19T09:46:43 UTC (1692438403)
[    0.613750] hid: raw HID events driver (C) Jiri Kosina
[    0.615170] usbcore: registered new interface driver usbhid
[    0.615444] usbhid: USB HID core driver
[    0.618553] NET: Registered PF_INET6 protocol family
[    0.673931] Segment Routing with IPv6
[    0.674454] In-situ OAM (IOAM) with IPv6
[    0.676283] NET: Registered PF_PACKET protocol family
[    0.677283] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    0.686165] 8021q: 802.1Q VLAN Support v1.8
[    0.687619] 9pnet: Installing 9P2000 support
[    0.688386] Registering SWP/SWPB emulation handler
[    0.809288] uart-pl011 9000000.pl011: no DMA platform data
[    0.882573] Freeing unused kernel image (initmem) memory: 8192K
[    0.890903] Run /init as init process
[    1.789317] init: Console is alive
[    1.879911] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    1.922920] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    1.966760] init: - preinit -
[    5.406394] random: crng init done
[    6.138298] 8021q: adding VLAN 0 to HW filter on device eth0
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    8.890027] procd: - early -
[    9.798025] procd: - ubus -
[    9.985775] procd: - init -
Please press Enter to activate this console.
[   12.110337] kmodloader: loading kernel modules from /etc/modules.d/*
[   12.535105] PPP generic driver version 2.4.2
[   12.542387] NET: Registered PF_PPPOX protocol family
[   12.596923] kmodloader: done loading kernel modules from /etc/modules.d/*
[   14.392178] urngd: v1.0.2 started.
[   43.495352] 8021q: adding VLAN 0 to HW filter on device eth0
[   43.528405] br-lan: port 1(eth0) entered blocking state
[   43.528825] br-lan: port 1(eth0) entered disabled state
[   43.532852] device eth0 entered promiscuous mode
[   43.610146] br-lan: port 1(eth0) entered blocking state
[   43.610630] br-lan: port 1(eth0) entered forwarding state
[   44.497675] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready



BusyBox v1.36.1 (2023-08-18 21:45:16 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt SNAPSHOT, r23769-324673914d
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:/# 

Код: Выделить всё

root@OpenWrt:/# uname -a
Linux OpenWrt 6.1.46 #0 SMP Fri Aug 18 21:45:16 2023 armv7l GNU/Linux

Код: Выделить всё

root@OpenWrt:/# free
              total        used        free      shared  buff/cache   available
Mem:          52668       12452       30016        9036       10200       18312
Swap:             0           0           0

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 13:11

Код: Выделить всё

root@OpenWrt:/# df
Filesystem           1K-blocks      Used Available Use% Mounted on
tmpfs                    26332      8980     17352  34% /
tmpfs                    26332        56     26276   0% /tmp
tmpfs                      512         0       512   0% /dev

Код: Выделить всё

root@OpenWrt:/# ls -l /
drwxr-xr-x    2 root     root          1220 Jan  1  1970 bin
drwxr-xr-x    3 root     root          2380 Aug 19 09:47 dev
drwxr-xr-x   22 root     root          1220 Aug 19 09:47 etc
-rwxr-xr-x    1 root     root           276 Jan  1  1970 init
drwxr-xr-x   10 root     root           500 Jan  1  1970 lib
drwxr-xr-x    2 root     root            40 Jan  1  1970 mnt
drwxr-xr-x    2 root     root            40 Jan  1  1970 overlay
dr-xr-xr-x   99 root     root             0 Aug 19 09:46 proc
drwxr-xr-x    2 root     root            60 Jan  1  1970 rom
drwxr-xr-x    2 root     root            40 Jan  1  1970 root
drwxr-xr-x    2 root     root          1120 Jan  1  1970 sbin
dr-xr-xr-x   11 root     root             0 Aug 19 09:46 sys
drwxrwxrwt   15 root     root           400 Aug 19 09:47 tmp
drwxr-xr-x    7 root     root           140 Aug 19 09:46 usr
lrwxrwxrwx    1 root     root             3 Aug 19 09:46 var -> tmp
drwxr-xr-x    2 root     root            40 Aug 19 09:46 www

Код: Выделить всё

root@OpenWrt:/# ip a s
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br-lan state UP qlen 1000
    link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global br-lan
       valid_lft forever preferred_lft forever
    inet6 fdd2:da9f:eb08::1/60 scope global noprefixroute 
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fe12:3456/64 scope link 
       valid_lft forever preferred_lft forever
Имидж стартовал, но этого мало для работы сети - нужно ещё в QEMU организовать tun-интерфейс, как помнится:

Код: Выделить всё

root@OpenWrt:/# ping -c3 192.168.1.13
PING 192.168.1.13 (192.168.1.13): 56 data bytes

--- 192.168.1.13 ping statistics ---
3 packets transmitted, 0 packets received, 100% packet loss

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 15:31

Olej писал(а):
19 авг 2023, 12:33
OpenWrt in QEMU aarch64

Код: Выделить всё

olej@R420:~/2023/own.WORK/OpenWRT/ARM64$ ls -l
итого 29360
-rw-rw-r-- 1 olej olej 30061056 авг 19 12:30 openwrt-armsr-armv8-generic-initramfs-kernel.bin
Пока так же:

Код: Выделить всё

olej@R420:~/2023/own.WORK/OpenWRT/ARM64$ qemu-system-aarch64 -m 1024 -smp 2 -cpu cortex-a57 -M virt -nographic -kernel openwrt-armsr-armv8-generic-initramfs-kernel.bin
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd070]
[    0.000000] Linux version 6.1.46 (builder@buildhost) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 12.3.0 r23769-324673914d) 12.3.0, GNU ld (GNU Binutils) 2.40.0) #0 SMP Fri Aug 18 21:45:16 2023
[    0.000000] Machine model: linux,dummy-virt
...
[   55.158467] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready



BusyBox v1.36.1 (2023-08-18 21:45:16 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt SNAPSHOT, r23769-324673914d
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:/#

Код: Выделить всё

root@OpenWrt:/# uname -a
Linux OpenWrt 6.1.46 #0 SMP Fri Aug 18 21:45:16 2023 aarch64 GNU/Linux

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 15:33

Olej писал(а):
19 авг 2023, 13:11
нужно ещё в QEMU организовать tun-интерфейс, как помнится:

Код: Выделить всё

olej@R420:~/2023/own.WORK/OpenWRT/ARM64$ qemu-system-aarch64 -m 1024 -smp 2 -cpu cortex-a57 -M virt -nographic -kernel openwrt-armsr-armv8-generic-initramfs-kernel.bin \
> -netdev type=tap,id=nic1,ifname=kvm0,script=no,downscript=no \
> -device virtio-net-pci,disable-legacy=on,disable-modern=off,netdev=nic1,mac=ba:ad:1d:ea:01:02
qemu-system-aarch64: -netdev type=tap,id=nic1,ifname=kvm0,script=no,downscript=no: could not configure /dev/net/tun (kvm0): Operation not permitted
Да!
По прежним опытам с QEMU: для работы с br-интерфейсами без специальных теложвижений, действия нужно запускаться с root.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 15:41

Olej писал(а):
19 авг 2023, 15:33
нужно запускаться с root.

Код: Выделить всё

olej@R420:~/2023/own.WORK/OpenWRT/ARM64$ sudo qemu-system-aarch64 -m 1024 -smp 2 -cpu cortex-a57 -M virt -nographic -kernel openwrt-armsr-armv8-generic-initramfs-kernel.bin -netdev type=tap,id=nic1,ifname=kvm0,script=no,downscript=no -device virtio-net-pci,disable-legacy=on,disable-modern=off,netdev=nic1,mac=ba:ad:1d:ea:01:02
[sudo] пароль для olej:       
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd070]
[    0.000000] Linux version 6.1.46 (builder@buildhost) (aarch64-openwrt-linux-musl-gcc (OpenWrt GCC 12.3.0 r23769-324673914d) 12.3.0, GNU ld (GNU Binutils) 2.40.0) #0 SMP Fri Aug 18 21:45:16 2023
[    0.000000] Machine model: linux,dummy-virt
[    0.000000] efi: UEFI not found.
[    0.000000] NUMA: No NUMA configuration found
[    0.000000] NUMA: Faking a node at [mem 0x0000000040000000-0x000000007fffffff]
[    0.000000] NUMA: NODE_DATA [mem 0x7fdeb3c0-0x7fdedfff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000040000000-0x000000007fffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000040000000-0x000000007fffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000040000000-0x000000007fffffff]
[    0.000000] cma: Reserved 32 MiB at 0x000000007cc00000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv0.2 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: Trusted OS migration not required
[    0.000000] percpu: Embedded 19 pages/cpu s37224 r8192 d32408 u77824
[    0.000000] Detected PIPT I-cache on CPU0
[    0.000000] CPU features: detected: Spectre-v2
[    0.000000] CPU features: detected: Spectre-v4
[    0.000000] CPU features: detected: Spectre-BHB
[    0.000000] CPU features: detected: ARM erratum 834220
[    0.000000] CPU features: detected: ARM erratum 832075
[    0.000000] CPU features: detected: ARM errata 1165522, 1319367, or 1530923
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Fallback order for Node 0: 0 
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 258048
[    0.000000] Policy zone: DMA
[    0.000000] Kernel command line: 
[    0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 964752K/1048576K available (11328K kernel code, 1516K rwdata, 4128K rodata, 12224K init, 450K bss, 51056K reserved, 32768K cma-reserved)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
[    0.000000] 	Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GICv2m: range[mem 0x08020000-0x08020fff], SPI[80:143]
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer(s) running at 62.50MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0x1ffffffffffffff max_cycles: 0x1cd42e208c, max_idle_ns: 881590405314 ns
[    0.000282] sched_clock: 57 bits at 63MHz, resolution 16ns, wraps every 4398046511096ns
[    0.018411] Console: colour dummy device 80x25
[    0.025293] printk: console [tty0] enabled
[    0.031492] Calibrating delay loop (skipped), value calculated using timer frequency.. 125.00 BogoMIPS (lpj=625000)
[    0.032067] pid_max: default: 32768 minimum: 301
[    0.043656] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.043937] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[    0.145731] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    0.171919] cblist_init_generic: Setting adjustable number of callback queues.
[    0.172117] cblist_init_generic: Setting shift to 1 and lim to 1.
[    0.177777] rcu: Hierarchical SRCU implementation.
[    0.178001] rcu: 	Max phase no-delay instances is 1000.
[    0.191344] EFI services will not be available.
[    0.198993] smp: Bringing up secondary CPUs ...
[    0.215049] Detected PIPT I-cache on CPU1
[    0.217272] cacheinfo: Unable to detect cache hierarchy for CPU 1
[    0.218586] CPU1: Booted secondary processor 0x0000000001 [0x411fd070]
[    0.224373] smp: Brought up 1 node, 2 CPUs
[    0.224558] SMP: Total of 2 processors activated.
[    0.224717] CPU features: detected: 32-bit EL0 Support
[    0.224798] CPU features: detected: 32-bit EL1 Support
[    0.224942] CPU features: detected: CRC32 instructions
[    0.227429] CPU features: emulated: Privileged Access Never (PAN) using TTBR0_EL1 switching
[    0.227889] CPU: All CPU(s) started at EL1
[    0.228188] alternatives: applying system-wide alternatives
[    0.267747] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.268321] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.272507] pinctrl core: initialized pinctrl subsystem
[    0.289114] DMI not present or invalid.
[    0.302401] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.322879] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[    0.325076] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.325805] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.334990] thermal_sys: Registered thermal governor 'step_wise'
[    0.335589] cpuidle: using governor ladder
[    0.336043] cpuidle: using governor menu
[    0.337355] ASID allocator initialised with 65536 entries
[    0.341514] Serial: AMBA PL011 UART driver
[    0.386879] 9000000.pl011: ttyAMA0 at MMIO 0x9000000 (irq = 13, base_baud = 0) is a PL011 rev1
[    0.407178] printk: console [ttyAMA0] enabled
[    0.457238] cryptd: max_cpu_qlen set to 1000
[    0.465075] ACPI: Interpreter disabled.
[    0.468616] iommu: Default domain type: Passthrough 
[    0.471343] SCSI subsystem initialized
[    0.478905] usbcore: registered new interface driver usbfs
[    0.480760] usbcore: registered new interface driver hub
[    0.481678] usbcore: registered new device driver usb
[    0.511527] clocksource: Switched to clocksource arch_sys_counter
[    0.514906] pnp: PnP ACPI: disabled
[    0.536917] NET: Registered PF_INET protocol family
[    0.540715] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.554303] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[    0.554906] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.555324] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.555971] TCP bind hash table entries: 8192 (order: 6, 262144 bytes, linear)
[    0.556699] TCP: Hash tables configured (established 8192 bind 8192)
[    0.558663] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.559321] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[    0.562434] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.563605] PCI: CLS 0 bytes, default 64
[    0.567971] kvm [1]: HYP mode not available
[    0.574240] workingset: timestamp_bits=42 max_order=18 bucket_order=0
[    0.594377] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.594819] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.602936] 9p: Installing v9fs 9p2000 file system support
[    0.610148] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 250)
[    0.617804] atomic64_test: passed
[    0.652547] pl061_gpio 9030000.pl061: PL061 GPIO chip registered
[    0.662046] pci-host-generic 4010000000.pcie: host bridge /pcie@10000000 ranges:
[    0.664712] pci-host-generic 4010000000.pcie:       IO 0x003eff0000..0x003effffff -> 0x0000000000
[    0.666801] pci-host-generic 4010000000.pcie:      MEM 0x0010000000..0x003efeffff -> 0x0010000000
[    0.667756] pci-host-generic 4010000000.pcie:      MEM 0x8000000000..0xffffffffff -> 0x8000000000
[    0.670594] pci-host-generic 4010000000.pcie: Memory resource size exceeds max for 32 bits
[    0.672796] pci-host-generic 4010000000.pcie: ECAM at [mem 0x4010000000-0x401fffffff] for [bus 00-ff]
[    0.676123] pci-host-generic 4010000000.pcie: PCI host bridge to bus 0000:00
[    0.677399] pci_bus 0000:00: root bus resource [bus 00-ff]
[    0.678036] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
[    0.678685] pci_bus 0000:00: root bus resource [mem 0x10000000-0x3efeffff]
[    0.679301] pci_bus 0000:00: root bus resource [mem 0x8000000000-0xffffffffff]
[    0.684136] pci 0000:00:00.0: [1b36:0008] type 00 class 0x060000
[    0.692225] pci 0000:00:01.0: [1af4:1041] type 00 class 0x020000
[    0.692860] pci 0000:00:01.0: reg 0x14: [mem 0x00000000-0x00000fff]
[    0.693294] pci 0000:00:01.0: reg 0x20: [mem 0x00000000-0x00003fff 64bit pref]
[    0.693875] pci 0000:00:01.0: reg 0x30: [mem 0x00000000-0x0007ffff pref]
[    0.700038] pci 0000:00:01.0: BAR 6: assigned [mem 0x10000000-0x1007ffff pref]
[    0.700884] pci 0000:00:01.0: BAR 4: assigned [mem 0x8000000000-0x8000003fff 64bit pref]
[    0.701740] pci 0000:00:01.0: BAR 1: assigned [mem 0x10080000-0x10080fff]
[    0.745745] EINJ: ACPI disabled.
[    0.789929] virtio-pci 0000:00:01.0: enabling device (0000 -> 0002)
[    0.798925] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.813295] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    0.866308] loop: module loaded
[    0.869247] Loading iSCSI transport class v2.0-870.
[    1.011508] usbcore: registered new interface driver usb-storage
[    1.021605] rtc-pl031 9010000.pl031: registered as rtc0
[    1.022824] rtc-pl031 9010000.pl031: setting system clock to 2023-08-19T11:44:38 UTC (1692445478)
[    1.034652] sdhci: Secure Digital Host Controller Interface driver
[    1.035081] sdhci: Copyright(c) Pierre Ossman
[    1.036890] Synopsys Designware Multimedia Card Interface Driver
[    1.039247] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.048903] hid: raw HID events driver (C) Jiri Kosina
[    1.052163] usbcore: registered new interface driver usbhid
[    1.052598] usbhid: USB HID core driver
[    1.062473] NET: Registered PF_INET6 protocol family
[    1.087098] Segment Routing with IPv6
[    1.087646] In-situ OAM (IOAM) with IPv6
[    1.088642] NET: Registered PF_PACKET protocol family
[    1.089725] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    1.091346] 8021q: 802.1Q VLAN Support v1.8
[    1.092957] 9pnet: Installing 9P2000 support
[    1.151424] uart-pl011 9000000.pl011: no DMA platform data
[    1.204991] Freeing unused kernel memory: 12224K
[    1.253397] Run /init as init process
[    4.691632] init: Console is alive
[    4.808246] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    4.843837] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[    4.859719] init: - preinit -
[    8.713943] random: crng init done
[   10.057378] 8021q: adding VLAN 0 to HW filter on device eth0
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   13.304607] procd: - early -
[   14.464291] procd: - ubus -
[   14.690156] procd: - init -
Please press Enter to activate this console.
[   17.422026] urngd: v1.0.2 started.
[   17.707813] kmodloader: loading kernel modules from /etc/modules.d/*
[   18.014321] PPP generic driver version 2.4.2
[   18.025514] NET: Registered PF_PPPOX protocol family
[   18.072620] kmodloader: done loading kernel modules from /etc/modules.d/*
[   48.036358] 8021q: adding VLAN 0 to HW filter on device eth0
[   48.040165] br-lan: port 1(eth0) entered blocking state
[   48.040584] br-lan: port 1(eth0) entered disabled state
[   48.045006] device eth0 entered promiscuous mode
[   48.097230] br-lan: port 1(eth0) entered blocking state
[   48.097723] br-lan: port 1(eth0) entered forwarding state
[   49.071832] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready



BusyBox v1.36.1 (2023-08-18 21:45:16 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt SNAPSHOT, r23769-324673914d
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------

Код: Выделить всё

root@OpenWrt:/# ip a s
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br-lan state UP qlen 1000
    link/ether ba:ad:1d:ea:01:02 brd ff:ff:ff:ff:ff:ff
3: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether ba:ad:1d:ea:01:02 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global br-lan
       valid_lft forever preferred_lft forever
    inet6 fd83:2e14:76da::1/60 scope global noprefixroute
       valid_lft forever preferred_lft forever
    inet6 fe80::b8ad:1dff:feea:102/64 scope link
       valid_lft forever preferred_lft forever
И в это время уже на хосте появился новый интерйейс:

Код: Выделить всё

olej@R420:~$ ip a s
...
7: kvm0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 4e:eb:68:0c:cc:8e brd ff:ff:ff:ff:ff:ff
Не инициализированный :-(
И естественно:

Код: Выделить всё

olej@R420:~$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
From 192.168.1.14 icmp_seq=1 Destination Host Unreachable
From 192.168.1.14 icmp_seq=2 Destination Host Unreachable
From 192.168.1.14 icmp_seq=3 Destination Host Unreachable
From 192.168.1.14 icmp_seq=4 Destination Host Unreachable
From 192.168.1.14 icmp_seq=5 Destination Host Unreachable
From 192.168.1.14 icmp_seq=6 Destination Host Unreachable
^C
--- 192.168.1.1 ping statistics ---
8 packets transmitted, 0 received, +6 errors, 100% packet loss, time 7172ms
pipe 4
Через пень-колоду :oops: но пока так:

Код: Выделить всё

olej@R420:~$ sudo ifconfig kvm0 192.168.1.200 up
[sudo] пароль для olej:
olej@R420:~$ ip a s dev kvm0
7: kvm0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000
    link/ether 4e:eb:68:0c:cc:8e brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.200/24 brd 192.168.1.255 scope global kvm0
       valid_lft forever preferred_lft forever
    inet6 fe80::4ceb:68ff:fe0c:cc8e/64 scope link
       valid_lft forever preferred_lft forever

Код: Выделить всё

olej@R420:~$ route -n
Таблица маршутизации ядра протокола IP
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0         192.168.1.3     0.0.0.0         UG    100    0        0 eno1
0.0.0.0         192.168.1.3     0.0.0.0         UG    101    0        0 eno2
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 eno1
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 kvm0
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 eno1
192.168.1.0     0.0.0.0         255.255.255.0   U     101    0        0 eno2
И всё поехало:

Код: Выделить всё

olej@R420:~$ ping -c3 -Ikvm0 192.168.1.1
PING 192.168.1.1 (192.168.1.1) from 192.168.1.200 kvm0: 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=15.4 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=1.38 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=1.84 ms

--- 192.168.1.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 1.377/6.216/15.429/6.517 ms
И навстречу из VM:

Код: Выделить всё

root@OpenWrt:/# ping 192.168.1.200 -c3 -Ibr-lan
PING 192.168.1.200 (192.168.1.200): 56 data bytes
64 bytes from 192.168.1.200: seq=0 ttl=64 time=5.318 ms
64 bytes from 192.168.1.200: seq=1 ttl=64 time=3.034 ms
64 bytes from 192.168.1.200: seq=2 ttl=64 time=2.627 ms

--- 192.168.1.200 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 2.627/3.659/5.318 ms

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 15:44

Olej писал(а):
19 авг 2023, 15:41
И всё поехало:
Теперь я могу на этот ARM64 подключаться по SSH сколько влезет:

Код: Выделить всё

olej@R420:~$ ssh root@192.168.1.1
The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
ED25519 key fingerprint is SHA256:HNqrkormV7Hb9r1kt3nf3jS5mCBiJ9P6H5ijp9k4lBo.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.1' (ED25519) to the list of known hosts.


BusyBox v1.36.1 (2023-08-18 21:45:16 UTC) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 OpenWrt SNAPSHOT, r23769-324673914d
 -----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:~#

Код: Выделить всё

root@OpenWrt:~# uname -a
Linux OpenWrt 6.1.46 #0 SMP Fri Aug 18 21:45:16 2023 aarch64 GNU/Linux

Код: Выделить всё

root@OpenWrt:/# uci show network
network.loopback=interface
network.loopback.device='lo'
network.loopback.proto='static'
network.loopback.ipaddr='127.0.0.1'
network.loopback.netmask='255.0.0.0'
network.globals=globals
network.globals.ula_prefix='fd83:2e14:76da::/48'
network.@device[0]=device
network.@device[0].name='br-lan'
network.@device[0].type='bridge'
network.@device[0].ports='eth0'
network.lan=interface
network.lan.device='br-lan'
network.lan.proto='static'
network.lan.ipaddr='192.168.1.1'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

OpenWRT в QEMU

Непрочитанное сообщение Olej » 19 авг 2023, 15:49

Olej писал(а):
19 авг 2023, 15:44
Теперь я могу на этот ARM64 подключаться по SSH сколько влезет:
Но у него нет HDD для перманентных данных...

Код: Выделить всё

root@OpenWrt:/# halt
root@OpenWrt:/# [ 2035.227559] br-lan: port 1(eth0) entered disabled state
[ 2035.278509] device eth0 left promiscuous mode
[ 2035.279771] br-lan: port 1(eth0) entered disabled state
[ 2040.203479] reboot: Power down

Ответить

Вернуться в «Одноплатные компьютеры»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя