2020-04-17 19:44:25 +05:30
|
|
|
Tinyramfs
|
|
|
|
=========
|
|
|
|
|
|
|
|
**Currently tinyramfs is incomplete, don't expect that everything is working**
|
|
|
|
|
2020-02-10 02:43:39 +05:30
|
|
|
Features
|
2020-04-12 01:06:16 +05:30
|
|
|
--------
|
2020-04-12 01:01:02 +05:30
|
|
|
|
|
|
|
- No `local`'s, no bashisms, only POSIX shell
|
2020-02-10 02:43:39 +05:30
|
|
|
- Easy configuration
|
2020-04-17 19:44:25 +05:30
|
|
|
- mdev, mdevd, eudev
|
2020-02-10 02:43:39 +05:30
|
|
|
- LUKS
|
2020-01-30 22:03:24 +05:30
|
|
|
- LVM
|
2020-04-12 01:01:02 +05:30
|
|
|
|
|
|
|
Dependencies
|
2020-02-10 02:43:39 +05:30
|
|
|
------------
|
2020-04-12 01:01:02 +05:30
|
|
|
|
|
|
|
* POSIX shell
|
2020-04-17 19:44:25 +05:30
|
|
|
* POSIX utilities
|
|
|
|
* `switch_root`
|
|
|
|
* `readlink`
|
|
|
|
* `install`
|
|
|
|
* `setsid`
|
|
|
|
* `mount`
|
|
|
|
* `cpio`
|
|
|
|
* `gzip`
|
|
|
|
- Required by default
|
|
|
|
* `strip`
|
|
|
|
- Optional
|
|
|
|
* `blkid`
|
|
|
|
- Required for mdev/mdevd
|
2020-04-12 01:01:02 +05:30
|
|
|
* `mdev` OR `mdevd` OR `eudev`
|
2020-04-17 19:44:25 +05:30
|
|
|
- systemd-udevd not tested
|
2020-04-12 01:01:02 +05:30
|
|
|
* `lvm2`
|
|
|
|
- Required for LVM support
|
2020-04-17 19:44:25 +05:30
|
|
|
* `cryptsetup`
|
|
|
|
- Required for LUKS support
|
|
|
|
* `kmod` OR `busybox modutils` with [this patch](https://gist.github.com/illiliti/ef9ee781b5c6bf36d9493d99b4a1ffb6) (already included in KISS Linux)
|
|
|
|
- Not required for monolithic kernel (builtin modules)
|
|
|
|
|
|
|
|
Notes
|
|
|
|
-----
|
|
|
|
|
|
|
|
* busybox and toybox blkid doesn't support PARTUUID
|
|
|
|
* zsh (in POSIX mode) showing some errors, but working fine
|
|
|
|
* cp -P is broken in toybox, see [here](https://github.com/landley/toybox/issues/174)
|
|
|
|
|
|
|
|
Installation
|
|
|
|
------------
|
|
|
|
```sh
|
|
|
|
git clone https://github.com/illiliti/tinyramfs
|
|
|
|
cd tinyramfs
|
|
|
|
make install
|
|
|
|
vi /etc/tinyramfs/config # edit config for your needs
|
|
|
|
tinyramfs -o /boot/initramfs
|
|
|
|
# update your bootloader
|
|
|
|
# reboot...
|
|
|
|
```
|
2020-04-12 01:01:02 +05:30
|
|
|
|
|
|
|
Usage
|
|
|
|
-----
|
|
|
|
|
2020-02-10 02:43:39 +05:30
|
|
|
```
|
2020-04-17 19:44:25 +05:30
|
|
|
usage: tinyramfs [option]
|
2020-04-13 00:47:01 +05:30
|
|
|
-o, --output <file> set initramfs output path
|
2020-04-12 01:01:02 +05:30
|
|
|
-c, --config <file> set config file path
|
|
|
|
-m, --moddir <dir> set modules directory
|
|
|
|
-k, --kernel <ver> set kernel version
|
|
|
|
-F, --files <dir> set files directory
|
|
|
|
-d, --debug enable debug mode
|
|
|
|
-f, --force overwrite initramfs image
|
2020-02-10 02:43:39 +05:30
|
|
|
```
|
2020-01-30 22:03:24 +05:30
|
|
|
|
2020-02-10 02:43:39 +05:30
|
|
|
Configuration
|
2020-04-12 01:06:16 +05:30
|
|
|
-------------
|
2020-02-10 02:43:39 +05:30
|
|
|
|
2020-04-17 19:44:25 +05:30
|
|
|
Static via config
|
|
|
|
-----------------
|
|
|
|
|
|
|
|
See [config](config)
|
|
|
|
|
|
|
|
Dynamic via kernel parameters
|
|
|
|
-----------------------------
|
|
|
|
|
|
|
|
TODO finalize and document kernel command-line parameters
|
|
|
|
|
|
|
|
Thanks
|
|
|
|
------
|
2020-04-12 01:01:02 +05:30
|
|
|
|
2020-04-17 19:44:25 +05:30
|
|
|
[E5ten](https://github.com/E5ten)
|
|
|
|
[dylanaraps](https://github.com/dylanaraps)
|
2020-04-12 01:01:02 +05:30
|
|
|
|
|
|
|
License
|
2020-04-12 01:06:16 +05:30
|
|
|
-------
|
2020-04-12 01:01:02 +05:30
|
|
|
|
|
|
|
Licensed under GPLv3
|