2016年9月29日の日記の1番目の記事へのコメント

Raspberry Pi 3

昨日、自宅のサーバにポートフォワーディングするようにしたことで、リモートからsshでログインできるようになったRaspberry Pi 3ですが、いきなりリモート接続で設定を書き換えるのはちょっと怖いんで、手元で実験できるように、エミュレーション環境を整えてみました。

手順としては、こちらのサイトの情報ほぼそのままですが、一応メモとして残しておきます。

fdiskでディスクイメージの中のLinux用のパーティションの位置を確認。

% fdisk -l 2016-05-27-raspbian-jessie.img
中略
Device                          Boot  Start     End Sectors  Size Id Type
2016-05-27-raspbian-jessie.img1        8192  137215  129024   63M  c W95 FAT32 (
2016-05-27-raspbian-jessie.img2      137216 7849983 7712768  3.7G 83 Linux

Linuxの方のパーティションのStartの値 (137216) を512倍した 70254592を指定して、イメージをマウント。

% mkdir -p raspbian
% sudo mount -o offset=70254592 -t ext4 2016-05-27-raspbian-jessie.img raspbian

マウントした中の ld.so.preloadを開いて、libarmmem.so を読み込まないようにコメントアウトして保存。

% sudo vi raspbian/etc/ld.so.preload
(/usr/lib/arm-linux-gnueabihf/libarmmem.soの行頭に「#」をつけてコメントアウト)

90-qemu.rulesを新規に作成。

% sudo vi raspbian/etc/udev/rules.d/90-qemu.rules
(ファイルを下記3行の内容で新規作成)
KERNEL=="sda", SYMLINK+="mmcblk0"
KERNEL=="sda?", SYMLINK+="mmcblk0p%n"
KERNEL=="sda2", SYMLINK+="root"

あとはアンマウントして実行するだけ。

% sudo umount raspbian
% qemu-system-aarch64 -kernel kernel-qemu-4.4.13-jessie \
  -cpu arm1176 -m 256 -machine versatilepb -no-reboot -serial stdio \
  -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" \
  -hda 2016-05-27-raspbian-jessie.img

結構ちゃんと動いてくれたんで、これを利用して、コネクションが切れたらautosshで再接続するような設定のテストを行い、実際にリモートで実機にも適用したりしたんですが、夜になって再度ネットワークが死んでしまったらしく、外から入れない状態になってしまいました。やむを得ず、電源を入れ直してもらったんですが、どうもOSが上がってこない状態の模様。うーん、ハード的に何か問題起きたかな・・・。

お名前:  メールアドレス(省略可):
メールアドレスも表示されます
ここに名前その他を書いてはいけません: ここにメールアドレスその他を書いてはいけません:

2016年9月29日の日記の1番目の記事へのコメント

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2016年9月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ