Marcus Brinkmann wrote: > > On Tue, Sep 19, 2000 at 01:47:05PM +1100, Glenn McGrath wrote: > > Im trying to make a small hurd system. > > Wonderful! > > > Currently i have got a bootable ststem at 5.6 MB, of this > > > > /hurd directory is 2.7MB > > /lib is 1.7MB > > /boot is 892 KB > > /bin is 204KB (busybox binary) > > /libexec is 48KB > > and a few small directories here and there. > > > > I havent tried to do library reduction yet, libc is 1MB, i think i may > > be able to reduce it down to 500KB or so. > > Yes, and libmachuser and libhurduser, too. This should work with my > mklibs.sh script (which I wrote for exactly this situation). > Ahh, cool, i have been in awe of your script for a while now :)
> > I havent touched the /hurd directory its the same as in the 12MB .tar.gz > > image, im not exactly sure what i can remove from here (if anything). > > The statically linked filesystem stuff is only needed for the root > fliesystem and can be on another disk. It is possible to have grub, gnumach, > ext2fs and ld.so on one disk (with a special servers.boot script I attach), > and the root filesystem on another disk. This should get you much closer. > > > Before i started playing with the Hurd i was thinking i might be able to > > make some hurd floppies, but now im having my doubts. > > > > Does Hurd suppport ramdisks, or how could a two or more floppy system > > work, could we have a boot and root floppy ? > > Yes, this is what I described above. > > > If we had a boot and root floppy /boot could fit on the boot floppy then > > /libs and /bin (and /sbin, /usr/sbin, /usr/bin) might just squeeze onto > > a root floppy with library reduction. > > This is what I hope. Remember that the Hurd supports a compressed root > filesystem. So you make your diskimage, gzip or bzip2 it, and then load it > this way in serverboot.gz: > I wasnt sure about this, now im sure it can be done. > /hurd/ext2fs.static --bootflags=${boot-args} --host-priv-port=${host-port} > --device-master-port=${device-port} --exec-server-task=${exec-task} > -Tbunzip2:device ${root-device} $(task-create) $(prompt-task-resume) > > Note the bunzip2, which can also be gunzip. Note the prompt-task-resume, > which prompts for a key before trying to load the root filesystem (so a user > can change the floppy). > > I think ext2fs.static is loaded completely into memory, and you don't need > it on the root fs. Same for ufs.static. What we need: > > auth > crash > exec > ext2fs # to mount ext2 fs's > fifo # Not sure... > ftpfs # optional > ifsock # Not sure > init > isofs # for CD fs > magic # device files > nfs # for nfs install > null # /dev/null > password # optional for root fs, as we are always root > pfinet # network > pflocal # pipes > proc > storeio # block devices > streamdev # character devices (new) > term > ufs # ufs, probably optional > > > But then i asume the /hurd directory would be needed very early on... > > this is what is causing me doubts. > > Yes, we absolutely need those, but it IS doable. We also need ash. I almost > squeezed the entire system (with bash, fileutils etc) on one root disk, so > with > ash and busybox, it should be possible to do it. > > Thanks, > Marcus > Busybox now has a shell builtin, its nicknames LASH (Lame Ass SHell), its very much in development, but it works and its small, fancy shell scripts are likely to have problems though. Looks like i have somthing to experiment with today ! Thanks Glenn