is a lightweight VMM written in Rust. It runs on top of KVM and optionally runs the device models in separate processes isolated with seccomp profiles.
The Makefile and Dockerfile compile crosvm and a suitable
version of libminijail. To build:
makeYou should end up with a crosvm and libminijail.so binaries as
well as the seccomp profiles in ./build. Copy libminijail.so to
/usr/lib or wherever ldd picks it up. You may also need libcap
(on Ubuntu or Debian apt-get install -y libcap-dev).
You may also have to create an empty directory /var/empty.
You can build a LinuxKit image suitable for crosvm with the
kernel+squashfs build format. For example, using minimal.yml from
the ./examples directory, run (but also see the known issues):
linuxkit build -format kernel+squashfs -decompress-kernel minimal.ymlThe -vmlinux switch is needed since crosvm does not grok
compressed linux kernel images.
Then you can run crosvm:
crosvm run --disable-sandbox \
--root ./minimal-squashfs.img \
--mem 2048 \
--socket ./linuxkit-socket \
minimal-kernel