mirror of
				https://github.com/fspc/gbootroot.git
				synced 2025-11-04 08:15:36 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			171 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			171 lines
		
	
	
		
			5.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
$Id: README,v 1.29 2003/02/18 18:28:06 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 ./configure, run "make clean", and then
 | 
						|
"make".  If this is your first time making gbootroot from the source
 | 
						|
package just run ./configure and "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.  Mandrake
 | 
						|
requires glibc-static-devel along with glibc-devel, but the other
 | 
						|
package names are more similar to Debian.
 | 
						|
 | 
						|
Suse users may need to edit /usr/include/asm/ptrace.h adding "#define
 | 
						|
FRAME_SIZE 17" after the "#define SS 16" line or else uml won't
 | 
						|
compile.  This was observed in Suse 7.3; why this line is missing is a
 | 
						|
complete mystery.
 | 
						|
 | 
						|
 | 
						|
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 CLI/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/1.15)
 | 
						|
------------------------------
 | 
						|
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-1.02.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 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.  The host-skas3.patch is available from
 | 
						|
http://user-mode-linux.sf.net/dl-sf.html .  Alternatively, there is a
 | 
						|
skas module available from http://www.rogerbinns.com/modskas3/ ."
 | 
						|
 | 
						|
 | 
						|
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>
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 |