switchroot: Document a bit more, add demo shell implementation
This could help others who want to integrate with other init systems/initramfs. Commit-message-by: Colin Walters <walters@verbum.org> Closes: #784 Approved by: cgwalters
This commit is contained in:
1 parent
49a525f6a5
commit
dea2025531
2 files changed
+40
-9
No files matched your search
@@ -0,0 +1,25 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This demonstration script is an implementation in shell
|
||||
# similar to ostree-prepare-root.c. For a bit more information,
|
||||
# see adapting-existing.md.
|
||||
|
||||
## the ostree boot parameter is avaialbe during the init
|
||||
env | grep ostree
|
||||
# ostree=/ostree/boot.1/.../.../0
|
||||
## bind mount the ostree deployment to prepare it for move
|
||||
mount --bind $sysroot$ostree $sysroot$ostree
|
||||
## bind mount read-only /usr
|
||||
mount --bind $sysroot$ostree/usr $sysroot$ostree/usr
|
||||
mount --bind -o remount,ro $sysroot$ostree/usr $sysroot$ostree/usr
|
||||
## bind mount the physical root
|
||||
mount --bind $sysroot $sysroot$ostree/sysroot
|
||||
## bind mount the var directory which is preserved between deployments
|
||||
mount --bind $sysroot/ostree/deploy/os/var $sysroot$ostree/var
|
||||
## make sure target directories are present within var
|
||||
cd $sysroot$ostree/var
|
||||
mkdir -p roothome mnt opt home
|
||||
cd -
|
||||
## move the deployment to the sysroot
|
||||
mount --move $sysroot$ostree $sysroot
|
||||
## after these the init system should start the switch root process
|
||||
Reference in new issue
Block a user