mirror of
https://github.com/fspc/gbootroot.git
synced 2025-02-22 08:33:24 -05:00
root_fs by using the libraries from the initrd. Liav instigated this by asking a question related to FAQ question 14, "So if I understand correctly, it is not possible to copy libc from /dev/ram0 to /dev/ram1 before mounting /dev/ram1 as / ? Liav pointed out how Yard can make boot/root floppies with a compressed root filesystem. Edited FAQ question 13 to correctly reflect how gz compressed root filesystems may be booted without an initrd.
450 lines
19 KiB
Plaintext
450 lines
19 KiB
Plaintext
|
|
Added another technique in the FAQ to show how space can be saved on the
|
|
root_fs by using the libraries from the initrd. Liav instigated this by
|
|
asking a question related to FAQ question 16, "So if I understand correctly,
|
|
it is not possible to copy libc from /dev/ram0 to /dev/ram1 before mounting
|
|
/dev/ram1 as / ?
|
|
|
|
Liav pointed out how Yard can make boot/root floppies with a compressed root
|
|
filesystem. Edited FAQ question 16 to correctly reflect how gz compressed
|
|
root filesystems may be booted without an initrd.
|
|
|
|
State is saved for the Compression off check box and the Root Filename save
|
|
check box.
|
|
|
|
The UML Kernel entry box in the ARS remembers state now.
|
|
|
|
Changed the behavior of save_as so that when compression is chosen, the
|
|
entry won't be the same as that found in Root Filename, but instead reflects
|
|
the newly compressed file. This change was precipitated by the previous
|
|
change to the Accept behavior.
|
|
|
|
1.3.2 - 01/11/2002
|
|
------------------
|
|
|
|
Updated linux and modules to 2.4.17-4um. Made jffs and jffs2 part of the
|
|
kernel, and had to comment out the get_mtd_device function call in jffs_fm.c
|
|
and super.c to accomplish this. Looking forward to more support from the uml
|
|
project for mtd devices.
|
|
|
|
Updated to the 20020104 uml tools, this includes port-helper which is the new
|
|
helper for allowing uml devices to be attached to a specified host port.
|
|
|
|
Changed the behavior of the Accept button so that when compression is chosen
|
|
(gzip or bz2) the Root Filename remains the same as before. This is nice
|
|
because the fs can be remade with the same name and re-compressed, rather then
|
|
appending gz or bz2 to the name. Before if the user forget to
|
|
delete the ending this would happen: root_fs.bz2.bz2.bz2
|
|
|
|
Changed shells for root and user to /bin/sh in passwd-debian, passwd.debian
|
|
and passwd.example. This is a better idea, and assumes sh links to a user
|
|
defined shell, so if the shell is changed the password files don't have to be.
|
|
|
|
Added several new questions to the FAQ, thanks to Liav.
|
|
|
|
Liav Asseraf <liav_a@yahoo.com> points out a problem in 1.3.1. I reply to
|
|
him with this answer: "Indeed, you have found a bug. Bootroot adheres to the
|
|
most recent Filesystem Hierarchy Standard (2.1); in previous bootroot versions
|
|
a big chunk of the source code was included in /usr/bin/gbootroot, but I
|
|
decided to reorganize and move most of that code to BootRoot/BootRoot.pm, in
|
|
the process I also moved a statement which executes before the rest of the
|
|
program does to set up a proper @INC. What this all means is that
|
|
gbootroot couldn't find the required modules." This bug has been fixed.
|
|
|
|
Altered tooltip text for the Options entry to recognize that the umid needs
|
|
to be switched in the mconsole box in order for the new Linux virtual machine
|
|
to be controlled via the buttons and the mconsole. The behavior could be
|
|
changed to accomplish this automatically, but that wouldn't be consistent
|
|
with the behavior one would expect from the mconsole; anyways the documentation
|
|
already explains to use switch in the mconsole.
|
|
|
|
1.3.1 - 12/25/2001
|
|
------------------
|
|
|
|
Added a complete interface to the mconsole in the UML Box. Multiple options
|
|
can be entered at one time. Options include: switch so that the umid can be
|
|
changed to control a different Linux virtual machine, sysrq as in
|
|
Documentation/sysrq.txt, config and remove for devices (ubd?,eth?), reboot
|
|
and halt, version to find the version of the running uml kernel, and help.
|
|
|
|
Added both a Reboot and Halt button to the UML Box. Both of these buttons
|
|
have an interface to mconsole, and provide clean control of rebooting or
|
|
halting a Linux virtual machine. When they fail, Abort does all the clean-up,
|
|
but this should be used as a last resort. Both of these buttons initially
|
|
parse the Options entry for the first instance of umid
|
|
|
|
Added a new stage button in the Yard Box called Copy. Create is now Copy, and
|
|
the uml_exclusively and genext2fs behavior are handled by Create, this is
|
|
much nicer because a new filsystem type can be created without having to wait
|
|
for everything to be copied again to the sources directory.
|
|
|
|
Updated the documentation and graphics to reflect the new changes, and provide
|
|
a new exercise.
|
|
|
|
If the sources created from the template had a symlink in them from a previous
|
|
creation, you couldn't just press create again without symlink() complaining
|
|
(for instance, for genext2f and the new uml_exclusively). This has been fixed.
|
|
|
|
Compiled 2.4.16-2um linux and modules to specification for root_fs_helper.
|
|
Makefile properly edited to copy over the config used. Ext2, cramfs, minix,
|
|
reiserfs, and romfs are built-in to the kernel.
|
|
|
|
Got rid of the complete lock-up when large files are compressed, ofcourse,
|
|
users won't want to try to compress more than one format at the same time,
|
|
because the logic will get skewed. In the future may make this OO. Added
|
|
some verbosity to tell when the process has begun and finished.
|
|
|
|
Established logic for Filesystem Box based on ownership. Defaults need to
|
|
be different dependending on the user. Normal users probably never will
|
|
want to preserve permissions, but they may want to toggle off UML
|
|
Exclusively to create different filesystem types when <= 8192 fs_size.
|
|
Root users may want to turn off Preserve Permissions to create a root only
|
|
filesystem, and the may want to toggle between creating root filesytems
|
|
via loop devices or UML to allow different filesystem types.
|
|
|
|
Added UML Exclusively and Preserve Permissions check boxes to the Filesystem
|
|
Box. Esc closes, changed table size, and layout, responds to return, and
|
|
submit button defaults.
|
|
|
|
Put Jeff Dikes UML.pm in BootRoot, and changed it to BootRoot::UML, added
|
|
one change to allow no password.
|
|
|
|
The auto-magic test for uClibc was only testing for busybox, this has been
|
|
fixed.
|
|
|
|
1.3.0 - 12/12/2001
|
|
------------------
|
|
|
|
Added a README for users installing from the source package.
|
|
|
|
Removed the enforcement of the yard suffix rule for templates, because it
|
|
was never really documented; however, it is still a nice rule to follow
|
|
despite that it is not enforced anymore.
|
|
|
|
Added an archictecture-dependent replacements repository directory.
|
|
|
|
Fixed the freezing behavior for particularly large templates, like the ones
|
|
produced by make_debian, and make_debian-X11. However, overly large buffers
|
|
in the verbosity box still hog cpu in a big way. The best procedure for
|
|
now is to open and close the box between stages.
|
|
|
|
Made the termcap check just a warning if terminfo or termcap don't exist,
|
|
If a terminfo directory is found, linux will need to exist or the test will
|
|
return error. This is better because the root filesystem can still work
|
|
if this information doesn't exist. A minority of gettys will fail if they
|
|
use termcap or terminfo, but this check was removed from the chrooted tests
|
|
several months ago for the reason just cited. Note: check_getty_type_call
|
|
was removed from Yard.pm, but exists in chrooted tests without the termcap
|
|
check. Also, added a close which was missing.
|
|
|
|
Removed an unnecessary check from the fstab test, and improved a regexp
|
|
which was failing if tabs were used in the fstab.
|
|
|
|
State is saved for all check buttons when the yard box is opened and
|
|
closed. Deciding whether to save state between invocations of gbootroot
|
|
via a file.
|
|
|
|
Moved the Changelog from within gbootroot to a Changes file in
|
|
/usr/share/doc/gbootroot, because it is getting quite large.
|
|
|
|
Improved the sizing of the UML box.
|
|
|
|
Added New Template (Alt-N) capability to the Yard Box.
|
|
|
|
Added several new FAQ questions, added a lot more information on
|
|
"How do I use gBootRoot?" Updated the graphics for the documentation.
|
|
|
|
Updated to version 2.4.16 of user-mode-linux.
|
|
|
|
The Yard Box has new check buttons which allows the parsing behavior of
|
|
the nss and pam configuration files to be turned off and on (default).
|
|
|
|
Pam.conf and pam.d/{service names or *} can now be checked for their
|
|
specified service modules. The service modules are located either in
|
|
/lib/security or /usr/lib/security and included with the file set if they
|
|
are found on the host system. The modules are then checked for their
|
|
dependencies which are included if they haven't previously been specified.
|
|
Therefore, the user no longer needs to specify pam modules and dependencies
|
|
in the template if the pam parsing option in turned on.
|
|
|
|
Nsswitch.conf can now be checked for the service modules it specifies. The
|
|
service modules pertaining to the host systems libc6 are located and
|
|
automatically included. The modules are then checked for their
|
|
dependencies which are included if they haven't previously been specified.
|
|
Therefore, the user no longer needs to specify nss modules and dependencies
|
|
in the template if the pam parsing option in turned on.
|
|
|
|
$ENV{RELEASE} is now initialized every time a check is run on the template.
|
|
Information can come from three sources, the kernel version returned from
|
|
a selected kernel in the main section, the user defined kernel version
|
|
in the ABS, or `uname -r`. User defined kernel version overrides the
|
|
kernel. The root_fs needs to be built in relation to the actual kernel
|
|
modules it will run on. Previously the $RELEASE value wasn't returned
|
|
properly because of some bugs in kernel_version_check. This has been fixed.
|
|
|
|
The proper ldd check is now used if a dynamically linked binary is detected
|
|
to require uClibc rather than libc6. The ldd from the default location of
|
|
/usr/i386-linux-uclibc/bin is used for uClibc. The old behavior of
|
|
automatically including the default loader for the host system has
|
|
been removed.
|
|
|
|
Fixed pam test so that the 3rd field rather than the 4th field is being
|
|
checked in the service-name files found in /etc/pam.d/. The 4th field is
|
|
acceptable for pam.conf. If a path is specified in either conf format,
|
|
that path will be checked, otherwise, either the pam default path of
|
|
/usr/lib/security or the FSSTD location /lib/security will be checked
|
|
for a match.
|
|
|
|
Fixed nss test so that it checks for the right libnss_(service).so.$version
|
|
if glibc 2.2 is used. Glibc 2.0 and 2.1 used 1 and 2 respectively, but 2.2
|
|
uses 2.
|
|
|
|
Experimental busybox and uClibc functionality included for boot_fs.
|
|
|
|
Many improvements to the verbosity output.
|
|
|
|
Replacements path is set just once.
|
|
|
|
The Path Box only allowed extra paths to be added before the first generation
|
|
of a root_fs creation, this was because the values weren't allowed to be
|
|
changed after they were defined. This has been fixed.
|
|
|
|
Symlinks have been vastly improved. Fictional or real links can now be
|
|
specified, and links always follow the link -> (file | directory ) format
|
|
where either side can be existing dirs/files or fictional dirs/files on the
|
|
system.
|
|
|
|
All of Tom's templates have been replaced with new templates clearly
|
|
marked as Examples.
|
|
|
|
Example.yard takes advantage of the automated NSS and PAM feature, and can
|
|
create a devfs or nondevfs root filesystem, and has many new replacements.
|
|
The inittabs reflect modern versions of dpkg, rpm, and slackware based
|
|
distributions.
|
|
|
|
Example-Mini.yard demonstrates the bare minimum required to create a
|
|
working root_fs.
|
|
|
|
The documentation in the new templates has been improved
|
|
to respect the way gbootroot's Yard now works, since it has been greatly
|
|
modified from the original, and some old features deemed unnecessary have
|
|
been removed.
|
|
|
|
The Debian.yard example has had a name change to Example-Debian.yard,
|
|
and has additional documentation so the user understands its prerequisites.
|
|
The FAQ covers make_debian usage.
|
|
|
|
Chrooted tests in the Yard Box are disabled and removed when a non-root
|
|
user runs the box.
|
|
|
|
ARS and YardBox error handling is much better because $error has been made
|
|
private, before it was mostly global in YardBox.pm which meant an error
|
|
value remained ERROR even when the problem was fixed which caused the
|
|
YardBox to fail to work properly after certain errors.
|
|
|
|
When the ARS hadn't been opened yet, the program reported that the root
|
|
device hadn't been umounted yet, this was observed with genext2fs but was
|
|
certainly a global bug. This has been fixed.
|
|
|
|
The majority of add-on replacements except for passwd*, shadow, and
|
|
ld.so.conf have a CVS Id and "make_debian replacement".
|
|
|
|
Original CVS information is now preserved so
|
|
that non-root users and root can't edit global replacements, the basic idea
|
|
is that root will usually be using an editor like Emacs in
|
|
$HOME/.gbootroot/yard/Replacements which respects that CVS versioned files
|
|
outside of the repository are read-only (essentially because the date has
|
|
changed). Users should make copies of versioned replacements which they
|
|
want to edit, for instance: fstab.debian-1000 Also, they shouldn't defeat
|
|
the mechanism by removing the CVS directories, although, only root has
|
|
write permissions.
|
|
|
|
All replacements are now symlinks which is helpful to maintain static
|
|
information for add-ons, anotherwards, this allows the author to know that
|
|
all his replacements are updated in user workspaces when he releases a new
|
|
add-on. Because of this change symlinks will now be respected in the
|
|
Replacements directory since the file being pointed to will be used instead
|
|
of the actual link when constructing the root filesystem.
|
|
|
|
Non-root users may now create boot disks. Boot Loaders may required root
|
|
permissions for some methods, and the fstab may need to be edited, see FAQ.
|
|
And some /lib/modules/`uname -r`/modules may need to be given world read
|
|
permissions.
|
|
|
|
A dialog box has been added which will pop up when the lilo stage has been
|
|
reached for a normal user, explaining the requirements, and what the user
|
|
can do next which is explained in detail in the FAQ.
|
|
|
|
Non-root users may now create root filesystems up to 8192k in size using
|
|
genext2fs. FAQ explains how to exceed this limit as a normal user.
|
|
|
|
Added sources.list replacement.
|
|
|
|
Added /swapfile to fstab.debian.
|
|
|
|
1.2.14 - 10/24/2001
|
|
-------------------
|
|
|
|
Append field in the ABS now saves state for non-root users. Before it only
|
|
remembered state if lilo.conf could actually be read, ofcourse, this wasn't
|
|
an option for non-root users. The beginnings of non-root boot and root_fs
|
|
creation capabilities have been put into place, but haven't been fully
|
|
implemented. The end result of this is that directories created in
|
|
$tmp are now static for non-root users and now use the userid number to
|
|
keep track of different non-root users.
|
|
|
|
The author of swim came out with a new version he now calls dswim. This
|
|
means Debian System Wide Information Manager, but the "d" could also stand
|
|
for different. Changes have been made to make_debian to facilitate this
|
|
much more stable version of swim, and better non-installed package checks
|
|
have been implemented in make_debian.
|
|
|
|
The control dependencies have been vastly improved, and reflect the change
|
|
from swim to dswim. Yard_chrooted_tests is now put in a gbootroot specific
|
|
directory since it is unique to gbootroot.
|
|
|
|
The lastest user-mode-linux is included: 2.4.12
|
|
|
|
Updated the documentation, and it includes a better explanation in step 7
|
|
for "How can I test gBootRoot?"
|
|
|
|
Added checks for the existence of ash, lilo, bzip2, and file for the 2
|
|
disk compression method.
|
|
|
|
1.2.13 - 09/28/2001
|
|
-------------------
|
|
|
|
Renamed "lilo" Boot method to "2 disk compression."
|
|
|
|
Added three new entry fields and one radio button to manage
|
|
kernel modules, and made important changes to the 2 disk
|
|
compression code.
|
|
|
|
Advanced Section is now Advanced Boot Section (ABS).
|
|
|
|
Properly handles two different block devices with two
|
|
different sizes. Tested on /dev/fd?.
|
|
|
|
Advanced Root Section (ARS) added. Includes root device and
|
|
size, root filesystem name with Save or Save As, filesystem
|
|
size, gzip/bzip2/none compression, user-mode-linux kernel
|
|
selection, Root Method and optional associated Template.
|
|
|
|
Yard Incorporation Tasks closed: 19556, 22668, 22496.
|
|
|
|
Yard Method added to ARS which generates the new well
|
|
featured Yard Box.
|
|
|
|
Yard Box includes alterable staging behavior for root
|
|
filesystem creation, template text search, adjustable
|
|
stripping behavior, editable filesystem and replacements,
|
|
$PATH appending, testing choices, Save and Save As.
|
|
|
|
Seamlessly integrated Verbosity Box and slider bar
|
|
to control the verbosity level added to the main box.
|
|
|
|
Several bug fixes and enhancements to the original Yard
|
|
scripts, including a choice of stripping features for
|
|
libraries, binaries, modules with corresponding sizing
|
|
checks, link -> file is now literal, unneccessary situations
|
|
for ../ x path_length removed, testing improvements.
|
|
|
|
Localized directories provided for users under
|
|
$HOME/.gbootroot
|
|
|
|
Wrote make_debian to automate the creation of a Debian
|
|
template for the Yard Method. This spawned the
|
|
make-debian-x11 add-on which is simply the make_debian
|
|
script with easily made user modifications.
|
|
|
|
UML button added to ARS. UML (user-mode-linux) Box
|
|
provides a testing bed for root filesystems. Previous
|
|
Options are remembered to save typing, Abort button
|
|
provides excellent process clean-up.
|
|
|
|
Wrote an automated package creation script which can
|
|
be modified for other packages. This script can be found
|
|
in CVS.
|
|
|
|
Added user definable resources file "gbootrootrc" for Gtk.
|
|
|
|
Bugs closed: 422436, 225252
|
|
|
|
|
|
1.2.2 - 09/03/2000
|
|
------------------
|
|
|
|
Development is now at sourceforge.net/projects/gbootroot.
|
|
|
|
Cristian Ionescu-Idbohrn 'cretzu' added as developer
|
|
08/13/2000.
|
|
|
|
Advanced Section GUI added.
|
|
|
|
Stripping (new) is now the default behavior. Stripping
|
|
options are in AS.
|
|
|
|
Cretzu's gdkbirdaao() " Guess Default Kernel Boot Image
|
|
Root Device And Append Options" is incorporated both in
|
|
beginner section and AS.
|
|
|
|
Cameron Caffee <Cameron_C_Caffee@AtlanticMutual.com> sends
|
|
detailed reports and helps with testing. This leads to
|
|
the discovery of the need for stripping, as well as a
|
|
version check being incorporated into the program.
|
|
|
|
Option for additional devices in boot disk added to AS.
|
|
|
|
'Changed' signal replaces 'activate' in entry widgets.
|
|
|
|
Hard wired coding changes in initrd_heredoc();
|
|
development drive can be different than boot drive;
|
|
added as an option to AS.
|
|
|
|
Step increment changed for device size spinner button.
|
|
|
|
New documentation and grammar corrections.
|
|
|
|
Bugs closed: 111579, 112555, 112949, 111580, 11636, 12073,
|
|
12215, 13385, 13453, 13455.
|
|
|
|
|
|
1.0.3 - 08.09.2000
|
|
------------------
|
|
|
|
Tmp and mnt are now created on the fly,
|
|
along with a new error function for mkdir(),
|
|
Gtk clean-up for this, and clean-up by signal handler
|
|
which should please Perlish and helpful Cristian.
|
|
|
|
|
|
1.0.2 - 08.06.2000
|
|
------------------
|
|
|
|
Changed logic slightly in submit() with returns rather
|
|
than a scalar to resolve a minor bug caused by some
|
|
changes in the previous version.
|
|
|
|
|
|
1.0.1 - 08.05.2000
|
|
------------------
|
|
|
|
Zas provided a correction for a Perl 5.6 error complaint.
|
|
|
|
Zas found some unecessary GDK lines causing some Gtk
|
|
warnings; these were commented out.
|
|
|
|
Cristian Ionescu-Idbohrn found a bug caused by putting
|
|
the Kernel or RootImage below the mount point. An error
|
|
check and error dialog were added.
|
|
|
|
|
|
1.0.0 - 08.02.2000
|
|
------------------
|
|
|
|
First public release
|
|
|
|
|
|
|
|
|