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.
 
 
 
 
freesource 0fa3f72b1b An uptodate template for stable debian with a minor change in make_debian. 22 years ago
BootRoot Explanation about the new perl 5.8 series packages for perl-Expect. 22 years ago
add-ons/yard/make-debian-X11 Get in there. 22 years ago
doc/html Explanation about the new perl 5.8 series packages for perl-Expect. 22 years ago
genext2fs Not necessary to have this in the sources. 22 years ago
pkg Updates the specs to the proper versions. 22 years ago
skas-or-tt Fixed a bug which causes lock-ups during seconf fs creation with 22 years ago
user-mode-linux/usr/lib/uml Not necessary to have this stuff in the sources. 22 years ago
yard An uptodate template for stable debian with a minor change in make_debian. 22 years ago
.gitignore *** empty log message *** 25 years ago
COPYING It's GNU GPLED, ofcourse. 22 years ago
Changes Released new Expect rpms. 22 years ago
Makefile This puts the README in the normal binary. 22 years ago
Makefile.pkg Corrects an issue with the variable MODE not being recognized. 22 years ago
README More stuff. 22 years ago
UML.pm * This is an exciting module by jdike of UML, it uses the Expect, IO::Stty, and 24 years ago
expect_uml Get in there. 22 years ago
gbootroot Fixes another nasty. 22 years ago
gbootroot-nest1_pkg This puts the README in the normal binary. 22 years ago
gbootroot.xpm Right now this xpm is just used by the menu system .. not exactly 32x32 or given 24 years ago
gbootroot_pkg Some stuff which I neglected to commit. 22 years ago
gbootrootrc Font change. 24 years ago
yard_chrooted_tests This adds a new c program skas-or-tt mostly from uml code which 22 years ago

README

$Id: README,v 1.20 2003/02/10 17:38:47 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 that can be
used as a guide for other distributions: binutils (>= 2.12.90.0),
fileutils (>= 4.0), gcc (>= 2:2.95.4), make, libc6-dev (>= 2.2.5),
bin86, wget, mkcramfs, e2fsprogs, reiserfsprog, genromfs, util-linux,
mtd-tools, m4, libreadline4-dev, libncurses5-dev, libgtk-perl (>=
0.7002) [see gbootroot's site], libexpect-perl [required rpms can be
found at gbootroot's site]. For instance, in Redhat libc6-dev
translates into glibc-devel and glibc-kernheaders, libreadline4-dev
translates into readline-dev, libncurses5-dev translates into
ncurses-devel, reiserfsprog translates into reiserfs-utils.


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 the config 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>