Skip to content

u9fsでPlan 9からUnixのファイルを読み書きする

This content is a draft and will not be included in production builds.

u9fs を使うと、UNIX側で9Pを使ったファイルサーバを実行できる。Plan 9ソースコードの /sys/src/cmd/unix にもあるらしいが、有澤さんのコピーを使ったほうが便利かもしれない。

Terminal window
cd u9fs
make
make install

u9fsはPlan 9から接続する際の認証情報を /etc/u9fs.key から読む。認証を不要とすることも試したけどうまく接続できなかった。このファイルは上から、パスワード、ユーザ名、認証ドメインを1行ずつ書いたファイルなのでテキストエディタ等で作成すればいい。u9fs -A fileオプションを使うと、/etc/u9fs.key以外のファイルでも扱える。

Terminal window
# u9fsが認証するユーザー情報をu9fs.keyに書く
# それぞれ値は何でもいい
$ cat u9fs.key
password
username
authdom

できたらu9fsを起動する。

Terminal window
# 9fsポート(564)でlisten
$ listen1 'tcp!*!9fs' ./u9fs -a p9any -A u9fs.key -u $USER -l log

これでPlan 9側からマウントすればUNIX側のファイルをPlan 9から読み書きできる。

Terminal window
% 9fs 192.168.1.3
user:
% cd /n/192.168.1.3