はじめに
ikwzam 氏のZynqMP 用の Debianイメージにはいつもお世話になっております。
一方で、古い Windows 環境しかないときにSDカードイメージを新規に作ろうとすると何気に苦労するので、Win32DiskImagerなどで書き込めるイメージにできないかと思っていました。
丁度 Windows11 で、WSL2 から SDカードをマウントできる環境も整ったのと、ikwzam 氏の許可もいただけたので、ちょっと試しに作ってみたイメージを試験的においてみたいと思います。
といっても大したことはしていなくて
と、やっただけです。
作成してみたイメージその他を私の OneDriveに共有しておきます。
ただし、こちらも私の OneDrive の契約と容量の都合次第なので、急になくなる場合もあることは予めお断りしておきます。
使い方
私が今メインで利用している Ultra96-V2 用の v2020.2.1 イメージを 下記に置いております。
ダウンロードして解凍後に、Win32DiskImager などで SDカードに焼き込んでください。
その後、SD カードを Ultra96-V2 に差し込むと起動します。
特になんの初期設定もできていませんので、wifi の設定などは別途行ってください。
あと、殆ど試してないのですが、v2021.1.1 も作ってみたので、下記に置いておきます。
パーティーション拡張
なお、この段階ではパーティーションサイズは小さいですので、パーティーション拡張を行うことが望ましいです。
いろいろなやり方があるようですが、私は下記のようにやってみました。
まず root でログインします(パスワードは admin)。
ログインしたら
sfdisk -l /dev/mmcblk0
としてセクタ数を確認します。
上の例だと クラスタサイズが 512 bytesで、SDカード全体で 30703616 sectors と知ることができます。また 16G のSDカードなのに 2G しか Linux パーテーションがないこともわかります。
次に
sfdisk -d /dev/mmcblk0 > dump.txt nano dump.txt
として、dump.txt を編集します。
/dev/mmcblk0p2 の size を、start から換算して 30703616 まで使うように計算して書き直します。
その後、
sfdisk -f /dev/mmcblk0 < dump.txt rm dump.txt reboot
として、念のため再起動しておきます。
確認すると、ちゃんとパーティーションが拡張されたようです。
ここで
resize2fs /dev/mmcblk0p2
としてファイルシステムのサイズ拡張を行えば完了です。
おわりに
まだ Ultra96V2 の v2020.2.1 の1パターンしか試せておりませんが、手元に Kria KV260 も届きましたので、他のバージョンや、他のターゲット用にもイメージが作れれば順次実験していきたいと思います。
おまけ
以前 Ultra96 の Docker を動かす為に作ったファイルを置いておきます。
ZynqMP-FPGA-Linux-v2020.2.1 のイメージに対して、/mnt/boot 以下に展開してリブートすればよいはず(多分)
Ultra96V2-Debian-v2020.2-Docker.zip
自分用備忘録
SDのパーティーション
fat16: 8192- 532479 (524288) ext4: 532480-4726783 (4194304)
トータルサイズが 4726784 クラスタで、2,420,113,408 バイト( 2308M バイト) なので
dd if=/dev/xxx of=XXXX.img ibs=1M count=2308
みたいな感じでダンプして作くれる。