From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <3e1162e60612201522u79c66604pbae9c0fec744d35a@mail.gmail.com> Date: Wed, 20 Dec 2006 15:22:26 -0800 From: "David Leimbach" To: "Fans of the OS Plan 9 from Bell Labs" <9fans@cse.psu.edu> Subject: Re: [9fans] the JD project: little tiny liinux that is a driver for Plan 9, boots in seconds. In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <13426df10612201419p3cad2584xaa362a88a6864f43@mail.gmail.com> Topicbox-Message-UUID: f6ca8cbe-ead1-11e9-9d60-3106f5b1d025 Hmmm WWJDD... What Would Jack Daniels Do? On 12/20/06, Paul Lalonde wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Yowza. Someone slipped something into Ron's coffee! > > Ron - any chance of the /dev/fb based drawterm making its way to more > general distribution? > > Thanks, > Paul > > On 20-Dec-06, at 2:19 PM, ron minnich wrote: > > > It is called JD for a reason ... > > > > anyway ... > > > > on sources/xen/xen3/xentest.tgz is the latest. > > > > here is what it does > > boots a minimal linux to a bash prompt. You type > > xend start > > xm create hanska > > this in turn boots a cpu server under xen which tries to mount from an > > fs, which does not exist, but hey ... it can start up a plan 9 > > instance. And give it an IP from DHCP. And it tries and fails to mount > > an fs from somewhere. And if finds the block device (sd00). This is > > close. > > > > The linux will nat for you. > > > > In theory, I should be able to mount 9grid.net, have not tried this > > yet. > > > > The file is a mere 62M compressed (sorry!) but we're trying. I had to > > pull in lots of shit because the xen scripts are a mix of python and > > bash. The bash scripts, if written in python, would not need all the > > shit. Long term, they should all be python, and I am sure that you > > folks are chomping at the bite to rewrite them, python being such a > > readable, simple, easy to bug-insert language (what's the oppose of > > debug? Where you insert a bug just be removing whitespace? maybe embug > > -- for embedding a bug. ) > > > > here is my grub.conf entry for it -- see, I'm getting user-friendly > > this time around. > > > > title tiny horrible xen > > root (hd0,5) > > kernel /boot/xen-3.0.3-1-i386.gz > > module /boot/vmlinuz-2.6.18-3-xen-686 root=/dev/hda6 ro > > console=tty0 > > module /boot/initrd.img-2.6.18-3-xen-686 > > > > So, what did it take to make this work? > > > > Oh, not much. Xen reported hotplug failing, in a way calculated to > > confuse me. > > > > But, thinks I, I need udev. But, udev won't start without syslog in > > there. Honest, strace doesn't lie. > > > > So, in the end, I added: > > [root@q rminnich]# ls /xentest/etc/init.d/ > > functions syslog > > [root@q rminnich]# > > > > [root@q rminnich]# ls /xentest/etc/ > > blkid.tab dhcpd.conf hosts hotplug.d localtime passwd > > syslog.conf xen > > blkid.tab.old fstab hotplug init.d mtab services > > udev > > [root@q rminnich]# > > > > rm /etc/mtab; ln -s /proc/mounts /etc/mtab > > > > [root@q rminnich]# ls /xentest/lib | wc > > 125 125 193 > > [root@q rminnich]# ls /xentest/usr/lib > > libsysfs.so.1 libz.so.1 libz.so.1.2.3 python2.4 xen-3.0.3-1 > > xen-common xen-default > > [root@q rminnich]# ls /xentest/bin > > basename hanska mv sed umount xenctx > > xenstore-read > > bash ip netfix sh usleep xend > > xenstore-rm > > cat killall ps sleep xc_restore xenmon.py > > xenstore-write > > cp less pygrub stat xc_save > > xenperf xentop > > cut logger readlink strace xc_shadow xenstore- > > chmod xentrace > > dhcpd lomount readnotes sync xenbaked xenstore-control > > xentrace_format > > drawterm ls reset tcpdump xen-bugtool xenstored > > xentrace_setmask > > ed mkdir rm touch xencons xenstore-exists > > xentrace_setsize > > expr mktemp rmdir tr xenconsole xenstore- > > list xm > > grep mount runme true xenconsoled xenstore-ls > > [root@q rminnich]# ls /xentest/usr/bin/ > > awk dirname env python > > [root@q rminnich]# ls /xentest/sbin/ > > brctl initlog jfs_fscklog nologin udevcontrol > > udevstart.static > > consoletype insmod jfs_logdump pidof udevd > > udev.static > > depmod iptables klogd sh udev_run_devd > > getty iptables-restore logsave sulogin udev_run_hotplugd > > ifconfig iptables-save losetup syslogd udevsend > > init isdnlog modprobe udev udevstart > > [root@q rminnich]# > > > > > > and a few other bits. If you think this is a lot, you haven't been > > watching linux lately. > > > > Also, the following simple thing: > > [root@q rminnich]# cat /xentest/bin/runme > > #!/bin/sh -x > > mount -t tmpfs none /tmp > > mount -t tmpfs none /var > > mkdir -p /var/run/xenstored > > mkdir -p /var/log/xen > > mkdir -p /var/log/hotplug > > mkdir -p /var/lib > > mkdir -p /var/lib/dhcp > > touch /var/lib/dhcp/dhcpd.leases > > mkdir -p /var/lock/subsys > > mkdir -p /var/run/xen-hotplug > > > > PATH=$PATH:/usr/lib/xen-3.0.3-1/bin > > export PATH > > > > /etc/init.d/syslog start > > /sbin/udevd& > > modprobe loop > > modprobe bridge > > modprobe netloop > > ipconfig eth0 10.0.0.1 up > > #xend start > > #xm create hanska & > > PATH=$PATH:/mnt > > > > ah, well, we had hoped to have a readonly medium, but we have not > > resolved the problem of a writeable root for plan 9. maybe later. What > > would be very interesting is to not have a root at all, but just boot > > as a terminal from somewhere, but we are not ready yet. But that is > > the Dream. > > > > anyway, 20M are there, 40M need to get there, so give it a few > > minutes. The file when done is this: > > > > [root@q xentest]# ls -l /tmp/xentest.tgz > > -rw-r--r-- 1 root root 62174680 Dec 20 15:48 /tmp/xentest.tgz > > [root@q xentest]# > > > > testers welcome, as long as you're not too helpless when confronted > > with Xen ... it's not ready for that yet! > > > > thanks > > > > > > ron > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.3 (Darwin) > > iD8DBQFFicSipJeHo/Fbu1wRAkI9AJ9kvSPlHZkhKIsF0CCedfDN4lMSHQCfTd8J > KdsdmZhllV4FSF0JTyhKNzg= > =00XM > -----END PGP SIGNATURE----- >