diff options
author | Daniel Golle <daniel@makrotopia.org> | 2020-11-27 01:00:31 +0100 |
---|---|---|
committer | Daniel Golle <daniel@makrotopia.org> | 2020-11-27 01:23:43 +0000 |
commit | 7fd3c68137ee0fa4c9f5e7b6f993bd09005f7964 (patch) | |
tree | d5f6361d6c90b2c766f6c74f26ce23d825d2f3e8 /target/linux/generic | |
parent | 8a87ab43d190622a1b8b64af6fd812dd33a329d4 (diff) | |
download | upstream-7fd3c68137ee0fa4c9f5e7b6f993bd09005f7964.tar.gz upstream-7fd3c68137ee0fa4c9f5e7b6f993bd09005f7964.tar.bz2 upstream-7fd3c68137ee0fa4c9f5e7b6f993bd09005f7964.zip |
initramfs: switch to tmpfs to fix ujail
Hauke wrote:
> We want to run some processes in the procd-ujail, this works when we
> use a SquashFS image and an overlay file system, but when we use an
> initramfs it does not work.
> [...]
> When we switch from initramfs to tmpfs, it is working, we added this
> code to target/linux/generic/other-files/init to make [it] work.
Move files to newly mounted tmpfs and then use switch_root to chroot
into new rootfs and free initramfs.
Suggested-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Diffstat (limited to 'target/linux/generic')
-rwxr-xr-x | target/linux/generic/other-files/init | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/target/linux/generic/other-files/init b/target/linux/generic/other-files/init index 514be57e66..521655b8c2 100755 --- a/target/linux/generic/other-files/init +++ b/target/linux/generic/other-files/init @@ -1,4 +1,14 @@ #!/bin/sh # Copyright (C) 2006 OpenWrt.org export INITRAMFS=1 -exec /sbin/init + +# switch to tmpfs to allow run daemons in jail on initramfs boot +DIRS=$(echo *) +NEW_ROOT=/new_root + +mkdir -p $NEW_ROOT +mount -t tmpfs tmpfs $NEW_ROOT + +cp -pr $DIRS $NEW_ROOT + +exec switch_root $NEW_ROOT /sbin/init |