Go to file
2020-08-30 01:35:08 +03:00
hooks fix symlink loop 2020-08-29 22:33:12 +03:00
config move device managers to hooks 2020-07-27 11:32:22 +03:00
device-helper make blkid optional 2020-07-15 22:23:12 +03:00
init move device managers to hooks 2020-07-27 11:32:22 +03:00
LICENSE Initial commit 2020-01-03 13:31:04 +00:00
Makefile drop chmod 2020-08-24 17:09:33 +03:00
README.md update readme 2020-08-30 01:35:08 +03:00
tinyramfs fix symlink loop 2020-08-29 22:33:12 +03:00

Tinyramfs

Currently tinyramfs is incomplete, don't expect that everything is working

Features

  • No local's, no bashisms, only POSIX shell
  • Portable, not distro specific
  • Easy to use configuration
  • Build time and init time hooks
  • LUKS (detached header, key), LVM
  • mdev, mdevd, eudev, systemd-udevd

Dependencies

  • POSIX utilities
  • POSIX shell
  • switch_root
  • mount
  • cpio
  • strip
    • Optional
  • blkid
    • Required for UUID, LABEL, PARTUUID support
  • mdev OR mdevd OR eudev OR systemd-udevd OR CONFIG_UEVENT_HELPER
    • systemd-udevd not tested
  • lvm2
    • Required for LVM support
  • cryptsetup
    • Required for LUKS support
  • kmod OR busybox modutils with this patch (already included in KISS Linux)
    • Not required for monolithic kernel

Notes

  • busybox modutils doesn't handle soft dependencies (modules.softdep). You must manually copy them using hooks
  • busybox and toybox blkid doesn't support PARTUUID. You must use util-linux blkid for PARTUUID support

Installation

git clone https://github.com/illiliti/tinyramfs
cd tinyramfs
make install
vi /etc/tinyramfs/config # edit config for your needs
tinyramfs -o /boot/initramfs-<ver> # replace <ver> with current kernel version
# update your bootloader
# reboot...

Configuration

Statically via config

See config

Dynamically via kernel parameters

TODO finalize and document kernel command-line parameters

Thanks

E5ten
dylanaraps

Donate

You can donate if you like this project

BTC: 1BwrcsgtWZeLVvNeEQSg4A28a3yrGN3FpK