]> git.decadent.org.uk Git - i-t-talk.git/blobdiff - index.html
Overview of initramfs-tools
[i-t-talk.git] / index.html
index 59e50ca9057f4fec58c597d85a58004e2153353d..c0048c9b6b08d3fb77fbe0760c16512c606c0725 100644 (file)
       it can't read them from the root filesystem
     </li>
     <li>
-      Solution: boot loader provides a bundle of files to the
-      kernel
+      Solution: boot loader provides a bundle of files
+      (initramfs image) to the kernel
+    </li>
+  </ul>
+</div>
+
+<div class="slide">
+  <img src="yo-dawg.jpeg" width="90%" />
+</div>
+
+<div class="slide">
+  <h1>How the kernel uses an initramfs</h1>
+  <ul class="incremental">
+    <li>
+      Kernel <em>always</em> mounts an initial root filesystem using
+      either ramfs or tmpfs
+    </li>
+    <li>
+      If the boot loader provides an initramfs image, kernel
+      unpacks it into this filesystem, then runs <tt>/init</tt>
+    </li>
+    <li>
+      The initramfs init system is then responsible for mounting
+      the real root filesystem and running the real <tt>init</tt>
+      <ul class="incremental">
+       <li>
+         Although it is not <em>required</em> to hand over at all
+         - e.g. debian-installer
+       </li>
+      </ul>
+    </li>
+  </ul>
+</div>
+
+<div class="slide">
+  <h1>Overview</h1>
+  <ul class="incremental">
+    <li>
+      Started in Ubuntu in 2005 and adopted in Debian later that year
+    </li>
+    <li>
+      <tt>mkinitramfs</tt> builds an initramfs image using the
+      included scripts, necessary kernel modules, udev, and utilities
+      from klibc-utils or busybox
+    </li>
+    <li>
+      Uses build-time and boot-time hook scripts for
+      extensibility
+      <ul>
+       <li>Used by btrfs-tools, cryptsetup, lvm2, mdadm, etc.</li>
+      </ul>
+    </li>
+    <li>
+      Supports dependencies within each set of scripts
     </li>
   </ul>
 </div>
@@ -117,6 +169,9 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
       -->
     </li>
+    <li>
+      Xzibit promotional photo &copy; Retna, used for purpose of parody
+    </li>
   </ul>
 </div>