diff --git a/busybox b/busybox new file mode 100644 index 0000000..293b485 Binary files /dev/null and b/busybox differ diff --git a/initrd_build.sh b/initrd_build.sh new file mode 100644 index 0000000..bff85a1 --- /dev/null +++ b/initrd_build.sh @@ -0,0 +1,21 @@ +dir=$(dirname "$0") +echo "$dir" +cd "$dir" +rm -rf initram/ +mkdir -p initram +mkdir -p initram/{bin,dev,etc,lib,proc,sbin,sys,tmp,usr} +mkdir -p initram/usr/{bin,sbin} +mkdir -p initram/etc/{bin,sbin} +mkdir -p initram/lib/modules/ +cp busybox ./initram/bin/ +cp /mnt/tmpfs/linux/drivers/block/nbd.ko initram/lib/modules/ +cp /mnt/tmpfs/linux/modules.builtin initram/lib/modules/ +cp /mnt/tmpfs/linux/modules.order initram/lib/modules/ +cd initram/bin/ +chmod +x busybox +busybox --install -s "$(dirname "$0")/initram/bin/" +printf '%s\n' "#!/bin/busybox sh" "/bin/busybox mount -t devtmpfs devtmpfs /dev" "/bin/busybox mount -t proc none /proc" "/bin/busybox mount -t sysfs none /sys" "ln -s /lib/modules/ /lib/modules/6.17.0-g98906f9d850e" "depmod -a" "/bin/busybox modprobe nbd max_part=2" "exec /bin/busybox sh" > "$dir/initram/init" +chmod +x $dir/initram/init +cd $dir/initram/ +find . -print0 | cpio --null -ov --format=newc | gzip -9 > $dir/initramfs.cpio.gz +