mirror of
https://github.com/fspc/gbootroot.git
synced 2025-03-04 11:53:26 -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"
|
<body text="#000000" bgcolor="#FFFFFF" link="#0000EF" vlink="#51188E"
|
||||||
alink="#FF0000">
|
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>
|
<p>
|
||||||
|
|
||||||
@ -361,19 +361,21 @@ $HOME/.gbootroot/yard/.</p>
|
|||||||
was the original program, but I decided that a GUI approach
|
was the original program, but I decided that a GUI approach
|
||||||
provided the user much more versatility and power in creating
|
provided the user much more versatility and power in creating
|
||||||
distributions. Since the first gBootRoot,
|
distributions. Since the first gBootRoot,
|
||||||
bOOTrOOT has become a full blown distribution creation program.
|
bOOTrOOT has become a full blown distribution creation program which may
|
||||||
It may be used for the creation of root filesystems used in every
|
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
|
imaginable application from Embedded Systems to Mini Distributions to
|
||||||
Macro distributions to Full sized Distributions.  The root
|
Macro distributions to Full sized Distributions.  The root
|
||||||
and boot filesystems may
|
and boot filesystems may
|
||||||
be tested long before implemenation by using user-mode-linux.
|
be tested long before implementation by using user-mode-linux.
|
||||||
Boot Methods are provided to allow root filesystems to run from different types
|
Boot Methods are provided to allow root filesystems to run from different types
|
||||||
of media.
|
of media.
|
||||||
Historically, developers have written scripts
|
Historically, developers have written scripts
|
||||||
which have focused on providing a particular type of root
|
which have focused on providing a particular type of root
|
||||||
filesystem and booting method. Observation, reveals that all these
|
filesystem and booting method. Observation, reveals that all these
|
||||||
approaches share many commonalities. gBootRoot has been designed to embrace
|
approaches share many commonalities. gBootRoot has been
|
||||||
all these approaches, and to allow developers to create drop-in replacements
|
designed to embrace
|
||||||
|
these similiarities, and to allow developers to create drop-in methods
|
||||||
via modules or easy to understand templates.
|
via modules or easy to understand templates.
|
||||||
gBootroot is the GIMP of distribution creation!</P>
|
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
|
$HOME/.gbootroot/yard/Replacements directory to the
|
||||||
replacements repository.
|
replacements repository.
|
||||||
In general the repository for replacements is owned by root, so normal
|
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
|
users can't make changes to these files anyways; however, root should make
|
||||||
it a policy always to make changes from her local directory by using an editor
|
it a policy always to make changes from the $HOME location while using
|
||||||
which respects versioned files (i.e. Emacs). Then she will not be able to
|
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
|
make any changes to the replacements repository because the CVS directories
|
||||||
keep date information which prevents the editing of these
|
keep date information which prevents the editing of these
|
||||||
files. It is highly recommended to follow this procedure, and
|
files. It is highly recommended to follow this procedure, and
|
||||||
@ -576,13 +579,43 @@ for data which shouldn't be modified
|
|||||||
|
|
||||||
<p>
|
<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>
|
<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>
|
<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>
|
<p>
|
||||||
|
|
||||||
@ -591,6 +624,56 @@ for data which shouldn't be modified
|
|||||||
|
|
||||||
<p>
|
<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
|
<b>My root filesystem doesn't start in single mode when started like
|
||||||
this:  "bootdisk 1?"</b></P>
|
this:  "bootdisk 1?"</b></P>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user