学习啦>学习电脑>操作系统>Linux教程>

基于initrd镜像的minilinux介绍

时间: 若木635 分享

学习啦在线学习网   基于initrd镜像的minilinux

  制作镜像文件系统的linux主要是让镜像文件可以像文件系统一样初始化,用BusyBox 可以轻松实现。

学习啦在线学习网   BusyBox 最初是由 Bruce Perens 在 1996 年为 Debian GNU/Linux 安装盘编写的。其目标是在一张软盘上创建一个可引导的 GNU/Linux 系统。要想让initrd当作一个文件系统启动,保留编译busybox时生成的linuxrc即可。现在用cpio镜像initramfs时要将linuxrc改名为init。

学习啦在线学习网   drwxr-xr-x 2 root root 4096 11月 24 15:28 bin

学习啦在线学习网   rwxrwxrwx 1 root root 11 11月 24 15:28 linuxrc -> bin/busybox

  drwxr-xr-x 2 root root 4096 11月 24 15:28 sbin

学习啦在线学习网   这样当内核加载后,加载镜像时可以保证首先执行busybox。busybox会执行其默认的/sbin/init来初始化系统。

学习啦在线学习网   /linuxrc或/init可以是脚本文件,但最后要用“exec /sbin/init”来启动系统初始化程序。

学习啦在线学习网   tinycore linux init示例

学习啦在线学习网   tinycore是一个含桌面的10M左右的linux,包含内核。其系统镜像才8M左右,功能很多。不含桌面的ISO文件才6 M左右。

  #!/bin/sh

  mount proc

学习啦在线学习网   grep -qw multivt /proc/cmdline && mv /etc/inittab-save /etc/inittab

学习啦在线学习网   if grep -qw embed /proc/cmdline; then

  umount proc

学习啦在线学习网   exec /sbin/init

  fi

学习啦在线学习网   umount proc

  if mount -t tmpfs -o size=90% tmpfs /mnt; then

  if tar -C / --exclude=mnt -cf - . | tar -C /mnt/ -xf - ; then

  mkdir /mnt/mnt

学习啦在线学习网   exec /sbin/switch_root mnt /sbin/init

  fi

  fi

学习啦在线学习网   exec /sbin/init

基于initrd镜像的minilinux介绍

基于initrd镜像的minilinux 制作镜像文件系统的linux主要是让镜像文件可以像文件系统一样初始化,用BusyBox 可以轻松实现。 BusyBox 最初是由 Bruce Perens 在 1996 年为 Debian GNU/Linux 安装盘编写的。其目标是在一张软盘上创建一个
推荐度:
点击下载文档文档为doc格式
75395