Hi,
this gist summarizes how to share UNIX files/folders with a Plan9 instance using u9fs.
First of all, grab the latest u9fs release from source or install it with the package manager of your preference, then build and install.
Please be sure to find the correct path to your u9fs binary because it may differ based on the installation, normally it is
/usr/local/bin/u9fsor/usr/bin/u9fs.
On older unix/linux systems you may use inetd, which is already covered by the u9fs man page.
This tutorial will cover xinetd which is present in newer systems.
Open the /etc/services file and ensure the following line is present:
9pfs 564/tcp
Then create a file named /etc/xinetd.d/u9fs with the following contents (make adjustments as needed):
service 9pfs
{
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/bin/u9fs
server_args = -D -n -z -u myuser -na none /my/folder/to/share
instances = 2
port = 564
}
Run chmod 600 /etc/xinetd.d/u9fs.
Now you just need to restart the xinetd daemon
systemctl restart xinetd
systemctl status xinetdu9fs logs are located at
/tmp/u9fs.logby default
In a plan 9 system you can run the following commands to mount (qemu host in this example):
srv tcp!10.0.2.2!9fs
mount -c /srv/tcp!10.0.2.2!9fs /n/qemuhost deviceThe 9p service containing the shared folder is now mounted at /n/qemuhost.
Have fun!