gBootRoot pronounced "bOOtrOOt"
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

4.9 KiB

$Id: README,v 1.16 2003/01/05 21:07:13 freesource Exp $
Program: gBootRoot pronounced "bOOtrOOt"
License: GNU General Public License

BUILDING
---------

If you can compile a kernel on your system, then you should have no
problems getting the Makefile to work, and if you are using the
sources for the Debian package, then you can always do an "apt-get
build-dep gbootroot." to automatically figure out your build
requirements. Gbootroot makes its own root_fs, when the output gets
colorful (blue and red) you know this is happening. If things go
wrong at this point you will want to look at the requirements below.

You will want wget installed because the Makefile attempts to download
the necessary sources and then places them in the sources/ directory.
This is what makes the unofficial Debian and RedHat source packages
unique, because usually another package would provide the necessary
sources since official distributions aren't always used online. On the
other hand, this is a FEATURE. Anytime you want to update gbootroot
to the current user-mode-linux patch just change the Makefile
PATCH_VERSION, run "make clean", and then "make".

The two root_fs created are root_fs_helper and Initrd.gz.
Root_fs_helper has lots of different filesystem utilities, but the
CRUCIAL ones to get the build to work properly are mke2fs and
mkcramfs. Here's a list of what utilities are included: mke2fs mkcramfs
genromfs mkfs.minix mkminix mkreiserfs mkfs.jffs mkfs.jffs2

These are the build-depends from the Debian source package which can
be used as a guide for other distributions: binutils ((>=
2.13.90.0.16), fileutils (>= 4.0), gcc (>= 2:2.95.4), make, libc6-dev
(>= 2.3.1), bin86, wget, mkcramfs, e2fsprogs, reiserfsprog, genromfs,
xutil-linux, mtd-tools, m4, libreadline4-dev


UML KERNEL CUSTOMIZATION
------------------------

You may want to add your own customizations to the uml kernel. To
accomplish this you will need to understand that the Makefile runs
oldconfig on the configuration file ".config" which is first copied
from user-mode-linux/usr/lib/uml/config to .config in the
linux-$VERSION directory where the kernel sources reside. What this
means is that after doing a make config or one of its alternatives
from the kernel sources directory, you should copy the customized
configuration file you made to the ../user-mode-linux/usr/lib/uml
directory and then run gbootroot's Makefile.


INSTALLING
----------

If you build the package as a non-root user, and you don't have
permissions to write to system directories you can always run
gbootroot from the immediate source directory "./gbootroot --home ."
or "perl -I . ./gbootroot --home ." if there is already another
installed version on the system.

To install on the system type "make install" and follow the
instructions in the "Important Configurations" section near the bottom
of this page, and then run gbootroot.

When you run gbootroot if a boot or root method are missing required
programs, pop-up dialog boxes and information from the verbosity box
will give a good indication of what is causing the problem.


REQUIREMENTS TO RUN GBOOTROOT
-----------------------------

PERL MODULES

Gtk-Perl (Required for GUI)
--------------------------

Version 0.7002 or greater.
http://freshmeat.net/projects/gtk-perl

[ The next three are required for automated normal (non-root) user
functionality . ]

Expect (tested with 1.11)
------------------------
http://www.perl.com/CPAN/modules/by-module/Expect/
http://sourceforge.net/projects/expectperl
RPM version can be found at sf.net/gbootroot.

IO::Stty
--------
http://www.perl.com/CPAN/modules/by-module/IO/IO-Stty-.02.tar.gz
RPM versions can be found at sf.net/gbootroot.

IO::Tty
-------
http://www.perl.com/CPAN/modules/by-module/IO/IO-Tty-0.04.tar.gz
http://sourceforge.net/projects/expectperl
RPM versions can be found at sf.net/gbootroot.


BOOT METHODS

2 disk compression
------------------

This method will tell you when any of these utilities are missing:

ash lilo bzip2 file


ROOT METHODS

Yard (This is a method - not a program)
--------------------------------------

Watch the verbosity box, it will be obvious when a required command is
missing. Make sure you have this file installed on your system:

file


IMPORTANT CONFIGURATIONS

"chown 0:0 /usr/bin/uml_net; chmod 4755 /usr/bin/uml_net" so normal
users can have network capabilities; ofcourse, you may totally avoid
doing the suid thing by using tunctl.

Should the host kernel have the skas patch applied?

"Yes, I highly recommended it. It's a great performance improvement,
and gbootroot-nest1 will run a lot better. Modes are figured out
automatically by skas-or-tt so don't add mode={tt,skas} in the UML
box"


DOCUMENTATION

Documentation and FAQ are in doc/html/index.html


Have fun!

-Jonathan

Please infuse your suggestions, bug reports, insults, and patronage back to:
Jonathan Rosenbaum <freesource@users.sourceforge.net>