mirror of
https://github.com/fspc/gbootroot.git
synced 2025-03-04 03:43:23 -05:00
One more question to go.
This commit is contained in:
parent
afd9e0201b
commit
46090bd981
@ -3,7 +3,7 @@
|
||||
<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E"
|
||||
alink="#FF0000">
|
||||
|
||||
<center>$Id: index.html,v 1.32 2001/12/05 19:13:05 freesource Exp $</center>
|
||||
<center>$Id: index.html,v 1.33 2001/12/05 20:27:25 freesource Exp $</center>
|
||||
|
||||
<p>
|
||||
|
||||
@ -361,19 +361,21 @@ $HOME/.gbootroot/yard/.</p>
|
||||
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.
|
||||
It may be used for the creation of root filesystems used in every
|
||||
bOOTrOOT has become a full blown distribution creation program which may
|
||||
be used by a normal user.
|
||||
It may be used for the creation of root filesystems in every
|
||||
imaginable application from Embedded Systems to Mini Distributions to
|
||||
Macro distributions to Full sized Distributions.  The root
|
||||
and boot filesystems may
|
||||
be tested long before implemenation by using user-mode-linux.
|
||||
and boot filesystems may
|
||||
be tested long before implementation by using user-mode-linux.
|
||||
Boot Methods are provided to allow root filesystems to run from different types
|
||||
of media.
|
||||
Historically, developers have written scripts
|
||||
which have focused on providing a particular type of root
|
||||
filesystem and booting method. Observation, reveals that all these
|
||||
approaches share many commonalities. gBootRoot has been designed to embrace
|
||||
all these approaches, and to allow developers to create drop-in replacements
|
||||
filesystem and booting method. Observation, reveals that all these
|
||||
approaches share many commonalities. gBootRoot has been
|
||||
designed to embrace
|
||||
these similiarities, and to allow developers to create drop-in methods
|
||||
via modules or easy to understand templates.
|
||||
gBootroot is the GIMP of distribution creation!</P>
|
||||
|
||||
@ -562,9 +564,10 @@ new replacements and then creates symlink from the
|
||||
$HOME/.gbootroot/yard/Replacements directory to the
|
||||
replacements repository.
|
||||
In general the repository for replacements is owned by root, so normal
|
||||
users can't make changes to these files anyways; however, root should makes
|
||||
it a policy always to make changes from her local directory by using an editor
|
||||
which respects versioned files (i.e. Emacs). Then she will not be able to
|
||||
users can't make changes to these files anyways; however, root should make
|
||||
it a policy always to make changes from the $HOME location while using
|
||||
an editor which respects versioned files (i.e. Emacs). Then the
|
||||
administrator will not be able to
|
||||
make any changes to the replacements repository because the CVS directories
|
||||
keep date information which prevents the editing of these
|
||||
files. It is highly recommended to follow this procedure, and
|
||||
@ -576,13 +579,43 @@ for data which shouldn't be modified
|
||||
|
||||
<p>
|
||||
|
||||
<b>What is make_debian, and how do I use it?</b></p>
|
||||
Binaries are auto-magically checked to discover whether they require libc6 or
|
||||
uClibc. If they are found to require uClibc
|
||||
/usr/i386-linux-uclibc/bin/ldd
|
||||
is used to discover shared library dependencies, otherwise ldd is
|
||||
called without any path.</p>
|
||||
|
||||
|
||||
<b>What do you mean by macro distribution?</b></p>
|
||||
|
||||
<p>
|
||||
|
||||
A macro distribution is a term I coined. It implies a software
|
||||
distribution larger than a mini distribution usually
|
||||
associated with 1.44 to 1.722 sized floppy disks, but smaller than a
|
||||
base distribution which provides the foundation to create a full size
|
||||
distribution. It is usually pruned, and provides the
|
||||
absolute minimum needed to provide all the functionality usually
|
||||
associated with a full sized distribution, yet it still uses the same
|
||||
libraries and binaries. Because it can be made quickly, it is
|
||||
useful for creating a current snapshot of ones own host systems, and can be
|
||||
used to run experiments safely without fear of corrupting the host system
|
||||
via user-mode-linux.</p>
|
||||
|
||||
|
||||
<b>How am I able to create root filesystems as a normal user?</b></p>
|
||||
|
||||
<p>
|
||||
|
||||
Genext2fs is used. This progam allows a normal user to create an ext2
|
||||
filesystem with all uids and gids belonging to 0 (root) without the need for
|
||||
a loop or ram device. Device nodes are created from a device table
|
||||
file written to by gbootroot.  This program is authored by
|
||||
Xavier Bestel, but the version used by gbootroot has
|
||||
modifications from Erik Andersen (BusyBox) to allow a device table
|
||||
to be used rather than a device listing. The maximum allowable size
|
||||
for a filesystem is 8192k. User and group information
|
||||
can be changed when the filesystem is run from a kernel.
|
||||
|
||||
<p>
|
||||
|
||||
@ -591,6 +624,56 @@ for data which shouldn't be modified
|
||||
|
||||
<p>
|
||||
|
||||
|
||||
<b>What is make_debian, and how do I use it?</b></p>
|
||||
|
||||
<p>
|
||||
|
||||
Make_debian is a script which takes information from
|
||||
a Debian installation and creates a template which can be used to make a
|
||||
macro distribution using gBootRoot's yard method.
|
||||
It creates replacements for important configuration files to represent
|
||||
the actual packaging state it will be providing.
|
||||
In order to use this script you need to be running a Debian-like
|
||||
distribution, anotherwards, one which uses dpkg, apt and file-rc to maintain
|
||||
its packaging and boot hierarchy. Dswim is used to collect
|
||||
information used in making the template. You will need to build the
|
||||
filesystem as root because it exceeds the 8192k limit provided by genext2fs.</p>
|
||||
|
||||
<p>
|
||||
|
||||
Run make_debian from the command-line. The script first finds all
|
||||
required packages on your host system, then it checks to see if any of
|
||||
the extra packages mentioned in its configuration are missing.
|
||||
As a rule, even if extra packages
|
||||
are missing, a working distribution will still be created.
|
||||
The script will then ask you a few questions,
|
||||
and then proceed to make Debian-`uname -n`.yard in your template
|
||||
directory.
|
||||
|
||||
<p>
|
||||
|
||||
<em>Extra Packages and static template data:</em>
|
||||
|
||||
<br>
|
||||
|
||||
You can resolve missing packages by installing them on your system, or you can
|
||||
edit the script and replace these packages with a suitable replacement,
|
||||
since you may be using a different version of Debian then the author
|
||||
used when putting together make_debian. Make a copy of make_debian,
|
||||
and then edit the part under EDIT HERE between qw().
|
||||
You may edit the static data in the template from
|
||||
within the script below where it is clearly marked as editable.
|
||||
While on the subject the <b>make-debian-x11 add-on</b> is actually the
|
||||
result of
|
||||
making these modifications. First, extra packages were
|
||||
added, second, extra replacements were provided and the static information
|
||||
in the template was modified to reflect these replacements.
|
||||
|
||||
|
||||
</p>
|
||||
|
||||
|
||||
<b>My root filesystem doesn't start in single mode when started like
|
||||
this:  "bootdisk 1?"</b></P>
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user