Commit Graph

800 Commits (ebdddd29d3b51f06f44b64bb12c19de149adcd20)

Author SHA1 Message Date
Victor Lowther e0bb3c3613 [PATCH 05/50] Rewrite the mount loop using bash-specific features.
This makes the loop slightly more compact and easier to read.
2009-02-16 13:56:40 -05:00
Victor Lowther f9a0b9f868 [PATCH 04/50] Modify root cmdline parsing to use a case statement.
This code takes less space and is easier to read at a glance.
2009-02-16 13:56:40 -05:00
Victor Lowther 9f99d479b3 [PATCH 03/50] Use getarg to get the root kernel commandline parameter. 2009-02-16 13:56:40 -05:00
Victor Lowther 047891955e [PATCH 02/50] Add a simple getarg function.
If we ever need to get more than one kernel command line argument, this
function will pay for itself.  It relies on a feature of the way bash
handles string comparisons in [[ ]] statements -- the RHS is matched
according to globbing rules, and is not a straight string match.
2009-02-16 13:56:40 -05:00
Victor Lowther 09f9fec00c [PATCH 01/50] We have a path. Do not specify full paths to commands that are in it. 2009-02-16 13:56:40 -05:00
Jeremy Katz dd1ae3a105 Slightly more reasonable timeout 2009-01-22 16:14:18 -05:00
Jeremy Katz c58bf1b1f2 Also rescan after each new lvm2 member appears so we can find all devs 2009-01-22 16:14:18 -05:00
Jeremy Katz e47d25ffb8 Don't use deprecated git-* commands 2009-01-22 16:14:18 -05:00
Jeremy Katz ce1d00e166 Import volume info here too (noticed by wtogami with root-on-crypt-lv) 2009-01-22 16:14:18 -05:00
Bill Nottingham 09bab2aa8e Go to an emergency shell if mounting the root filesystem fails. 2009-01-12 11:32:51 -05:00
Bill Nottingham 2064166d84 Fix 'root=LABEL=/'
As you can't have /dev/disk/by-label//, we need to escape the '/'
character in the same way that udev does.
2009-01-12 11:32:38 -05:00
Bill Nottingham a019b9531f Fix tense. 2009-01-12 11:32:38 -05:00
Jeremy Katz 549e53a4ee Now that module dependencies work, we don't have to list as much 2009-01-05 15:50:44 -05:00
Jeremy Katz a1119a718d Fix module dependency handling
Module dependency handling wasn't being followed correctly; fix it
2009-01-05 15:45:39 -05:00
Jeremy Katz 6eedcafc37 Clean up noise from eu-readelf 2009-01-05 15:42:56 -05:00
Jeremy Katz aabc0553b5 Add first pass of keyboard/console font setup
First pass of keyboard/console font setup.  This ends up being Fedora/RHEL
specific as everyone specifies these things in a different place
2009-01-05 14:40:34 -05:00
Jeremy Katz dd19241084 Fix typo with local mode installing switch_root 2009-01-05 14:39:35 -05:00
Jeremy Katz 55ca5f4f14 Update the documentation a bit for current status 2009-01-05 13:28:20 -05:00
Jeremy Katz 654568b39e Basic support for loading SELinux from the initramfs 2009-01-05 13:18:50 -05:00
Jeremy Katz 0d666d610a Stop depending on nash to find the program interpreter; use eu-readelf instead 2009-01-05 12:47:36 -05:00
Jeremy Katz 38672ee8b4 Add a spec file for rpm building 2008-12-19 14:44:38 -05:00
Jeremy Katz ee67b75f1e Handle rules.d being from the installed location 2008-12-19 14:43:46 -05:00
Jeremy Katz 4f25a3b9c0 Fedora calls --allow-missing as an arg to mkinitrd; noop it 2008-12-19 14:43:30 -05:00
Jeremy Katz 5533709cdb plymouth calls set_verbose(), no noop it 2008-12-19 14:43:06 -05:00
Jeremy Katz c0815e4e42 Fix shebang at the top of the file 2008-12-18 15:59:55 -05:00
Jeremy Katz 533cd7781a Add a makefile 2008-12-18 15:58:15 -05:00
Jeremy Katz 5c481d345f Make using the version from the current directory explicit
Rather than looking at the contents of the current directory always, require
explicitly specifying --local to use those files
2008-12-18 15:57:47 -05:00
Jeremy Katz ab81170e59 Handle locations where we'll be installing files
Handle that files will be in different places once installed
2008-12-18 15:55:28 -05:00
Jeremy Katz 641cc35629 Make the generator start to be functional on a "real" system
Start to pull in modules from the system rather than the crude hack of
everything in a tree and explicitly list some classes of modules
including what's needed for dm-crypt

With this, I am now running a dracut initramfs on my laptop
2008-12-17 17:51:15 -05:00
Jeremy Katz 04b56f3a01 Add some basic functions used for the initramfs
Add some functions used by the initramfs generator from Fedora's mkinitrd with
bits and pieces stripped out.  This needs a closer look to ensure that we're
not bringing along any other old baggage
2008-12-17 16:57:43 -05:00
Jeremy Katz aec3529511 rstrode built a new plymouth with the changes, so we can drop that make install 2008-12-17 16:56:51 -05:00
Jeremy Katz 26eb9b952e Move generator to be called 'dracut' 2008-12-17 16:56:28 -05:00
Jeremy Katz 7f70392f4b let mount auto-determine the fs type 2008-12-17 14:55:20 -05:00
Jeremy Katz 1cdc7175f7 Now called dracut; add info about the mailing list 2008-12-17 13:16:12 -05:00
Jeremy Katz 4a3acd3b7b Add pointer to Peter's switchroot 2008-12-17 13:15:55 -05:00
Jeremy Katz 78ad9ceb56 Update the README and add some docs for TODO and HACKING 2008-12-16 17:24:59 -05:00
Jeremy Katz ed16343e66 Sleep forever instead of exiting so you can scroll back 2008-12-16 16:56:28 -05:00
Jeremy Katz 7e1bf3845f Don't run udevsettle; instead, we keep looking for the rootfs 2008-12-16 14:29:43 -05:00
Jeremy Katz b8bdba2104 Cut down to only creating the nodes that plymouth actually needs 2008-12-16 14:29:07 -05:00
Jeremy Katz ca377f5294 Bump timeout to five minutes since people could be using encrypted root 2008-12-16 14:25:06 -05:00
Jeremy Katz eb25ff7a27 Support root on LUKS (dm-crypt)
Support having root on LUKS with the password prompting handled by plymouth.
This requires ensuring our input is from /dev/console and also requires that
we import vol_id info about all block devices rather than ignoring dm devs
(which is what the persistent storage rules do by default)
2008-12-16 14:22:13 -05:00
Jeremy Katz f39a104630 Add some modules
dm-crypt support requires that we have some modules, so add some basic
support for copying over a module tree for testing
2008-12-16 14:19:52 -05:00
Jeremy Katz 0c70846e5d Add plymouth support
Add basic support for the use of plymouth in the new initrd world.  Also
includes a hack at the moment to install from a local plymouth tree to make
testing easier
2008-12-15 16:10:51 -05:00
Jeremy Katz ca9f625917 Some debugging helpers
Install terminfo files so that less is useful.  Also, timeout mounting
the rootfs so that we can debug better
2008-12-15 14:40:36 -05:00
Jeremy Katz 7a18688c32 Add the basics for LVM support
For LVM, we need to do activation of the volume group within the initrd.
Stick lvm tools into the initrd as well as a (basic and stupid) udev rule
to run vgchange -ay.  Ultimately we want to get a better rule for this into
udev proper
2008-12-15 14:07:55 -05:00
Jeremy Katz 35c5d61b82 Various fixes to make things work; also listen to root=
Apparently what I had committed was broken.  This fixes some pieces up
and also adds (basic) support for using root=
2008-12-15 13:39:41 -05:00
Jeremy Katz 65e66984d6 Kill udevd 2008-12-10 17:18:22 -05:00
Jeremy Katz a5e56335b5 And licensing... 2008-12-10 16:36:31 -05:00
Jeremy Katz 7de1a73d66 Having a README is always nice 2008-12-10 16:35:29 -05:00
Jeremy Katz ec9315e562 Initial commit
First pass at a new initrd implementation.  Right now, it's a very simple
/init and we use nash's switchroot command via switch_root.  The idea is to
get a switchroot binary into util-linux that can be used instead

generate.sh will let you generate an initrd image.  Note that the generator
is intentionally super simple right now and is an area that will need a lot
of work once we're happier with how the /init process runs
2008-12-10 16:32:21 -05:00