< html >
< head > < title > gBootRoot< / title > < / head >
< body text = "#000000" bgcolor = "#FFFFFF" link = "#0000EF" vlink = "#51188E"
alink="#FF0000">
< H1 align = "center" > gBootRoot< / h1 >
< H3 align = "center" > at< / h3 >
< p align = "center" > < A href = "http://sourceforge.net/projects/gbootroot" >
< IMG src = "http://sourceforge.net/sflogo.php?group_id=9513&type=1"
width="88" height="31" border="0"
alt="SourceForge Logo"> < / A > < / p >
< p > < / p >
< P align = "center" >
< b > bOOTrOOT< / b > makes the development, construction, and
testing of distributions fun and simple.< / P >
< br >
< P align = "center" >
< b > Download gBootRoot< / b > < / P >
< P align = "center" > Newest version< / P >
< p align = "center" > < A href = "http://prdownloads.sourceforge.net/gbootroot/" >
Old versions< / A > < / P >
< P align = "center" >
< IMG ALT = "" SRC = "images/gbootroot.jpg" >
< / P >
< P align = "center" >
< b > How to Use gBootRoot< / b > < / P >
< P > < IMG ALT = "" SRC = "images/gBS.jpg" align = "right" > The most important button to
familiarize yourself with is the Submit button which starts the whole process;
dialogs are presented as the process continues asking you if you want to
continue " OK" or stop " Cancel" .< / P >
< p >
The < u > first row< / u > presently has only one Boot Method choice:
"2 disk compression." Clicking on the menu on the right selects
the Boot Method.< / p >
< P > The < u > second row< / u > allows you to select the kernel for the Boot/Root set. You
may either use the file selector button on the right hand side, or you may
type in the location on the left hand side.< / P >
< P >
The < u > third row< / u > allows you to select the compressed filesystem you are
providing, using either of the two ways mentioned before. You may use a
pre-made root filesystem or you may create one using one of the Methods
provided in the Advanced Root Section.
< / P >
< P > The < u > fourth row< / u > allows you to select the device you want to use. The default
device is the first floppy disk - /dev/fd0.< / P >
< p >
The < u > fifth row< / u > allows you to choose the size of the device being used. The default size of 1440 assumes you are using a floppy drive
(Note: You may
want to experiment with 1722 which works fine with many floppy drives.), but
can be used with other sized devices like tape drives. Click on the
appropriate radio button to choose either gzip or bzip2 compression if the
program doesn't automatically detect it.< / p >
< P align = "center" > < b > Verbosity Box< / b > < / p >
< IMG ALT = "" SRC = "images/verbosity_box.jpg" align = "right" >
The < u > slider bar< / u > on the right allows the output of the verbosity box
to be
changed from the highest (2) to the lowest setting (1) or to be turned off (0)
or on again. At times it may be advantageous to turn off the
verbosity box
since large quantities of output to this box may cause gbootroot to use too
much cpu power; however, output may still be found in the text file "verbose"
in /tmp/gbootroot_tmp'time-date'.< / p >
< br > < br > < br > < br > < br > < br > < br > < br >
< p > < P align = "center" > < b >
Using the Advanced Boot Section< / b > < / p >
< p > < IMG ALT = "" SRC = "images/ABS.jpg" align = "right" >
Libraries & Binaries & Modules check boxes: Turn off and on the
stripping of symbols. The stripping
behavior for libraries may be changed by clicking on the right mouse button
to change --strip-debug to --strip-all. Binaries default to
--strip-all and Modules default to --strip-debug.< / p >
< p >
"Devel Device" If the device used for development is different than the
actual boot device, use this field to indicate that device. You will have to
run lilo -v -C brlilo.conf -r "device mount point" manually at a later time
on the actual boot device.< / p >
< p >
"Opt. Device" Add devices to the boot disk which are necessary for the
kernel to function properly. Put a space between each
device. For instance, /dev/fb0 for frame buffer devices.< / p >
< p >
"append =" Add append options to brlilo.conf. If you are using a frame
buffer device you could add something like video=matrox:vesa:402,depth:16.< / p >
< p >
"Kernel Module" Add the modules found in
/lib/modules/kernel-version which are necessary for the Boot Method to work
properly. If these modules aren't found in the modules directory
it is assumed
that they either are in the kernel or they do not exist. In the
case of 2 disk compression, floppy needs to be included in the
kernel or included as a module. Kmod inserts the modules, and
kmod needs to be built into the kernel along
with initrd and ramdisk."< / p >
< p >
"Kernel Version" Override the kernel version number found in the
kernel header. This will change the /lib/modules/kernel-version
directory.< / p >
< p >
System.map: When a non-running kernel is chosen it is important
to include a copy of that kernel's System.map file so that depmod can use
the correct set of kernel symbols to resolve kernel references in each
module. This can be found in the kernel's source code after
compilation.
< br > < br > < br > < br > < br > < br > < br >
< P align = "center" >
< b > Using the Advanced Root Section< / b > < / P >
< p > < IMG ALT = "" SRC = "images/ARS.jpg" align = "right" >
"Root Device" This is the device used for the root filesystem when
constructing the Boot/Root set. You may choose a device which is
different
than the Boot device, but presently only floppy devices are supported.< / p >
< p >
"Root Device Size" The size of the actual media used for the Root Device.< / p >
< p >
"Root Filename" The name give to the root filesystem when
initially made in the temporary creation location. The save
button allows the creation to
be saved in the permanent default location when the
Accept button is pressed.< / p >
< p >
"Filesystem Size" Root Methods make the filesystem the size
which is specified here.< / p >
< p >
"Compression" Off by default to allow user-mode-linux
testing. Turn on
compression when you are ready to use a Boot Method
which requires compression.< / p >
< p >
"Method" The root filesystem creation method.< / p >
< p >
"Template" The template associated with a Root
Method. Not all Root Methods
have templates.< / p >
< p >
"Generate" This puts the chosen Root Method in action.< / p >
< p >
"UML" Abbreviation for user-mode-linux. This is a
linux kernel which runs on
top of the host system's linux kernel and allows a you run a live root
filesystem.< / p >
< p >
"Accept" This accepts the created root filesystem if it is
found in the
temporary creation directory. The UML box and the main section
will now
reflect the path to this root filesystem. You can now test with
the UML
button or a put together a complete Boot/Root set with the Submit button.< / p >
< br > < br > < br > < br > < br > < br > < br >
< p > < P align = "center" > < b > User Mode Linux Box< / b > < / p >
< p > < IMG ALT = "" SRC = "images/uml_box.jpg" align = "right" >
"Xterm" Choose an xterm with its executable options switch.< / p >
< p >
"Options" Enter uml command-line options like: mem=64,
devfs=nomount.< / p >
< p >
"Root_Fs" Choose an uncompressed root
filesystem. Append with ubd?=.< / p >
< p >
"Abort" Abort user-mode-linux kernel processes.< / p >
< p > < P align = "center" > < b >
About the Yard Box< / b > < / p >
< p > < IMG ALT = "" SRC = "images/yard_box.jpg" align = "center" > < / p >
The Yard Box is a Root Method which is "Generated" from the Advanced Root
Section after a Template is chosen. It has several
interesting features.
< p >
The check boxes at the bottom represent the different stages involved in
creating a root filesystem. The behavior of these stages
may be altered in
three ways: Edit->Stages->one-by-one (default) will perform each stage
sequentially, stopping between each stage, the user may continue the process
by pressing the Continue
button. Edit->Stages->continuous proceeds non-stop
through all the
stages. Edit->Stages->'user defined' allows the user to
choose any stages the user wants, and will then proceed through all the
chosen
stages. Choosing only 'Check', 'Links & Deps', 'Create" is a good
example.< / p >
< p > < IMG ALT = "" SRC = "images/tests.jpg" align = "center" > < / p >
< p >
The behavior of some of the stages may be
altered. For instance Alt-T allows
you to choose which tests to run on the newly created
root filesystem.< / p >
< p > < IMG ALT = "" SRC = "images/template_search.jpg" align = "center" > < / p >
< p >
Press Alt-S to enable template text searching in either
direction. Find exact matches or ignore case with
the case sensitive check box.< / p >
< p > < IMG ALT = "" SRC = "images/file.jpg" align = "center" > < / p >
< p >
Use Ctl-S to save the changes to an open template, and Alt-A to save the
template with a new name. bOOTrOOT will not allow read-only
templates or template links to be saved
with their own name. A few of these example files a
re included. You may make changes to them or
clear their buffers. Then you may save the template with a
different name.< / p >
< p > < IMG ALT = "" SRC = "images/stripping.jpg" align = "center" > < / p >
< p >
Edit->Settings->Stripping allows you to turn off/on stripping for
Libraries, Binaries, and Modules. --strip-all is the
default for binaries and libraries,
and --strip-debug is the default for modules; however libraries may
be changed to --strip-debug in the settings.< / p >
< p > < IMG ALT = "" SRC = "images/paths.jpg" align = "center" > < / p >
< p >
Edit->Setting->Paths allows you to prepend a new search path to your
environments $PATH variable.
< / p >
< p > < IMG ALT = "" SRC = "images/filesystem.jpg" align = "center" > < / p >
< p >
Edit->'File System" may alter the type of filesystem used to make the root
filesystem. Because the filesystem is
created on a loop device, some
filesystem types may complain or not be created at all.< / p >
< p > < IMG ALT = "" SRC = "images/replacements.jpg" align = "center" > < / p >
< p >
Edit->Replacements in your $HOME/.gbootroot/Replacements directory using
an editor of your choice.
< / p >
< p > < IMG ALT = "" SRC = "images/create.jpg" align = "center" > < / p >
< p >
Create->Replacements creates special replacement
files. Presently it creates
an fstab configuration file as Replacements/etc/fstab.new in
$HOME/.gbootroot/yard/.< / p >
< P > Little things you may want to know:< / P >
< P > * gBootRoot requires ash for initrd. Ash is a feather weight version of Bash.< / P >
< br >
< P > < IMG ALT = "" SRC = "images/gBSicon.jpg" align = "center" > < b > FAQ< / b > < / P >
< P > < b > What does the 2 disk compression method do?< / b > < / P >
< P > This Boot Method creates a boot disk with lilo, a kernel and an initrd
image. The
initrd script mounts another root disk with a compressed (gzip or bzip2)
filesystem.< / P >
< P > < b > What's the advantage of using this program?< / b > < / P >
< p >
(Explanation from the first gbootroot.)< br >
"You can use a bzip2 compressed filesystem, this program is easy to use, and
it provides a framework showing a simple initrd method which you can freely
modify. I wrote this program as an extension to BootRoot
which was written
as a solution to help oster at EE (www.experts-exchange.com) create separate
boot and root floppies for an emergency system for his customers."< / P >
< P > < A href = "./bootroot.html" > BootRoot< / A >
was the original program, but I decided that a GUI approach
provided the user much more versatility and power in creating distributions.
Since the first gBootRoot,
bOOTrOOT has become a full blown distribution creation program.< / P >
< P > If you make a cool change to this program, or if this program helps you I'd love to know, that's better than receiving pizza. :)< / P >
< P > < b > How can I test gBootRoot?< / b > < / P >
< P > 1. Download
< a href = "http://prdownloads.sourceforge.net/user-mode-linux/root_fs_tomrtbt_1.7.205.bz2" >
root_fs_tomrtbt_1.7.205.bz2< / a > from
< a href = "http://www.sourceforge.net/projects/user-mode-linux" >
user-mode-linux< / a > at Sourceforge to your
$HOME/.gbootroot/root_filesystems. < / p >
< p >
2. bzip2 -dc root_fs_tomrtbt_1.7.205.bz2 > root_fs_tomrtbt_1.7.205.
< / p >
< p >
3. Run
gbootroot. Click on the Advanced Root Section, click on
the UML button. Select root_fs_tomrtbt_1.7.205, add devfs=nomount
to the options, and click on the Submit
button.< / p >
< p >
4. Click on the Advanced Boot
Section. Root_fs_tomrtbt is about 16M, so add ramdisk_size=16384 to
the 'append=' entry. From the main box choose '2 disk compression', and
press on the Root Filesystem button and select root_fs_tomrtbt_1.7.205.bz2.
< / p >
5. Click the Submit button on the main
box. Have two floppy disks ready.
< p >
6. When you see Lilo you may access the menu using [Ctrl] and
[Tab] to see the available images.
< p >
7.
< P > < b > My root filesystem doesn't start in single mode when started like
this:  " bootdisk 1?" < / b > < / P >
< P >
When you start a kernel image with 1, you are telling it to start in runlevel
1, not in single mode. Use "single" instead.< / p >
< p >
Why on the subject, it should be pointed at the setting up init and its
runlevels is one of the
most challenging areas of creating a bootable root_fs. & nbspOften
your creation will only work with "single" until all the conflicts
are resolved. Things are complicated even futher by the fact that
devices can now be set up in two majors ways: tty? or ttys/? (devfs).
Fortunately, user-mode-linux comes in very handy for hunting
down all the bugs.
< / P >
< p > < b > There isn't enough room left on my 1440 floppy to make a Boot or Root
disk. Is there any way to free up more space apart from reducing
the size of the kernel?< / b > < / p >
< p >
Move the device size to 1722. This is a trick that < a href = "http://www.toms.net/rb/" > tomsrtbt< / a > uses on his famous rescue disk.< / p >
< p >
(Update 10/06/2001) < br >
Up until mke2fs version 1.19 you were able to do
`mke2fs -F /dev/fd0 1722` on a 1440 device without any problem, but since
then mke2fs has become much more particular about enforcing actual device
size. . Mke2fs will complain:< / p >
< p >
"mke2fs: Attempt to write block from filesystem resulted in short write
zeroing block 1600 at end of filesystem."< / p >
< p >
I understand Theodore Ts'o reasoning for doing this, but I strongly believe
that the old behavior was very useful for people creating
mini-distributions so I have issued
< a href = "
http://sourceforge.net/tracker/index.php?func=detail& aid=468652& group_id=2406& atid=352406">Feature Request #468652< / a > at e2fsprogs site
at Sourceforge. It should
be noted that fdformat is an unacceptable solution because it tends
to be machine specific, and the original mke2fs behavior made floppies that
worked
everywhere. Feel free
to add your comments to the Feature Request. Thanks.< / p >
< p >
< b > gBootRoot doesn't start because it can't locate Gtk.pm?< / b > < / P >
< p > This program requires Gtk-Perl available from < a href = "http://www.perl.com/CPAN" > CPAN< / a > , < a href = "http://freshmeat.net/projects/gtk-perl" > Freshmeat< / a > or most GNU/Linux distributions.< / p >
< p > < b > If you roll the floppy density counter down to 0 and then try go back
up towards 1440 and 1722, you get very funny figures.< / b > < / p >
< p >
This is because of the way Gtk works. There are two adjustments,
step and page increments. When you press your first mouse button the step
has been set to 282 so that a person can easily switch between 1440 and 1722.
When you use your second mouse button the page is set at 360. You can go
down to zero by pressing your third mouse button on the
down arrow. Now
page up with the second button to 1440 and step with the first button to
1722. Pretty cool, eh?< / p >
< p > Why we are on this subject please check out these keyboard shortcuts for Gtk.< / p >
< P > Motion Shortcuts
< UL >
< LI > Ctrl-A Beginning of line < / LI >
< LI > Ctrl-E End of line < / LI >
< LI > Ctrl-N Next Line < / LI >
< LI > Ctrl-P Previous Line < / LI >
< LI > Ctrl-B Backward one character < / LI >
< LI > Ctrl-F Forward one character < / LI >
< LI > Alt-B Backward one word < / LI >
< LI > Alt-F Forward one word < / LI >
< / UL >
< P > Editing Shortcuts
< UL >
< LI > Ctrl-H Delete Backward Character (Backspace) < / LI >
< LI > Ctrl-D Delete Forward Character (Delete) < / LI >
< LI > Ctrl-W Delete Backward Word < / LI >
< LI > Alt-D Delete Forward Word < / LI >
< LI > Ctrl-K Delete to end of line < / LI >
< LI > Ctrl-U Delete line < / LI >
< / UL >
< P > Selection Shortcuts
< UL >
< LI > Ctrl-X Cut to clipboard < / LI >
< LI > Ctrl-C Copy to clipboard < / LI >
< LI > Ctrl-V Paste from clipboard < / LI >
< / UL >
< IMG ALT = "Larry Ewing's Penguin celebrates in gBootRoot." SRC = "images/peng-movie.4.gif" >
< br > < br > < br >
Contact me: Jonathan Rosenbaum < < a href = "freesource@users.sourceforge.net" > freesource@users.sourceforge.net< / a > >
< br >
Submit a Bug: < a href = "http://sourceforge.net/bugs/?group_id=9513" > gBootRoot Bug System< / a >
< br >
Join or browse the mailing lists: < a href = "http://sourceforge.net/mail/?group_id=9513" > gbootroot-{devel,user} mailing lists< / a >
< br >
Ask a question: < a href = "http://sourceforge.net/forum/forum.php?forum_id=29639" > Help Forum< / a >
< br >
Start a discussion: < a href = "http://sourceforge.net/forum/forum.php?forum_id=29638" > Open Discussion Forum< / a >
< p >
< / body > < / html >