2017年12月18日月曜日

QEMU上でRaspbian Jessieを起動

QEMUのインストールの記事でQEMUをインストールしましたので、QEMU上でRaspbianを起動してみました
Raspbianを起動するには、下記2つのがいるが必要になります
  1. QEMU用のカーネル
  2. Rapbianのイメージファイル
QEMU用のカーネルは、Compiling ARM1176 for QEMU Raspberry Pi Emulation Kernelに作成手順が記載されています。これは難しいですよね。
そこで、GitHubで公開(Qemu kernel for emulating Rpi on QEMU)されているビルド済みのカーネルを使用させていただきました。なお、公開されているカーネルの最新版(kernel-qemu-4.4.34-jessie)をダウンロードしました



次にRaspbianのダウンロードですが、カーネルがjessieを使用していますのでこれに合わせる必要があります。Raspbianのミラーサイトから2017-07-05-raspbian-jessieをダウンロードします。

これで必要なファイルはそろいましたので、ターミナルからQEMUを使用して起動します。Raspbianのディフォルト設定のままでは起動しません。初回起動でbashを立ち上げて、QEMUで起動するための設定をRaspbianのイメージファイル内に行います。起動コマンドは次の通りです。

qemu-system-arm -kernel kernel-qemu-4.4.34-jessie -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial stdio -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw init=/bin/bash" -hda 2017-07-05-raspbian-jessie.img

Raspbianのターミナルが起動したら、下記のファイルをviコマンドなどで開きます

vi /etc/ld.so.preload

このファイルには1行しかありませんので、その行をコメントアウトします


次にQEMUで認識しているディスクとRaspbianでのディスクを合わせるためにシンボリックリンクを作成します。新規に/etc/udev/rules.d/90-qemu.rulesファイルを作成し、下記シンボリックリンクを記載します。

vi /etc/udev/rules.d/90-qemu.rules

KERNEL=="sda", SYMLINK+="mmcblk0"
KERNEL=="sda?", SYMLINK+="mmcblk0p%n"
KERNEL=="sda2", SYMLINK+="root"



この2つのファイル編集で書き換えは完了になります。実際にRaspbianを下記コマンドで起動します

 qemu-system-arm -kernel kernel-qemu-4.4.34-jessie -cpu arm1176 -m 256 -M versatilepb -no-reboot -serial stdio -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" -hda 2017-07-05-raspbian-jessie.img

起動プロセスが流れていきます 。ドキドキする瞬間ですね


しばらくすると見覚えのあるRaspbian GUIが起動しました


QEMUを使用するといろいろと遊べそうですね

2017年12月15日金曜日

QEMUのインストール


QEMUって、知っていますか?!
汎用でかつオープンソースのマシーンエミュレータとバーチャライザだそうです。簡単に言うと、違うCPUを搭載したフルシステム(たとえばLinux)をエミュレーションを行ったり、Intel CPUを搭載したWindows PCでARMコマンドの実行するなどと行ったことが出来ます。このQEMUをCentOS 7にインストールしてみたので、その手順を紹介します

最初にQEMUの公式サイトからQEMUの本体をダウンロードします。今回は、qemu-2.10.1.tarを使用しました。QEMUをインストールしようと言う方は、ご存知だとは思いますがtarファイルは下記コマンドで解凍します

tar xvf qemu-2.10.1.tar

Linuxの場合、そのシステムでのコンパイル作業が必要になります。こう聞くと難しそうですが基本はコマンドを打ち込むだけですから簡単ですよ。

ステップ1:これからインストールを行うOSやCPUバージョンのチェックとし、Makefileファイルを生成します

./configure

参考までに発生したエラーと対処方法を記載しておきます

Error: zlib check failed Make sure to have the zlib libs and headers installed.
yum install zlib-devel
ERROR: glib-2.12 gthread-2.0 is required to compile QEMU
yum install gtk2-devel

ステップ2:configureで生成されたMakefileを使用して、ソースをコンパイルします

make

ステップ3:mekeで作成されたバイナリファイルを規定のディレクトリにインストールします

make install

デフォルトでは、/usr/local/bin/にインストールされます。これを変更したい場合は、configure ファイル内の下記を書き換えます

prefix="/usr/local"

これでインストールは完了になります。簡単なインストールの確認としては、コマンドヘルプの表示になります

qemu-system-arm -help

私は使用していませんが、yumコマンドによるインストールも可能なようです

yum install qemu-kvm

ただし、Xilinxが用意しているZynq用のQEMUなどをインストールしたい場合などは、yumコマンドは使用できません。これに関する詳細は、Xilinx wiki - QEMUサイトを見てね


2017年12月14日木曜日

iOS 11.2.1リリース

iOS 11.2.1がリリースされました。


アップデート内容は、以下の様になっています。
  • KDDIをご利用のお客様がVisual Voicemailをアクティベーションすることができない問題を修正
  • ”ホーム”Appの共有ユーザがリモートアクセスできない問題に対応
KDDIでなく、”ホーム”Appを使用していないと関係ない内容ですね

なおアップデートファイルの大きさは、iOS 11.2をインストールしているiPhone 7で61.1MB、iPhone 7 plusで61.2MB、iPhone 6 plusで57.7MBになります。

mineo(au, docomo)の使用に関して、通常使用で本アップデートによる影響はありませんでした


ブログランキングに参加しています。良かったらクリックしてください

スマホ・携帯ランキング

2017年12月3日日曜日

iOS 11.2リリース

昨日、iOS 11.2がリリースされました。



アップデート内容は、以下の様になっています。
  • iOS 11.2には、Apple Pay Cashが導入され、Apple Payを使用して友達や家族間でお金の送金、請求および受領ができるようになりました。このアップデートには馬具の修正および改善も含まれています。
内容としては、Apple Pay Cashのリリースがメインのようですね。また、iPhone 8/8 plus/Xで高速ワイヤレス充電(5W→7.5W)が可能になったそうです。

なおアップデートファイルの大きさは、iOS 11.1.2をインストールしているiPhone 7で410.7MB、iPhone 7 plusで416.6MB、iPhone 6 plusで331.2MBになります。ひさびさに大規模アップデートですね

mineo(au, docomo)の使用に関して、通常使用で本アップデートによる影響はありませんでした


ブログランキングに参加しています。良かったらクリックしてください

スマホ・携帯ランキング