A 9p filesystem is supported by the emulator, using a virtio transport. Using it, files can be exchanged with the guest OS, see create_file
and read_file
. It can be enabled by passing the following options to V86Starter
:
options.filesystem = { basefs: "http://localhost/9p/fs.json", baseurl: "http://localhost/9p/base/", }
Here, basefs
is a json file created using fs2json. The base url is the prefix of a url from which the files are available. For instance, if the 9p filesystem has a file /bin/sh
, that file must be accessible from http://localhost/9p/base/bin/sh
. If basefs
and baseurl
are omitted, an empty 9p filesystem is created.
The mount_tag
of the 9p device is host9p
. In order to mount it in the guest, use:
mount -t 9p host9p /mnt/9p/