QEMU

Виртуальные машины и среды исполнения

Модератор: Olej

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

Re: QEMU

Непрочитанное сообщение Olej » 31 авг 2012, 17:43

Olej писал(а): Есть повод вернуться к QEMU ;-) - запуск Android-x86: viewtopic.php?f=5&t=1798&start=40#p4996
Вот теперь можно и Android-x86 4.0 позапущать ;-) ...
(где и что взять см. Android-x86)

1. Android-x86 с LiveCD без сетки и без собственных дисков - проверка пригодности образа .iso:

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

bash-4.2$ ls -l android-x86-4.0-RC2-eeepc.iso 
-rw-rw-r--. 1 olej olej 187695104 авг.  29 19:06 android-x86-4.0-RC2-eeepc.iso
bash-4.2$ qemu-kvm -m 500M  -cdrom android-x86-4.0-RC2-eeepc.iso -boot d 
...
QEMU_001.png
QEMU_001.png (40.59 КБ) 8506 просмотров
QEMU_002.png
(30.61 КБ) 6816 скачиваний
Всё бегает весьма быстро, даже на не очень новом ноутбуке...
Но без KVM (пробовал) всё в разы медленнее ... заунывно как "собачья песня" :-?

P.S. Напоминание!
Если ткнуть мышкой в GUI QEMU, QEMU захватывает мышь (можете пользоваться в QEMU-экране).
Куда неприятнее, если забыл как её (мышку) оттуда освободить назад!
QEMU освобождает мышку по Ctrl+Alt - это по умолчанию, можно ли перестроить? - не задавался целью, в VirtualBox клавишу освобождения захваченной мыши можно менять произвольно.

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

Re: QEMU

Непрочитанное сообщение Olej » 31 авг 2012, 18:45

Olej писал(а): 1. Android-x86 с LiveCD без сетки и без собственных дисков - проверка пригодности образа .iso:
2. Теперь тот же Android-x86 но

2.1. сделаем ему диск (образ диска):

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

bash-4.2$ DISK=`mktemp --tmpdir=$HOME`
bash-4.2$ echo $DISK
/home/olej/tmp.yKOhubmq6X
bash-4.2$ time dd if=/dev/zero of=$DISK bs=1024 count=1000000
1000000+0 записей считано
1000000+0 записей написано
 скопировано 1024000000 байт (1,0 GB), 32,9768 c, 31,1 MB/c

real	0m33.206s
user	0m0.416s
sys	0m8.565s
bash-4.2$ ls -l $DISK
-rw-------. 1 olej olej 1024000000 авг.  31 17:57 /home/olej/tmp.yKOhubmq6X
Вот, диск как диск, на 1Gb...

2.2. загрузим Android-x86 всё ещё с LiveCD, но инсталлируем его на этот диск:

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

bash-4.2$ qemu-kvm -m 500M -hda $DISK -cdrom android-x86-4.0-RC2-eeepc.iso -boot d
...
QEMU_010.png
QEMU_010.png (7.24 КБ) 8503 просмотра
QEMU_011.png
QEMU_011.png (9.72 КБ) 8503 просмотра
QEMU_012.png
QEMU_012.png (7.33 КБ) 8504 просмотра
QEMU_013.png
QEMU_013.png (7.61 КБ) 8505 просмотров
Из всех показанных действий вот это 4-е - самое важное, Android по умолчанию хочет установить /system read-only (Yes), а мы его отучаем от этого (No).

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

Re: QEMU

Непрочитанное сообщение Olej » 31 авг 2012, 18:49

Olej писал(а): 2. Теперь тот же Android-x86 но
3. Теперь можно и LiveCD у него забрать и попробовать загрузить то, что установили (с образа диска):

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

bash-4.2$ qemu-kvm -m 500M -hda $DISK -boot c
...
QEMU_021.png
QEMU_021.png (15.39 КБ) 8505 просмотров
Как легко видеть, это совсем другая картинка (GRUB).
QEMU_022.png
(208.34 КБ) 6818 скачиваний
И вот уже сам Android 4.0

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

Re: QEMU

Непрочитанное сообщение Olej » 01 сен 2012, 23:05

Olej писал(а): 1. Android-x86 с LiveCD без сетки и без собственных дисков - проверка пригодности образа .iso:
4. Попытался к тому же образу пристроить виртуальный сетевой адаптер, чтобы связать VM с хостом.
Проблема здесь только в том, чтобы выбрать ту модель сетевого адаптера (эмулятор), которую поймёт и распознает ОС в VM (в данном случае Android-x86 4.0).

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

bash-4.2$ sudo qemu-kvm -m 500M -hda $DISK -boot c -net nic,vlan=0 -net tap,vlan=0
-------------- tap up -------------
-------------- tap down -------------
sudo - это для старта tap интерфейса на хосте:

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

bash-4.2$ ifconfig tap0
tap0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.3.6  netmask 255.255.255.0  broadcast 192.168.3.255
        inet6 fe80::54cd:d6ff:fe9c:2a22  prefixlen 64  scopeid 0x20<link>
        ether 56:cd:d6:9c:2a:22  txqueuelen 500  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 23  bytes 4674 (4.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Этот интерфейс определён в файлах, которые нужно создать вручную:

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

[root@notebook etc]# ls -l /etc/qem*
-rwxr-xr-x. 1 root root   77 июля  28 17:12 /etc/qemu-ifdown
-rwxr-xr-x. 1 root root  119 июля  28 17:12 /etc/qemu-ifup
С содержимым:

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

[root@notebook etc]# cat /etc/qemu-ifup.
#!/bin/sh
echo -------------- tap up -------------
/sbin/ifconfig $1 192.168.3.6 up

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

[root@notebook etc]# cat /etc/qemu-ifdown
#!/bin/sh
echo -------------- tap down -------------
/sbin/ifconfig $1 down
Всё замечательно срабатывает ... но :-o - Android-x86 (эта сборка!) не понимает такого сетевого адаптера.
Все известные реализации QEMU смотрим так:

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

[root@notebook etc]# qemu-kvm -net nic,model=?
qemu: Supported NIC models: ne2k_pci,i82551,i82557b,i82559er,rtl8139,e1000,pcnet,virtio
Я перепробовал все эти модели сетевых адаптеров, по типу:

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

bash-4.2$ sudo qemu-kvm -m 500M -cdrom android-x86-4.0-RC2-eeepc.iso -boot d -net nic,vlan=0,model=rtl8139 -net tap,vlan=0
-------------- tap up -------------
-------------- tap down -------------
Ни с один из них Android-x86 не захотел поддержать ядром, хотя по команде lspci он видит устройство и устройство это соответствует model=...

P.S. Детальней о опциях см. обширнейший man:

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

bash-4.2$ man qemu
...
Хоть нет теперь такой команды qemu, но есть такой man qemu ;-)

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

Re: QEMU

Непрочитанное сообщение Olej » 04 окт 2012, 12:36

Установка Linux на ARM архитектуру.
Тема переплыла вот отсюда: viewtopic.php?f=5&t=1862#p5269
Olej писал(а): 1.4. Fedora 17 (в более ранних релизах не было) - Релиз Fedora 17 для платформ на базе архитектуры ARM
...
Такое впечатление, что это самым обстоятельным образом (в сравнении с другими дистрибутивами) выполняемая работа (хотя и отстали с её началом).
Вот здесь лежат образы для разных вариантов:
- http://ftp.heanet.ie/mirrors/fedora-sec ... 17/Images/
- http://fedoraproject.org/wiki/Architect ... dora_17_GA

1.5. Fedora 18 (ещё не вышедшая официально), сборки и инструкции здесь: http://scotland.proximity.on.ca/arm-nightlies/
Но здесь всё совсем не так просто.
2 полных дня я уже убил на эти упражнения :evil:

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

Re: QEMU

Непрочитанное сообщение Olej » 04 окт 2012, 12:52

Olej писал(а): Но здесь всё совсем не так просто.
2 полных дня я уже убил на эти упражнения :evil:
http://ftp.heanet.ie/mirrors/fedora-sec ... mages/arm/

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

 Fedora-17-arm-Images-CHECKSUM                     19-Jun-2012 04:38  1.9K  
 Fedora-17-arm-beagle-mmcblk0-kernel.tar.xz        19-Jun-2012 04:14   18M  
 Fedora-17-arm-beagle-mmcblk0.img.xz               19-Jun-2012 04:14  122M  
 Fedora-17-arm-console.tar.xz                      19-Jun-2012 04:13   69M  
 Fedora-17-arm-kirkwood-mmcblk0-kernel.tar.xz      19-Jun-2012 04:14   27M  
 Fedora-17-arm-kirkwood-mmcblk0.img.xz             19-Jun-2012 04:13  139M  
 Fedora-17-arm-vexpress-mmcblk0-kernel.tar.xz      19-Jun-2012 04:14   19M  
 Fedora-17-arm-vexpress-mmcblk0.img.xz             19-Jun-2012 04:14  118M  
 Fedora-17-arm-vexpress-xfce-mmcblk0-kernel.tar.xz 19-Jun-2012 04:14   28M  
 Fedora-17-arm-vexpress-xfce-mmcblk0.img.xz        19-Jun-2012 04:14  531M  
 Fedora-17-arm-xfce.tar.xz                         19-Jun-2012 04:14  466M  
Здесь видно и релиз Fedora-17 и дату создания.

Для QEMU нас будут интересовать сборки *-arm-vexpress-*, которых 4:
- это для консольного запуска:

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

 Fedora-17-arm-vexpress-mmcblk0-kernel.tar.xz      19-Jun-2012 04:14   19M  
 Fedora-17-arm-vexpress-mmcblk0.img.xz             19-Jun-2012 04:14  118M  
- и это для запуска с X11 GUI:

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

 Fedora-17-arm-vexpress-xfce-mmcblk0-kernel.tar.xz 19-Jun-2012 04:14   28M  
 Fedora-17-arm-vexpress-xfce-mmcblk0.img.xz        19-Jun-2012 04:14  531M  
Внятных объяснений на ресурсах Fedora никаких (но на Debian + Ubuntu состояние дел с ARM ещё куда хуже), поэтому до всего пришлось доходить руками:

1. Начиная с того, что - возвращаемся в самое начало разговора:
Olej писал(а):Сам консольный QEMU используют не очень часто, но:
- часто используемый VirtualBox построен на коде QEMU;
...
- QEMU может выполнять VM для доброго десятка поцессорных платформ (ARM, MIPS, PPC, ...).
Это вот как-раз тот самый случай...
Все остальные потребности, для x86, в том числе когда это и Android, могут (и лучше!) быть реализованы и в VirtualBox.
Но вот здесь нужно работать именно с исходным консольным QEMU.

2. Все предыдущие запуски-установки (и не один год) делались как-то так:
Olej писал(а): 2.2. загрузим Android-x86 всё ещё с LiveCD, но инсталлируем его на этот диск:

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

bash-4.2$ qemu-kvm -m 500M -hda $DISK -cdrom android-x86-4.0-RC2-eeepc.iso -boot d
...
Поэтому 1-й большой неожиданностью для меня стало то, что запуск по типу - не проходит:

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

bash-4.2$ qemu-system-arm -hda ... -cdrom ... -boot ...
...
QEMU грязно ругается на ... синтаксис.
Только напоровшись на это становится понятно:
- qemu-kvm имеет встроенный BIOS, который и делает загрузку с HDD образа;
- в ARM нет такого механизма загрузки, хдесь будут использоваться (в железной реализации) варианты загрузки EFI/UEFI ...
- а в QEMU это можно сделать указав непосредственно файлы загрузки Linux (это то, что в документации QEMU названо прямой загрузкой Linux, и допускается только для гостевых OS Linux).

3. Именно поэтому даётся два файла для каждой сборки:
- *-kernel.tar.xz - это архив файлов начальной загрузки для хостовой машины;
- *.img.xz - это архив образа SD-карты для гостевой машины;
(в принципе, все файлы - их 2: ядро + initrd - из *-kernel.tar.xz могут быть скопированы и из *.img.xz, но для этого образ должен быть смонтирован или записан на SD и т.п - с этим надо повозиться).

4. Кроме того, qemu-system-arm потребует указать в ключе -machine точный тип версии ARM для которого делалась сборка, например:

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

-machine vexpress-a9
Набор архитектур, процессоров и их точные записи (здесь есть где разгуляться! ;-) ), которые знает установленная версия qemu-system-arm см. так:

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

bash-4.2$ qemu-system-arm -cpu ?
Available CPUs:
  arm926
  arm946
  arm1026
  arm1136
  arm1136-r2
  arm1176
  arm11mpcore
  cortex-m3
  cortex-a8
  cortex-a9
  ti925t
  pxa250
  sa1100
  sa1110
  pxa255
  pxa260
  pxa261
  pxa262
  pxa270
  pxa270-a0
  pxa270-a1
  pxa270-b0
  pxa270-b1
  pxa270-c0
  pxa270-c5
  any

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

bash-4.2$ qemu-system-arm -M ?
Supported machines are:
collie     Collie PDA (SA-1110)
connex     Gumstix Connex (PXA255)
verdex     Gumstix Verdex (PXA270)
integratorcp ARM Integrator/CP (ARM926EJ-S) (default)
mainstone  Mainstone II (PXA27x)
musicpal   Marvell 88w8618 / MusicPal (ARM926EJ-S)
n800       Nokia N800 tablet aka. RX-34 (OMAP2420)
n810       Nokia N810 tablet aka. RX-44 (OMAP2420)
sx1        Siemens SX1 (OMAP310) V2
sx1-v1     Siemens SX1 (OMAP310) V1
cheetah    Palm Tungsten|E aka. Cheetah PDA (OMAP310)
realview-eb ARM RealView Emulation Baseboard (ARM926EJ-S)
realview-eb-mpcore ARM RealView Emulation Baseboard (ARM11MPCore)
realview-pb-a8 ARM RealView Platform Baseboard for Cortex-A8
realview-pbx-a9 ARM RealView Platform Baseboard Explore for Cortex-A9
akita      Akita PDA (PXA270)
spitz      Spitz PDA (PXA270)
borzoi     Borzoi PDA (PXA270)
terrier    Terrier PDA (PXA270)
lm3s811evb Stellaris LM3S811EVB
lm3s6965evb Stellaris LM3S6965EVB
syborg     Syborg (Symbian Virtual Platform)
tosa       Tosa PDA (PXA255)
versatilepb ARM Versatile/PB (ARM926EJ-S)
versatileab ARM Versatile/AB (ARM926EJ-S)
vexpress-a9 ARM Versatile Express for Cortex-A9
z2         Zipit Z2 (PXA27x)
Если модель указана не та - виртуальная машина просто тупо молча подвиснет.
Это 2-я неожиданность с этой задачей: "угадай процессор" ;-)

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

Re: QEMU

Непрочитанное сообщение Olej » 04 окт 2012, 13:56

Начинаем с консольного варианта...

5. Распаковываем архивы - дело это не быстрое (это показано на совсем не медленном процессоре):

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

bash-4.2$ time xzcat Fedora-17-arm-vexpress-mmcblk0.img.xz > Fedora-17-arm-vexpress-mmcblk0.img
real	1m1.968s
user	0m31.347s
sys	0m2.452s

bash-4.2$ time xzcat Fedora-17-arm-vexpress-mmcblk0-kernel.tar.xz > Fedora-17-arm-vexpress-mmcblk0-kernel.tar
real	0m3.202s
user	0m2.817s
sys	0m0.190s
6. Восстанавливаю файлы загрузки:

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

bash-4.2$ tar -xf Fedora-17-arm-vexpress-mmcblk0-kernel.tar 
bash-4.2$ ls -l arm-vexpress-mmcblk0 
итого 12
dr-xr-xr-x. 3 olej olej 4096 июня  18 08:20 boot
drwxrwxr-x+ 3 olej olej 4096 окт.   4 13:41 lib
7. Поскольку это эксперименты, и мне нужно по-быстренькому, и чтобы пути к файлам не выписывать ;-) :

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

bash-4.2$ chmod a+w arm-vexpress-mmcblk0/boot
bash-4.2$ mv Fedora-17-arm-vexpress-mmcblk0.img arm-vexpress-mmcblk0/boot
bash-4.2$ cd arm-vexpress-mmcblk0/boot
bash-4.2$ ls 
boot-vexpress	 config-3.4.2-3.fc17.armv5tel	     initramfs-3.4.2-3.fc17.armv5tel.img  uboot
boot-vexpress+x  Fedora-17-arm-vexpress-mmcblk0.img  System.map-3.4.2-3.fc17.armv5tel	  vmlinuz-3.4.2-3.fc17.armv5tel
Из всего этого добра (как и здоровенный каталог arm-vexpress-mmcblk0/lib) мне нужно всего 3 файл:
vmlinuz-3.4.2-3.fc17.armv5tel , initramfs-3.4.2-3.fc17.armv5tel.img, Fedora-17-arm-vexpress-mmcblk0.img
+ ещё 2 полезных коротких скриптов запуска: boot-vexpress , boot-vexpress+x

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

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

Re: QEMU

Непрочитанное сообщение Olej » 04 окт 2012, 14:06

8. Всё, можно запускать Linux на ARM:

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

bash-4.2$ ./boot-vexpress vmlinuz-3.4.2-3.fc17.armv5tel initramfs-3.4.2-3.fc17.armv5tel.img Fedora-17-arm-vexpress-mmcblk0.img 
...
Это (boot-vexpress) скрипт, главное (и единственное) содержательное действие которого выглядит так:

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

  qemu-system-arm -machine vexpress-a9 -m 1024 -nographic -net nic -net user \
    -append "console=ttyAMA0,115200n8 rw root=/dev/mmcblk0p2 rootwait physmap.enabled=0" \
    -kernel "$KERN" \
    -initrd "$RAMFS" \
    -sd "$IMAGE"


P.S. привожу полный протокол загрузки до login запуска сервисов, поскольку он хоть и огромный, но страшно любопытный:

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

bash-4.2$ ./boot-vexpress vmlinuz-3.4.2-3.fc17.armv5tel initramfs-3.4.2-3.fc17.armv5tel.img Fedora-17-arm-vexpress-mmcblk0.img 
pulseaudio: set_sink_input_volume() failed
pulseaudio: Reason: Invalid argument
pulseaudio: set_sink_input_mute() failed
pulseaudio: Reason: Invalid argument
[    0.000000] Booting Linux on physical CPU 0
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Linux version 3.4.2-3.fc17.armv5tel (mockbuild@hsv-trimslice-8-v5tel.farm.hsv.redhat.com) (gcc version 4.7.0 20120507 (Red Hat 4.7.0-5) (GCC) ) #1 SMP Tue Jun 12 14:26:48 EDT 2012
[    0.000000] CPU: ARMv7 Processor [410fc090] revision 0 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: ARM-Versatile Express
[    0.000000] Memory policy: ECC disabled, Data cache writealloc
[    0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms
[    0.000000] PERCPU: Embedded 8 pages/cpu @c1c7f000 s11456 r8192 d13120 u32768
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 260096
[    0.000000] Kernel command line: console=ttyAMA0,115200n8 rw root=/dev/mmcblk0p2 rootwait physmap.enabled=0
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] allocated 2097152 bytes of page_cgroup
[    0.000000] please try 'cgroup_disable=memory' option if you don't want memory cgroups
[    0.000000] Memory: 1024MB = 1024MB total
[    0.000000] Memory: 1022308k/1022308k available, 26268k reserved, 270336K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xf0000000 - 0xff000000   ( 240 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xef800000   ( 760 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc05d4800   (5938 kB)
[    0.000000]       .init : 0xc05d5000 - 0xc0622cc0   ( 312 kB)
[    0.000000]       .data : 0xc0624000 - 0xc0677c68   ( 336 kB)
[    0.000000]        .bss : 0xc0677c8c - 0xc0757f14   ( 897 kB)
[    0.000000] SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS:256
[    0.000000] Console: colour dummy device 80x30
[    0.674010] Calibrating delay loop... 148.27 BogoMIPS (lpj=741376)
[    0.909607] pid_max: default: 32768 minimum: 301
[    0.911646] Security Framework initialized
[    0.916495] SELinux:  Initializing.
[    0.922220] Mount-cache hash table entries: 512
[    0.946555] Initializing cgroup subsys cpuacct
[    0.946710] Initializing cgroup subsys memory
[    0.947585] Initializing cgroup subsys devices
[    0.947797] Initializing cgroup subsys freezer
[    0.947915] Initializing cgroup subsys net_cls
[    0.948044] Initializing cgroup subsys blkio
[    0.948218] Initializing cgroup subsys perf_event
[    0.949823] CPU: Testing write buffer coherency: ok
[    0.952380] ftrace: allocating 17696 entries in 35 pages
[    1.115977] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    1.116466] hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 1 counters available
[    1.117700] Setting up static identity map for 0x6043eb68 - 0x6043ebc0
[    1.135387] Brought up 1 CPUs
[    1.135572] SMP: Total of 1 processors activated (148.27 BogoMIPS).
[    1.157345] devtmpfs: initialized
[    1.180865] atomic64 test passed
[    1.183636] NET: Registered protocol family 16
[    1.201644] L2x0 series cache controller enabled
[    1.201782] l2x0: 8 ways, CACHE_ID 0x00000000, AUX_CTRL 0x00400000, Cache size: 65536 B
[    1.203337] hw-breakpoint: debug architecture 0x0 unsupported.
[    1.206041] Serial: AMBA PL011 UART driver
[    1.210453] mb:uart0: ttyAMA0 at MMIO 0x10009000 (irq = 37) is a PL011 rev1
[    1.253157] console [ttyAMA0] enabled
[    1.258764] mb:uart1: ttyAMA1 at MMIO 0x1000a000 (irq = 38) is a PL011 rev1
[    1.261777] mb:uart2: ttyAMA2 at MMIO 0x1000b000 (irq = 39) is a PL011 rev1
[    1.263875] mb:uart3: ttyAMA3 at MMIO 0x1000c000 (irq = 40) is a PL011 rev1
[    1.295559] bio: create slab <bio-0> at 0
[    1.303773] SCSI subsystem initialized
[    1.308213] usbcore: registered new interface driver usbfs
[    1.310115] usbcore: registered new interface driver hub
[    1.312846] usbcore: registered new device driver usb
[    1.330256] NetLabel: Initializing
[    1.331343] NetLabel:  domain hash size = 128
[    1.332640] NetLabel:  protocols = UNLABELED CIPSOv4
[    1.335895] NetLabel:  unlabeled traffic allowed by default
[    1.338692] Switching to clocksource v2m-timer1
[    1.518128] NET: Registered protocol family 2
[    1.523452] IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
[    1.534984] TCP established hash table entries: 131072 (order: 8, 1048576 bytes)
[    1.547094] TCP bind hash table entries: 65536 (order: 7, 524288 bytes)
[    1.554453] TCP: Hash tables configured (established 131072 bind 65536)
[    1.556606] TCP: reno registered
[    1.557961] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    1.560009] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    1.566544] NET: Registered protocol family 1
[    1.576103] Unpacking initramfs...
[    5.304179] Freeing initrd memory: 7644K
[    5.313105] audit: initializing netlink socket (disabled)
[    5.315137] type=2000 audit(4.570:1): initialized
[    5.730340] highmem bounce pool size: 64 pages
[    5.771102] VFS: Disk quotas dquot_6.5.2
[    5.774041] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    5.790527] msgmni has been set to 1483
[    5.824055] alg: No test for stdrng (krng)
[    5.824890] NET: Registered protocol family 38
[    5.827030] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
[    5.829418] io scheduler noop registered
[    5.830082] io scheduler deadline registered
[    5.831009] io scheduler cfq registered (default)
[    5.840165] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    5.846230] uart-pl011 mb:uart0: no DMA platform data
[    5.847079] uart-pl011 mb:uart1: no DMA platform data
[    5.847854] uart-pl011 mb:uart2: no DMA platform data
[    5.848588] uart-pl011 mb:uart3: no DMA platform data
[    5.886155] loop: module loaded
[    5.890306] Fixed MDIO Bus: probed
[    5.894492] usbcore: registered new interface driver usbserial
[    5.895575] usbcore: registered new interface driver usbserial_generic
[    5.897169] USB Serial support registered for generic
[    5.897980] usbserial: USB Serial Driver core
[    5.900111] mousedev: PS/2 mouse device common for all mice
[    5.913316] rtc-pl031 mb:rtc: rtc core: registered pl031 as rtc0
[    5.918034] device-mapper: uevent: version 1.0.3
[    5.921051] device-mapper: ioctl: 4.22.0-ioctl (2011-10-19) initialised: dm-devel@redhat.com
[    5.925628] cpuidle: using governor ladder
[    5.926591] cpuidle: using governor menu
[    5.931054] usbcore: registered new interface driver usbhid
[    5.932464] usbhid: USB HID core driver
[    5.936575] ip_tables: (C) 2000-2006 Netfilter Core Team
[    5.940223] TCP: cubic registered
[    5.940769] Initializing XFRM netlink socket
[    5.945355] NET: Registered protocol family 10
[    5.957589] Mobile IPv6
[    5.958270] NET: Registered protocol family 17
[    5.959190] Registering the dns_resolver key type
[    5.963241] VFP support v0.3: implementor 41 architecture 3 part 40 variant 0 rev 0
[    5.980312] Registering SWP/SWPB emulation handler
[    6.017640] registered taskstats version 1
[    6.034151] rtc-pl031 mb:rtc: setting system clock to 2012-10-04 10:55:37 UTC (1349348137)
[    6.035838] Initializing network drop monitor service
[    6.058033] Freeing init memory: 308K
[    9.636569] dracut: dracut-018-53.git20120605.fc17
[   10.958828] udevd[80]: starting version 182
[   13.552900] mmci-pl18x mb:mmci: mmc0: PL181 manf 41 rev0 at 0x10005000 irq 41,42 (pio)
[   13.554175] mmci-pl18x mb:mmci: no DMA platform data
[   13.627240] mmc0: host does not support reading read-only switch. assuming write-enable.
[   13.629099] mmc0: new SDHC card at address 4567
[   15.493603] mmcblk0: mmc0:4567 QEMU! 1.75 GiB 
[   15.545674]  mmcblk0: p1 p2
[   18.225031] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[   19.650523] dracut: Checking ext4: /dev/mmcblk0p2
[   19.660711] dracut: issuing e2fsck -a  /dev/mmcblk0p2
[   20.336524] dracut: rootfs: clean, 18551/82720 files, 136742/330527 blocks
[   20.390238] dracut: Remounting /dev/mmcblk0p2 with -o rw
[   21.167758] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[   21.508443] dracut: Mounted root filesystem /dev/mmcblk0p2
[   22.991314] dracut: Switching root
[   28.758985] type=1404 audit(1349348160.209:2): enforcing=1 old_enforcing=0 auid=4294967295 ses=4294967295
[   47.289530] SELinux:  Permission ptrace_child in class process not defined in policy.
[   47.293445] SELinux: the above unknown classes and permissions will be allowed
[   47.380312] type=1403 audit(1349348178.830:3): policy loaded auid=4294967295 ses=4294967295

Welcome to Fedora 17 (Beefy Miracle)!

Started Replay Read-Ahead Data                                         [  OK  ]
Starting Collect Read-Ahead Data...                                            
Starting Media Directory...                                                    
Starting Runtime Directory...                                                  
Starting udev Coldplug all Devices...                                          
Started Lock Directory                                                 [  OK  ]
Starting Debug File System...                                                  
Starting udev Kernel Device Manager...                                         
Starting Journal Service...                                                    
Started Journal Service                                                [  OK  ]
Starting POSIX Message Queue File System...                                    
Starting Security File System...                                               
Started Huge Pages File System                                         [  OK  ]
Started Collect Read-Ahead Data                                        [  OK  ]
Started Load legacy module configuration                               [  OK  ]
Started File System Check on Root Device                               [  OK  ]
Starting Remount Root FS...                                                    
Starting Setup Virtual Console...                                              
Started Set Up Additional Binary Formats                               [  OK  ]
Starting Apply Kernel Variables...                                             
Started Load Kernel Modules                                            [  OK  ]
Starting Configuration File System...                                          
Started FUSE Control File System                                       [  OK  ]
Starting Remount API VFS...                                                    
Started Security File System                                           [  OK  ]
Started POSIX Message Queue File System                                [  OK  ]
Started Configuration File System                                      [  OK  ]
Started Debug File System                                              [  OK  ]
Started Runtime Directory                                              [  OK  ]
Started Media Directory                                                [  OK  ]
Started Apply Kernel Variables                                         [  OK  ]
Started Remount API VFS                                                [  OK  ]
Started udev Kernel Device Manager                                     [  OK  [   81.335547] udevd[166]: starting version 182
]
Started udev Coldplug all Devices                                      [  OK  ]
Starting udev Wait for Complete Device Initialization...                       
Started Setup Virtual Console                                          [  OK  ]
[  100.889921] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
Started Remount Root FS                                                [  OK  ]
Started Import network configuration from initramfs                    [  OK  ]
Starting Configure read-only root support...                                   
Started Configure read-only root support                               [  OK  ]
[  103.958188] input: AT Raw Set 2 keyboard as /devices/mb:kmi0/serio0/input/input0
[  104.380404] clcd-pl11x ct:clcd: PL111 rev2 at 0x10020000
[  104.697435] input: ImExPS/2 Generic Explorer Mouse as /devices/mb:kmi1/serio1/input/input1
[  104.772812] clcd-pl11x ct:clcd: CT-CA9X4 hardware, XVGA display
[  104.880565] v2m_cfg_write: writing 03c8eee0 to 00110001
[  104.952762] v2m_cfg_write: writing 00000000 to 00710000
[  104.952849] v2m_cfg_write: writing 00000002 to 00b10000
[  104.953847] Console: switching to mono frame buffer device 128x48
[  108.009514] smsc911x: Driver version 2008-10-21
[  108.654585] physmap: Unknown parameter `enabled'
[  109.390905] smsc911x-mdio: probed
[  109.396702] smsc911x smsc911x: eth0: attached PHY driver [SMSC LAN911x Internal PHY] (mii_bus:phy_addr=smsc911x-fffffff:01, irq=-1)
[  109.400094] smsc911x smsc911x: eth0: MAC Address: 52:54:00:12:34:56
[  109.847795] aaci-pl041 mb:aaci: ARM AC'97 Interface PL041 rev0 at 0x10004000, irq 43
[  109.850344] aaci-pl041 mb:aaci: FIFO 512 entries
Started udev Wait for Complete Device Initialization                   [  OK  ]
Starting Wait for storage scan...                                              
Started Wait for storage scan                                          [  OK  ]
Starting Initialize storage subsystems (RAID, LVM, etc.)...                    
Started Initialize storage subsystems (RAID, LVM, etc.)                [  OK  ]
Starting Initialize storage subsystems (RAID, LVM, etc.)...                    
Started Initialize storage subsystems (RAID, LVM, etc.)                [  OK  ]
Started Reconfigure the system on administrator request                [  OK  ]
Started Relabel all filesystems, if necessary                          [  OK  ]
Started Mark the need to relabel after reboot                          [  OK  ]
Starting Tell Plymouth To Write Out Runtime Data...                            
Starting Load Random Seed...                                                   
Starting Recreate Volatile Files and Directories...                            
Started Tell Plymouth To Write Out Runtime Data                        [  OK  ]
Started Load Random Seed                                               [  OK  ]
Started Recreate Volatile Files and Directories                        [  OK  ]
Starting Command Scheduler...                                                  
Started Command Scheduler                                              [  OK  ]
Starting Network Manager...                                                    
Starting Root Filesystem Auto-Resizer...                                       
Starting Wait for Plymouth Boot Screen to Quit...                              
Starting Login Service...                                                      
Starting System Logging Service...                                             
Starting Permit User Sessions...                                               
Starting Terminate Plymouth Boot Screen...                                     
Starting LSB: Bring up/down networking...                                      
Starting D-Bus System Message Bus...                                           
Started Wait for Plymouth Boot Screen to Quit                          [  OK  ]
Started Terminate Plymouth Boot Screen                                 [  OK  ]
Started Permit User Sessions                                           [  OK  ]
Starting Getty on tty1...                                                      
Started Getty on tty1                                                  [  OK  ]
Starting Serial Getty on ttyAMA0...                                            
Started Serial Getty on ttyAMA0                                        [  OK  ]
Started D-Bus System Message Bus                                       [  OK  ]

Stopped systemd-kmsg-syslogd.service                                   [  OK  ]
Started System Logging Service                                         [  OK  ]
Fedora release 17 (Beefy Miracle)
Kernel 3.4.2-3.fc17.armv5tel on an armv7l (ttyAMA0)

Root password is 'fedoraarm'
fedora-arm login: 

Started Root Filesystem Auto-Resizer                                   [  OK  ]
network[268]: Bringing up loopback interface:  [  OK  ]
Failed to start Login Service                                          [FAILED]
See 'systemctl status systemd-logind.service' for details.                     
[  220.214628] smsc911x smsc911x: eth0: SMSC911x/921x identified at 0xf0540000, IRQ: 47
Failed to start Network Manager                                        [FAILED]
See 'systemctl status NetworkManager.service' for details.                     
Dependency failed. Aborted start of Network Manager Wait Online        [ ABORT]
network[268]: Bringing up interface eth0:
[  228.598864] smsc911x smsc911x: eth0: SMSC911x/921x identified at 0xf0540000, IRQ: 47
[  228.903614] ADDRCONF(NETDEV_UP): eth0: link is not ready
[  229.367351] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
network[268]: Determining IP information for eth0... done.
network[268]: [  OK  ]
Started LSB: Bring up/down networking                                  [  OK  ]
Started Load static arp entries                                        [  OK  ]
Starting OpenSSH server daemon...                                              
Starting Set time via NTP...                                                   
Starting RPC bind service...                                                   
Started RPC bind service                                               [  OK  ]
Starting NFS file locking service....                                          
[  270.108048] RPC: Registered named UNIX socket transport module.
[  270.111539] RPC: Registered udp transport module.
[  270.113290] RPC: Registered tcp transport module.
[  270.114028] RPC: Registered tcp NFSv4.1 backchannel transport module.
Started Set time via NTP                                               [  OK  ]
Starting Network Time Service...                                               
Started Network Time Service                                           [  OK  ]
Started NFS file locking service.                                      [  OK  ]
Failed to start OpenSSH server daemon                                  [FAILED]
See 'systemctl status sshd.service' for details.                               
Всё это происходит изрядно не быстро, но происходит!

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

Re: QEMU

Непрочитанное сообщение Olej » 04 окт 2012, 14:49

9. Теперь можно поупражняться в новой системе:

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

Root password is 'fedoraarm'
fedora-arm login: root
Password: 
[root@fedora-arm ~]# uname -a
Linux fedora-arm 3.4.2-3.fc17.armv5tel #1 SMP Tue Jun 12 14:26:48 EDT 2012 armv7l armv7l armv7l GNU/Linux
[root@fedora-arm ~]# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fe80::5054:ff:fe12:3456  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:12:34:56  txqueuelen 1000  (Ethernet)
        RX packets 102  bytes 12120 (11.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 114  bytes 9822 (9.5 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 47  

[root@fedora-arm ~]# ping rus-linux.net
PING rus-linux.net (77.222.42.148) 56(84) bytes of data.

--- rus-linux.net ping statistics ---
21 packets transmitted, 0 received, 100% packet loss, time 20094ms

[root@fedora-arm ~]# nslookup rus-linux.net
Server:		10.0.2.3
Address:	10.0.2.3#53

Non-authoritative answer:
Name:	rus-linux.net
Address: 77.222.42.148
Некоторые вещи (относительно сети) совершенно не понятные:
- сеть QEMU подымается в режиме, который они в документации называют user-space

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

  qemu-system-arm -machine vexpress-a9 -m 1024 -nographic -net nic -net user \
  ...
- ping не проходит
- но! DNS на 10.0.2.3 (!) разрешает имя rus-linux.net
- кто такой 10.0.2.3? когда наш хост 10.0.2.15

P.S. нужно смотреть документацию QEMU, я много возился с её сетью, но только с kernel-space, через tap-интерфейс на хост-машине ... а user-space всегда пренебрегал ... , напрасно. ;-)

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

Re: QEMU

Непрочитанное сообщение Olej » 04 окт 2012, 15:26

Olej писал(а): - ping не проходит
- но! DNS на 10.0.2.3 (!) разрешает имя seocod.ru
- кто такой 10.0.2.3? когда наш хост 10.0.2.15
А этого я уже совсем не могу понять :-o :

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

[root@fedora-arm ~]# yum list all kernel*
fedora/metalink                                          | 3.9 kB     00:00     
fedora                                                   | 4.2 kB     00:00     
http://ftp.heanet.ie/mirrors/fedora-secondary/releases/17/Everything/arm/os/repodata/a26253e91a106717883b01f3258109346eec111926eb0f79890f2eb327759813-primary.sqlite.bz2: [Errno 14] HTTP Error 200 - OK : http://ftp.heanet.ie/mirrors/fedora-secondary/releases/17/Everything/arm/os/repodata/a26253e91a106717883b01f3258109346eec111926eb0f79890f2eb327759813-primary.sqlite.bz2
Trying other mirror.
fedora/primary_db                                        |  11 MB     00:57     
updates/metalink                                         | 3.7 kB     00:00     
updates                                                  | 4.3 kB     00:01     
updates/primary_db                                       | 4.0 MB     01:35     
Installed Packages
kernel.armv5tel                                  3.4.2-3.fc17            @fedora
Available Packages
kernel.armv5tel                                  3.5.3-1.fc17            updates
kernel-devel.armv5tel                            3.5.3-1.fc17            updates
kernel-doc.noarch                                3.5.3-1.fc17            updates
kernel-headers.armv5tel                          3.5.3-1.fc17            updates
kernel-highbank.armv7l                           3.5.3-1.fc17            updates
kernel-highbank-devel.armv7l                     3.5.3-1.fc17            updates
kernel-highbank-modules-extra.armv7l             3.5.3-1.fc17            updates
kernel-imx.armv7l                                3.5.3-1.fc17            updates
kernel-imx-devel.armv7l                          3.5.3-1.fc17            updates
kernel-imx-modules-extra.armv7l                  3.5.3-1.fc17            updates
kernel-kirkwood.armv5tel                         3.5.3-1.fc17            updates
kernel-kirkwood-devel.armv5tel                   3.5.3-1.fc17            updates
kernel-kirkwood-modules-extra.armv5tel           3.5.3-1.fc17            updates
kernel-modules-extra.armv5tel                    3.5.3-1.fc17            updates
kernel-omap.armv7l                               3.5.3-1.fc17            updates
kernel-omap-devel.armv7l                         3.5.3-1.fc17            updates
kernel-omap-modules-extra.armv7l                 3.5.3-1.fc17            updates
kernel-tegra.armv7l                              3.5.3-1.fc17            updates
kernel-tegra-devel.armv7l                        3.5.3-1.fc17            updates
kernel-tegra-modules-extra.armv7l                3.5.3-1.fc17            updates
kernel-tools.armv5tel                            3.5.3-1.fc17            updates
kernel-tools-devel.armv5tel                      3.5.3-1.fc17            updates
Но это приятная новость! ;-)
Ещё и ядро можно обновить...

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

[root@fedora-arm ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.2.2        0.0.0.0         UG    0      0        0 eth0
10.0.2.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0

Ответить

Вернуться в «Виртуализация»

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

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