This is part of the Debian PowerPC e500 porting effort, the series on my blog starts at: "How to bootstrap a new Debian port"
So last time I managed to get the old Debian archive to install onto a new NFS root filesystem, but I had not yet booted or configured that NFS root. To do that, you need to be able to boot your board (with kernel) and get that filesystem mounted as "/" somehow; whether using busybox or some other mechanism.
At this point "/etc/inittab" doesn't exist yet, so you will need to boot with "init=/bin/bash" in the kernel arguments. Since you're probably booting with a serial console, you also want "console=ttyS0,115200n1". Additionally, you probably need some root filesystem options like "root=/dev/hda1 rw" or "root=192.168.1.42:/srv/nfsroot/my-board rw" or something.
Once the board boots and displays a shell, you're halfway there! Before you can get packages to configure, though, you need to workaround a "libc6" postinst bug. Fake the existence of an actual "init" program by running these command:
$ mkfifo /dev/initctl
$ cat </dev/initctl >/dev/null &
Next work around a "dash" postinst bug with these commands:
$ dpkg-divert --package dash --divert /bin/sh.old --add /bin/sh
$ dpkg-divert --package dash --divert /usr/share/man/man1/sh.1.gz.old \
/usr/share/man/man1/sh.1.gz
Finally you can configure all the packages. Run this command and reply to the interactive prompts as necessary:
$ dpkg --configure -a
Once that finishes, you just have 2 steps remaining before you can reboot. Set up a serial console and change root's password:
$ echo 'T0:2345:respawn:/sbin/getty -L ttyS0 115200 xterm-color' \
>>/etc/inittab
$ passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Ok, you're done! Sync and reboot! This time you don't need to pass any special options.
$ sync && reboot -f
Unfortunately most of the last few days has been dealing with other problems like merging our HWW-1U-1A U-Boot board support upstream and dealing with other internal projects, so this is it for today.
Cheers,
Kyle Moffett
No comments:
Post a Comment