Виртуальная машина ARM на Ubuntu

Я следую этому руководству по установке виртуальной среды ARM на Ubuntu.

  • Я установил пакеты linaro и qemu:

sudo add-apt-repository ppa:linaro-maintainers/tools
sudo apt-get install linaro-image-tools qemu-user-static qemu-system

  • Кросс-компиляторы:

sudo apt-get install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi

  • Загрузили выпуск и аппаратный пакет Linaro:

wget http://releases.linaro.org/platform/linaro-n/nano/alpha-3/linaro-natty-nano-tar-20110302-0.tar.gz
wget http://releases.linaro.org/platform/linaro-n/hwpacks/alpha-3/hwpack_linaro-vexpress_20110302-0_armel_supported.tar.gz

  • Создал образ диска VM:

linaro-media-create --image_file vexpress.img --dev vexpress \
--binary linaro-natty-nano-tar-20110302-0.tar.gz \
--hwpack hwpack_linaro-vexpress_20110302-0_armel_supported.tar.gz

Я не могу извлечь Ядро и initrd . В инструкциях говорится:

sudo mount -o loop,offset="$(file vexpress.img | awk 'BEGIN { RS=";"; } /partition 2/ { print $7*512; }')" \
-t auto vexpress.img /mnt/tmp

Но я получаю сообщение об ошибке:

mount: не удалось выполнить проверку параметров монтирования

В руководстве указано примечание:

Фактические имена файлов могут немного отличаться в вашей сборке.

Так кто-нибудь знает, как изменить эту последнюю строку, чтобы поместиться на Ubuntu?

  • Переустановить версии программного обеспечения, не найденные в репозиториях
  • Консольное сопоставление клавиш
  • Cron не печатает в syslog
  • Как добавить ярлык в панель задач Cinnamon
  • Что делает параметр «i8042.nomux = 1» во время загрузки Ubuntu?
  • Apache server 32 двоичные файлы против 64 двоичных файлов? какая разница
  • Использовать имя сервера вместо IP-адреса
  • Что делает процесс rtsbpp-poll?
  • One Solution collect form web for “Виртуальная машина ARM на Ubuntu”

     sudo mount -o loop,offset="$(file vexpress.img | awk 'BEGIN { RS=";"; } \ /partition 2/ { print $7*512; }')" \ -t auto vexpress.img /mnt/tmp 

    То, что делает вышеприведенная команда, на самом деле прост: он находит начальный сектор раздела 2 изображения vexpress.img , умножает его на 512 и принимает результат как смещение для монтирования в качестве устройства цикла.

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

    Вот альтернативный способ сделать это: (я беру пример необработанного изображения raspbian)

    1. Найти смещение:

       $ fdisk -lu 2016-09-23-raspbian-jessie-lite.img Disk 2016-09-23-raspbian-jessie-lite.img: 1.3 GiB, 1389363200 bytes, 2713600 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x5a7089a1 Device Boot Start End Sectors Size Id Type 2016-09-23-raspbian-jessie-lite.img1 8192 137215 129024 63M c W95 FAT32 (LBA) 2016-09-23-raspbian-jessie-lite.img2 137216 2713599 2576384 1.2G 83 Linux 

    137216 смещение второго раздела – 137216 . Как и ваш vexpress.img , раздел 2 представляет собой основной раздел, который нас интересует.

    1. Простая математика:

       $ perl -e "print 137216*512" 70254592 
    2. Установите его:

       sudo mount -o loop,offset=70254592 vexpress.img /mnt/tmp 
    Interesting Posts

    Как найти идентификатор пользователя после входа в систему как root, используя pmksh?

    scp, блокирующий мой сервер (в обоих направлениях)

    Название атрибута strip из набора результатов?

    Как запустить сценарии запуска на Amazon linux?

    Проблема с grep -o regex

    Сколько накладных расходов на хранение происходит вместе с cryptsetup и ext4?

    Как ядро ​​знает, какой файловый дескриптор записывать данные после fork () на параллельном сервере?

    Какие типы типов файлов делают цвета в терминале в разных дистрибутивах (по умолчанию)?

    Как монтировать / конвертировать исходное изображение CD-ROM (.img)

    Создание wifi-работы

    Ошибка записи /home/alessiomtx/.config/tint2/tint2rc: не каталог

    Запускать / останавливать пользовательский блок всякий раз, когда устройство монтируется / размонтируется

    X -config висит и не создает xorg.conf

    Fedora 25: настройки firewalld не вступят в силу

    Настройка `less` для отображения более длинных строк

    Linux и Unix - лучшая ОС в мире.