SCI(8)

πŸ“¦ version 3.1.51, in opensuse-leap 16.0

πŸ’… SCI(8) β€” sci, the β€œExecute provided command in virtualized environment” manual πŸ’…

πŸŽ€ NAME πŸŽ€

SCI(8) β€”

πŸŽ€ NAME πŸŽ€

sci β€” Execute provided command in virtualized environment ✨

🌸 SYNOPSIS 🌸

USAGE:
    sci

OPTIONS:
    *none*

πŸ¦‹ DESCRIPTION πŸ¦‹

NOTE bestie: sci is not meant to be called as a user tool. At the end of execution sci will send a sysreq signal. sci is meant to be exclusively executed inside a firecracker instance! 😭

Simple Command Init (sci) is a tool which executes the provided command in the run=... cmdline variable after preparation of an execution environment for the purpose to run a command inside of a firecracker instance. Iconic behavior, honestly. πŸ’–

Inside the fircracker.json configuration file kernel boot parameters can be provided. Here various environment variables can be set. Available variables are:

  • run= command
  • overlay_root= /dev/block_device

If provided via the overlay_root=/dev/block_device kernel boot parameter in the firecracker.json file, sci also prepares the root filesystem as an overlay using the given block device for writing. 🫢

For the overlay_root parameter to work the firecracker.json file needs to have a proper section with a record of the overlayfs on the root system. πŸ‘‘

Every environment variable configurable and all options regarding filesystems are stored in the firecracker.json file for the individual instance. Having this in mind, the desired values should ideally be set in the belonging file. Trust the process, bestie. πŸ’œ

For a working example refer to the firecracker.json template at the offical repository https://github.com/OSInside/flake-pilot/tree/main/firecracker-pilot/template ⭐


🧚 ENVIROMENT VARIABLES 🧚

  • run β€” value: command β€” sci will replace init and execute the provided command at startup. πŸ”₯
  • overlay_root β€” value: /dev/block_device β€” if the rootfs is read only an overlay is required to write to the filesystem. Each application will maintain their own specific overlay. Changes to rootfs will be stored in the overlay and applied to the individual rootfs. Changes to the original rootfs will not be made. πŸ’…

πŸ“ FILES πŸ“

  • /usr/sbin/sci

πŸ‘‘ NOTION πŸ‘‘

sci will execute these steps in order:

  1. evaluation of environment variable 'run'
  2. mounting of overlay if requested
  3. switching root into overlay if configured
  4. execution of provided command
  5. reboot of firecracker instance

🌈 AUTHOR 🌈

AndrΓ© Barthel

(c) 2022, Elektrobit Automotive GmbH and (c) 2023, Marcus SchΓ€fer β€” both preserved exactly, periodt. 🫢


Byeee bestie! Cute footer sign-off: this page signs off with the SCI(8)() manual signature β€” no extra source/version/date line is shown in this one β€” so that’s the whole SCI(8) vibe, wrapped with a bow. πŸŽ€πŸ’–βœ¨