rootfsのイメージは、ddコマンドでhddに書き込む。上の記事では/rootfsのtarを展開するようになっているが、こちらの方が移行が楽だ。
以下手順を書く。(すべてsudoでの作業)。
uname -a
Linux bbbb 3.8.13-bone31 #1 SMP Wed Dec 4 16:43:45 JST 2013 armv7l armv7l armv7l GNU/Linux
hddの領域作成とrootfs複写
- 適当なUSB HDD入手(IDEのusb-TOSHIBA_MK4018GAS-0:0だった)。
- BBBの単体電源では稼働は(ほとんど)無理。セルフパワーのUSB HUBにつなぐ。
- lsblk でデバイス名確認。/dev/sda
- fdisk /dev/sda
- pコマンドで全領域にパーティション
- t(83)でLinux
- mkfs.ext4 /dev/sda1
- 下記コマンドでSDのrootfsをhddに複写
- dd if=/dev/mmcblk0p2 of=/dev/sda1 bs=32M conv=noerror,sync
- 結果:471+1 レコード入力 、472+0 レコード出力、15837691904 バイト (16 GB) コピーされました、 1120.15 秒、 14.1 MB/秒
- e2fsck -f /dev/sda1 (ファイルチェック)
- mkdir /tmp/a ; mount /dev/sda1 /tmp/a
- ls -l /tmp/a で確認
- umount /tmp/a
- resize2fs /dev/sda1 (hddパーティション全域利用を可能にする)
- mount /dev/sda1 /tmp/a
- df -h
SDの/boot/uboot/uEnv.txt 書き換え
- cd /boot/uboot cp
- uEnv.txt uEnv.txt.org
- uEnv.txtを編集
diff uEnv.txt.org uEnv.txt
11c11
< mmcroot=/dev/mmcblk0p2 ro
---
> mmcroot=/dev/sda1 ro
hdd側fstabの変更
(/tmp/aに/dev/sda1がマウントされているとする)。- cd /tmp/a/etc
- cp fstab fstab.org
- fstab編集
diff fstab.org fstab
2c2
< /dev/mmcblk0p2 / auto errors=remount-ro 0 1
---
> /dev/sda1 / auto errors=remount-ro 0 1
rebootで確認
sync;sync;reboot
ログインOK
touch /forcefsck
reboot
ログインOK
df -h以上。
/dev/sda1 37G 3.4G 32G 10% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
devtmpfs 248M 4.0K 248M 1% /dev
none 50M 244K 50M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 248M 0 248M 0% /run/shm
none 100M 0 100M 0% /run/user
0 件のコメント:
コメントを投稿