金子邦彦研究室インストールchroot,lxc コンテナ,QEMU エミュレータUbuntu で Raspbian システムを起動(QEMU, qemu-rpi-kernel を使用)

Ubuntu で Raspbian システムを起動(QEMU, qemu-rpi-kernel を使用)

RaspbianLinux システム (Debian ベース).ARM プロセッサで動く.

Ubuntu が動くパソコンは ARM プロセッサでないプロセッサが搭載されているので,QEMU を用いてプロセッサのエミュレーションを行う.

このページでは,Ubuntu マシンで,Raspbian が動くまでの手順を図解で説明する.

目次

  1. Ubuntu で QEMU のインストール
  2. Qemu kernel for emulating Rpi on QEMU のダウンロード
  3. Raspbian のダウンロード
  4. Raspbian システムの起動
  5. Windows から Raspbian システムにログイン

謝辞

先人に感謝:

Ubuntu で QEMU のインストール

  1. 更新可能な全パッケージの更新
    sudo apt -y update
    sudo apt-get -yV upgrade
    
  2. qemu のインストール
    sudo apt -y update
    sudo apt -y install qemu qemu-kvm qemu-system-arm
    

    [image]

    ※ 「続行しますか? [Y/n]」と表示されたときは,「y」キーを押してから「Enter」キー

Qemu kernel for emulating Rpi on QEMU のダウンロード

  1. GitHub の dhruvvyas90/qemu-rpi-kernel のWebページを開く

    https://github.com/dhruvvyas90/qemu-rpi-kernel

  2. buster 系列の最新版をダウンロードしたい. まずは,buster 系列の最新版を選ぶ

    [image]
  3. ページが変わる.ダウンロードしたいので,「Download」をクリック.

    [image]
  4. ダウンロードが始まる.ダウンロードしたファイルは分かりやすいディレクトリに置く.

    [image]
  5. 次に,versatile-pb.dtbもダウンロードする

    前のWebページに戻り, 今度は,versatile-pb.dtbを選ぶ

    [image]
  6. ページが変わる.ダウンロードしたいので,「Download」をクリック.

    [image]
  7. ダウンロードが始まる.ダウンロードしたファイルは,先ほどのファイルと同じディレクトリに置く

    [image]

Raspbian のダウンロード

  1. 先ほどの Web ページ (https://github.com/dhruvvyas90/qemu-rpi-kernel) の指示を確認する.
  2. この記載に従い,次のWebページを開く

    国内のサイトからダウンロードすることにする。 http://ftp.jaist.ac.jp/pub/raspberrypi/raspbian/images

  3. 最新版のディレクトリの下の.zip ファイルを選ぶ

    [image]
  4. ダウンロードが始まる.ダウンロードが終わるまでしばらく待つ.ダウンロードしたファイルは分かりやすいディレクトリに置く.

    [image]
  5. ダウンロードした .zip ファイルを展開(解凍)する. 展開(解凍)すると,.img ファイルができる.
    unzip 2019-09-26-raspbian-buster.img
    

    [image]
  6. この .img ファイルは,先ほどダウンロードした kernel-qemu-x.x.xx-buster (Qemu kernel for emulating Rpi on QEMUのファイル)と同じディレクトリに置く.このディレクトリを覚えておく

    [image]

Raspbian システムの起動

  1. 端末を開き,先ほどファイルを置いたディレクトリに移動する.
  2. その後,ls コマンドで,確かにファイルがあることを確認する.

    [image]
  3. 端末で,次のコマンドを実行
    qemu-system-arm -M versatilepb \
    -cpu arm1176 \
    -m 256 \
    -hda 2019-09-26-raspbian-buster.img \
    -net nic \
    -net user,hostfwd=tcp::5022-:22 \
    -dtb versatile-pb.dtb \
    -kernel kernel-qemu-4.19.50-buster \
    -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" \
    -no-reboot
    

    [image]
  4. アプリ紹介

    ※ エミュレータなので遅いです.

  5. Raspbian システムの終了は,左上のメニューで「shutdown

Ubuntu から Raspbian システムにログイン

ここで行うこと

Rasbian システムで ssh サーバを稼働させる. その後,Windows から ssh サーバに接続してみる.

  1. Raspbian システムのメニューで「Terminal」を選ぶと端末が開く
  2. 端末で,次のコマンドを実行し,ssh サーバを開始する.あわせて IP アドレスを見ておく
    sudo service ssh start
    ifconfig -a
    
  3. 端末で,次のコマンドを実行

    ファイヤウオールを,ポート 10022/udp について解除する操作.

    sudo apt -y update
    sudo apt -y install -y ufw
    ufw allow 10022
    
  4. 端末から Raspeberry システムに ssh でログイン
    ssh -X -p 10022 pi@localhost
    

    ※ パスワード (password) は「raspberry

    ※ パスワードを入れるとき、画面には何も表示されない.これは正常動作.

    確認表示が出たら「Yes」でよい

  5. 「exit」で接続終了