PORTFS(4) PORTFS(4)
NAME
portfs, sendfs, youps - we deliver events and messages for
Plan B
SYNOPSIS
portfs [ -abcAD] ] [ -m mnt ] [ -s srv ] [ -n addr ] [ -V
vol ]
sendfs [ -d ] [ -p portfile ]
youps
DESCRIPTION
The youps program suite (pronounced you-p-s) receives, exam-
ines, rewrites, and dispatches plumb(6) messages to ports
provided by machines owned by the user. Its behaviour is
similar to plumber(4), when used in a centralized setting.
Portfs implements a file system that provides message ports.
A port can be created by creating a file. Data written to a
port is delivered to all processes reading from the port.
Data uses to be plumb messages, but it may be any other
thing. Once a port has ben read, when all readers of a port
close the port, the port is removed. By default, portfs
mounts itself at /devs/ports and listens for network clients
at tcp!*!11002. Options are similar to those of most file
servers, as described in planb(4).
Sendfs delivers events to ports. The program services are
mounted on the directory /mnt/plumb and consists of two
pre-defined files: send. and rules.
Programs use write (see read(2)) to deliver messages to the
send file, and sendfs decides, looking at its configuration,
to which port the message should be sent. The behaviour and
configuration is like in plumber(4). Beware that commands
used within a plumb rule should supply the -p option to any
plumb (1) command issued within the rule. Otherwise, plumb
will not be able to deliver the message because there is no
send file in the file system as seen by the command (That
file is implemented by sendfs only as a front-end for the
user).
The file rules behaves like in plumber(4) and permits con-
figuration of the service.
youps is a convenience script that starts the service by
running portfs and sendfs after mounting a union of all user
ports at /mnt/plumb.
Page 1 Plan 9 (printed 11/29/25)
PORTFS(4) PORTFS(4)
FILES
/usr/$user/lib/plumbing default rules file
/sys/lib/plumb directory to search for files in
include statements.
/mnt/plumb mount point for the send file and
the union of all ports. The ports
of the local machine are mounted
above those of others.
/devs/ports ports serviced by the local
machine.
SOURCE
/sys/src/cmd/youps
SEE ALSO
plumber(4), plumb(1), plumb(2), plumb(6)
BUGS
The delivery of messages across the network is not secured.
Page 2 Plan 9 (printed 11/29/25)