| We can serve the root file system for NxM directly from Linux or OS X, |
| allowing access to the full Linux namespace during run-time. |
| For this, we use go9p. |
| |
| You need to have Go installed, e.g. |
| |
| pacman -S go |
| |
| apt-get install golang |
| |
| You should now have things set up in /usr/lib/go. |
| To install new things, as a non-priveleged user, |
| you need a local place to build packages. |
| |
| Set a GOPATH, e.g. |
| $ export GOPATH=~/go:/usr/lib/go |
| $ go get github.com/rminnich/go9p/ufs # fetches dependencies |
| |
| This *should* work |
| |
| $ go install github.com/rminnich/go9p/ufs |
| |
| ufs ends up in: |
| |
| /home/rminnich/go/bin/ufs |
| |
| You can now run ufs, specifying the appropriate root directory: |
| |
| $ sudo ~/go/bin/ufs -addr=:564 -root=whereever |
| |
| Here is an example qemu command which some of us use: |
| |
| A more complex usage (Ron's case) involves serving a root file system |
| to an NxM instance being run on an Arch virtual machine guest in |
| vmware fusion. That's not near as hard as it sounds. The OSX machine |
| is called rminnich-macbookair; the arch Linux guest VM is called arch. |
| |
| On OSX, we start two commands: |
| |
| $ ufs -addr:7777 |
| |
| $ ssh -R 564:rminnich-macbookair:7777 root@arch |
| |
| This ssh command sets up a reverse proxy on the arch linux guest to |
| the ufs server running on OSX. On arch linux, we run the qemu command |
| shown above. When we get the root is from prompt, we use the ip |
| address 10.0.2.2. That's it. |