Should anyone ask, I updated mythtv to run on Ubuntu on amd64.

I decided to switch my somewhat flaky multimedia MythTV box to Ubuntu.  Since it’s in the living room I run a diskless (and therefore completely silent) AMD64 based system that connects to my backend server via it’s own VLAN on gigabit ethernet (with jumbo-frames).  The problem is that there was very little documentation about setting up Ubuntu in a diskless fashion and even less about doing it for a “foreign” architecture.  I needed an Amd64 environment, and the other PCs that I had access to were Intel 64bit or AMD32.

So I headed over to Robin’s network where he runs an AMD64 based media PC (also on Ubuntu, although needn’t be).

Should I ever have to repeat this setup, these are the commands I executed:
To grab the initial set of packages and unpack them:

debootstrap –resolve-deps –arch amd64 –include=ssh,apt,postfix,cron –verbose edgy /tmp/mythbuntu-from-slomnet
mount –bind /sys /tmp/mythbuntu-from-slomnet/sys
mount –bind /proc /tmp/mythbuntu-from-slomnet/proc
chroot /tmp/mythbuntu-from-slomnet /bin/bash
vim /etc/fstab# /etc/fstab: static file system information.

proc /proc proc defaults 0 0 / nfs rw,async,hard,lock,nfsvers=3,tcp,rsize=32768,wsize=32768 0 0 /home nfs rw,async,hard,lock,nfsvers=3,tcp,rsize=32768,wsize=32768 0 0 /home/mythtv/music nfs ro,async,hard,lock,nfsvers=3,tcp,rsize=32768,wsize=32768 0 0 /mnt/vault/video nfs rw,async,hard,lock,nfsvers=3,tcp,rsize=32768,wsize=32768 0 0
/dev/loop/0 none swap sw 0 0
/dev/hda /media/cdrom udf,iso9660 ro,user,noauto 0 0
vim /etc/network/interfaces

# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
#auto eth0
#iface eth0 inet dhcp
#up ethtool -s eth0 speed 100 duplex full autoneg off

auto eth0
iface eth0 inet static
mtu 9000
vim /etc/initramfs-tools/initramfs.conf

vim /etc/initramfs-tools/modules


update-initramfs -u -c
apt-get clean # we don’t want to have to xfer all the left over .deb packages

exit chroot

umount /tmp/mythbuntu-from-slomnet/proc # because we are tidy
umount /tmp/mythbuntu-from-slomnet/sys # and don’t throw rocks
tar cvfjl /tmp/ /tmp/mythbuntu-from-slomnet

rsync -e ssh … to imagilan

my menu.lst for netbooting looked like this (not the small r and wsize – this seems to be a bug in the early life of a forecedeth module loading.  Later on I ramp up the packet size and things really fly)

default MythBuntu
timeout 10
prompt 2

label MythBuntu
kernel /linux/mythbuntu/vmlinuz-2.6.17-10-386
append initrd=/linux/mythbuntu/initrd.img-2.6.17-10-386 ip=dhcp root=/dev/nfs nfsroot= nfsopts=nolock,tcp,wsize=2048,rsize=2048,rw acpi=force rw

reboot and “Bob’s your uncle”

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.